Fake AI Agent Skill heeft de beveiligingsscans doorstaan ​​en heeft naar verluidt 26.000 agenten bereikt

Beveiligingsbedrijf AIR heeft een nep-AI-agentvaardigheid ontwikkeld, deze via een populaire vaardighedenmarktplaats en een Instagram-advertentie gepusht en zegt ongeveer 26.000 agenten te hebben bereikt, waaronder enkele op bedrijfsaccounts.

Elke vaardigheidsbeveiligingsscanner waarmee het bedrijf het testte, markeerde het als veilig. De payload was van nature onschadelijk: hij verzamelde het e-mailadres van de gebruiker en deed verder niets.

Het punt was om aan te tonen dat geen enkel signaal waar mensen op leunen om een ​​vaardigheid te vertrouwen, deze heeft opgevangen: niet de scanners, niet de GitHub-sterren, niet de open-sourcereputatie.

Een vaardigheid is een bundel instructies die een agent in zijn eigen context laadt en volgt met grofweg de autoriteit van een gebruikersprompt. Dat vertrouwen is het hele probleem, en het is in de eerste plaats de reden dat er tools voor het scannen van vaardigheden bestaan.

De vaardigheid, genoemd merk-landingspaginabeweerde een landingspagina te bouwen met behulp van Google’s Stitch-ontwerptool, volledig gericht op niet-technische gebruikers.

Om het geloofwaardig te laten lijken, ging AIR achter twee vertrouwenssignalen aan: GitHub-sterren en een schoon scanneroordeel. Voor de sterren opende het een pull-verzoek naar een opslagplaats voor vaardigheden op de marktplaats met ongeveer 36.000 sterren en 156 vaardigheden.

Het pull-verzoek werd na een paar dagen samengevoegd, zodat de vaardigheid het aantal repo’s overnam. Vervolgens vertoonde het een Instagram-advertentie gericht op marketeers, verkopers en ontwerpers, die het installeerden en aan het werk brachten.

Waarom de scanners het hebben gemist

De door AIR geteste scanners analyseren het pakket dat u ze overhandigt: SKILL.md en de bestanden die daarbij worden geleverd. Dat zijn die van Cisco, NVIDIA en degenen die zijn aangesloten op skills.sh.

De vaardigheid van AIR bevatte geen eigen installatie-instructies. Het vertelde de agent om de “Stitch SDK” te installeren door de documentatie te volgen op een externe link, stitch-design.ai, een domein dat AIR bestuurt, niet Google (de echte Stitch woont op stitch.withgoogle.com).

In eerste instantie leidde de link naar de echte Stitch-documenten, dus de scanners, die een schoon pakket zagen dat naar een plausibele opstartpagina wees, maakten het schoon. De pagina die de agent daadwerkelijk zou ophalen en volgen, bevond zich buiten de scan.

Nadat de vaardigheid op grote schaal was geïnstalleerd, verwisselde AIR de pagina achter die link. De nieuwe versie vertelde de agent dat hij een script moest downloaden en uitvoeren.

In de demo mailde het alleen het adres van de gebruiker terug naar AIR, en zo telde het bedrijf de agenten die het bereikte. Een echte operator had dat steunpunt kunnen gebruiken om bestanden te lezen, gegevens te verplaatsen of interne systemen te benaderen, alleen beperkt door wat de agent kon bereiken.

AIR is niet de eerste die dit laat zien. Drie weken eerder omzeilde Trail of Bits de kwaadaardige vaardigheidsdetector van ClawHub, de scanner van Cisco en alle drie de scanners waren aangesloten op skills.sh. De conclusie was bot: een scanner controleert een vast pakket, terwijl een aanvaller de payload kan blijven aanpassen totdat deze passeert.

Echte campagnes gebruiken al maanden dezelfde truc, waarbij de ingediende vaardigheid schoon blijft en de payload wordt gehost op een site die de agent alleen ophaalt tijdens de installatie.

Het probleem is structureel: de scan gebeurt één keer, maar de pagina waar een vaardigheid de agent naar verwijst, kan op elk moment daarna worden herschreven. Anthropic’s eigen documenten waarschuwen al dat vaardigheden die externe URL’s ophalen juist om deze reden riskant zijn, omdat de inhoud kan veranderen nadat de vaardigheid is doorgelicht.

Uit afzonderlijk onderzoek van dit jaar bleek dat scanners het daar vaak niet mee eens zijn, omdat iedereen een vaardigheid afzonderlijk beoordeelt, blind voor de externe links en voor wat er verandert na beoordeling.

Wat te doen

De lezing voor verdedigers is dezelfde waar onderzoekers op blijven landen, nu met een scherper voorbeeld erachter. Behandel vaardigheden als software, niet als tekst. Onderzoek waar een vaardigheid naar verwijst, niet alleen wat erin zit.

De meeste van deze add-ons zijn zonder beoordeling geïnstalleerd, dus de eerste taak is het vinden van wat al actief is. Leid nieuwe vaardigheden door één enkele bron die u beheert, en controleer ze opnieuw als er iets verandert, omdat een schoon resultaat bij de installatie niet schoon blijft als de vaardigheid belt naar een link die iemand anders kan bewerken.

Pin-versies. Houd agenten met de minste privileges. Stel dat elke externe instructie die een agent ophaalt, wordt uitgevoerd met de toegang van de agent.

De schaalcijfers komen alleen van AIR en verdienen een sceptische lezing. Het bedrijf lanceert een marktplaats voor beheerde vaardigheden, sluit het artikel en pitcht het, dus het 26.000-nummer, de details van de bedrijfsaccounts en de bewering dat het de volledige controle over elke agent had kunnen grijpen, zijn eigendom van het bedrijf en worden niet onafhankelijk bevestigd.

Wat stand houdt, is de methode. De genoemde scanners beoordelen eigenlijk alleen het ingediende pakket, de blinde vlek van de externe link is reëel en is onafhankelijk aangetoond, en de vertrouwenssignalen die AIR heeft geleend, sterren en een schone scan zijn precies degene die het ecosysteem nog steeds als bewijs beschouwt.

Het experiment brengt niet zozeer een nieuwe bug aan het licht, maar brengt elk zwak vertrouwenssignaal rond de vaardigheden van agenten in één run samen: sterren die kunnen worden geleend, een scan die een momentopname leest en een link die kan worden herschreven nadat de controle is gewist.

Of het werkelijke aantal nu 26.000 is of een fractie daarvan, het gat waar het doorheen loopt is er één dat de verdedigers nog steeds niet hebben gedicht.

Thijs Van der Does