Biztonság

Mesterséges intelligenciával generált szöveg

smolmachines/smolvm kipróbálása sandboxként: Claude Fable 5 GitHub Actions-szel kerüli a nested-virt korlátokat

A kutatás főszereplői a smolmachines projekt smolvm komponense és Claude Fable 5, amely Claude Code for web környezetben futott.

smolmachines/smolvm kipróbálása sandboxként: Claude Fable 5 GitHub Actions-szel kerüli a nested-virt korlátokat

A kutatás célja az volt, hogy a smolmachines/smolvm projektet mint gyors és biztonságos sandboxot vizsgálják meg olyan feladatok futtatására, amelyek felhasználói Python vagy JavaScript kódot hajtanak végre. A követelmények: korlátozott RAM- és CPU-felhasználás (például védelem a "while true" típusú végtelen ciklusok ellen), nincs hálózati hozzáférés, és a fájlrendszerhez csak előre kijelölt fájlokhoz lehessen hozzáférni — így használható legyen adatformázási, transzformációs feladatokhoz és hasonlókhoz.

A kísérlet és a környezet korlátai

A feladatot Claude Fable 5 kapta meg Claude Code for web környezetben. A Claude Code konténer környezeti adatai a vizsgálatban a következők voltak:

  • Linux 6.18.5-fc-v20 (a konténer maga is egy Firecracker vendéggéphoston fut)
  • 4 virtuális vCPU
  • 15 GB RAM

A futtatási környezetből hiányzott a /dev/kvm eszköz és a processzorhoz tartozó vmx/svm CPU jelzők, ami azt jelenti, hogy a nested virtualization (a vendég környezeten belüli virtuális gépek futtatása) nem elérhető volt. Ennek következményeként a smolvm parancs (például smolvm machine run) a várt módon hibára futott: a rendszer "kvm not available" üzenetet adta.

A megoldás: GitHub Actions futtatók használata

Mivel a Claude Code környezete nem biztosított nested-virt képességet, a kutatás résztvevője tervet váltott: a GitHub Actions ubuntu futtatói kifejezetten kitenyészett /dev/kvm eszközt kínálnak, így ezek alkalmasak a smolvm valódi tesztelésére. A következő lépéseket hajtotta végre:

  • egy ideiglenes GitHub Actions workflow-t hozott létre az érintett ágon,
  • ezen a runneren telepítette a smolvm-et,
  • lefuttatta a tesztcsomagot a vizsgált ágon és begyűjtötte a logokat,
  • a végső commitban eltávolította az ideiglenes workflow-t.

Így sikerült a tesztelési sorozatot valódi /dev/kvm hozzáféréssel futtatni anélkül, hogy a Claude Code környezet korlátaival kellett volna küzdeni.

Miért fontos ez?

A smolvm célja, hogy könnyűsúlyú, gyors virtuális gépeket biztosítson sandboxolt környezetként, ami vonzó lehet olyan szolgáltatások számára, amelyek felhasználói kódot hajtanak végre biztonságosan. A nested virtualization hiánya sok felhő- és konténer-környezetben korlátozza az ilyen megoldások kipróbálását; a GitHub Actions használata praktikus megkerülő megoldást jelent a fejlesztési és kutatási fázisban, mivel a futtatók natívan hozzáférést adnak KVM-hez.

Rövid következtetés

A kísérlet azt szemlélteti, hogy a smolmachines/smolvm ígéretes lehet sandboxolt Python és JavaScript futtatásra, de a környezeti korlátok (különösen a nested virt hiánya) könnyen megakaszthatják a helyi vagy konténeres tesztelést. A GitHub Actions runner-ekre áttérés lehetővé tette a szerző számára a smolvm tényleges telepítését és tesztelését a vizsgált ágon, logok gyűjtésével és az ideiglenes workflow eltávolításával a repository tisztán tartása mellett.

Tags: research, sandboxing, ai, github-actions, generative-ai, llms, claude-mythos-fable