A Microsoft javította az AutoGen Studio hibáját, ami kódfuttatást tett lehetővé

A Microsoft AutoGen Studio nevű, AI-ügynökök prototípus-készítésére szolgáló felületében azonosított, AutoJack névre keresztelt sérülékenységi lánc lehetővé tehette, hogy a támadók egy ügynököt tetszőleges parancsok futtatására vegyenek rá a hosztrendszeren, pusztán azáltal, hogy az ügynök meglátogat egy rosszindulatú weboldalt.

Az AutoGen Studio az AutoGen grafikus komponense, amely a Microsoft nyílt forráskódú keretrendszere többügynökös AI-rendszerek építéséhez. A keretrendszer a fejlesztők számára olyan AI-ügynökök létrehozását teszi lehetővé, amelyek képesek egymással együttműködni, eszközöket használni, weben böngészni, kódot végrehajtani, API-kkal kommunikálni, valamint külső rendszerekhez kapcsolódni.

A projekt jelentős népszerűségnek örvend: a GitHubon több mint 59 000 csillaggal és közel 9 000 forkkal rendelkezik. A Microsoft ugyanakkor hangsúlyozta, hogy az AutoJack hatása korlátozott volt, mivel a problémát még a fejlesztési szakaszban kezelték.

A vállalat szerint a kitettség azokra a fejlesztőkre korlátozódott, akik az AutoGen Studiót a GitHub fő ágából töltötték le abban az időszakban, amely az MCP-bővítmény bekerülése és a megerősítést tartalmazó commit között telt el.

A Microsoft leírása alapján az AutoJack támadás három különálló gyengeség kombinációjára épült az AutoGen Studióban. Az első probléma az volt, hogy az MCP WebSocket megbízhatónak tekintette a localhostról érkező kapcsolatokat, így egy ugyanazon a gépen futó, böngészésre képes ügynököt rá lehetett venni arra, hogy egy támadó által vezérelt JavaScriptet töltsön be, amely látszólag megbízható helyi forrásból érkezett. A második gyengeség abból adódott, hogy az AutoGen Studio hitelesítési middleware-je kizárta az /api/mcp/ útvonalakat a hitelesítési ellenőrzésekből, miközben maga az MCP WebSocket-végpont nem valósított meg saját hitelesítést, így hitelesítő adatok nélkül is elérhető maradt. A harmadik komponens az volt, hogy az MCP WebSocket elfogadott egy URL-ben átadott, base64-kódolt server_params értéket, majd azt továbbította a folyamatindításért felelős kódnak. Ez lehetőséget adott a támadóknak arra, hogy tetszőleges PowerShell- vagy Bash-parancsokat, illetve futtatható állományokat hajtassanak végre.

A Microsoft által bemutatott támadási forgatókönyvben egy rosszindulatú JavaScript-kód fut le azon az oldalon, amelyet egy fejlesztő AI-ügynöke meglátogat. Ez a kód WebSocket-kapcsolatot nyit az AutoGen Studio helyi MCP-végpontjához. A payload ezt követően arra utasítja az AutoGen Studiót, hogy a támadó által kiválasztott parancsot indítsa el a fejlesztő felhasználói fiókjának jogosultságaival. A hatás demonstrálására a Microsoft a Windows Számológép elindítását mutatta be.

Fontos kiemelni, hogy azok a felhasználók, akik az AutoGen Studiót a Python Package Indexről, vagyis a PyPI-ról telepítették, soha nem voltak kitéve az érintett kódnak. A jelenlegi legfrissebb csomag, az autogenstudio 0.4.2.2, nem tartalmazza az AutoJack gyengeségeit.

Azok a fejlesztők azonban, akik egy korlátozott időablakban, a b047730 commit előtt közvetlenül a GitHubról buildelték az AutoGent, rövid ideig érintettek voltak.

A Microsoft azt javasolja az AutoGen Studio használóinak, hogy a megoldást kizárólag fejlesztői prototípusként, izolált környezetben futtassák, amely nincs kitéve az internet felől érkező hozzáférésnek.

(bleepingcomputer.com)