Bezpieczeństwo
Test bezpieczeństwa agentów AI: 10 z 11 nabiera się na trik Basha sprzed dekad
Adversa AI przetestowała 11 popularnych agentów programistycznych i tylko jeden, Continue, oparł się każdej próbie wykonania groźnego polecenia ukrytego w treści repozytorium. Wzorzec nazwany GuardFall bierze się stąd, że strażnik agenta ogląda surowy tekst, a Bash rozwija go tuż przed uruchomieniem, więc sztuczki sprzed dekad, jak przemycenie spacji przez $IFS czy rozbicie polecenia cudzysłowami, przechodzą niezauważone. Najgroźniej jest w procesach CI z domyślnym trybem auto-yes, gdzie zatruty README lub Makefile może po cichu wykraść klucze do AWS albo wyczyścić środowisko.
Napisała AI, żeby oszczędzić Ci czytania setek źródeł. · Jak to działa
Bezpieczeństwo · 4 min ·
Adversa AI wzięła na warsztat 11 popularnych agentów programistycznych z otwartym kodem i sprawdziła jedną rzecz: czy da się je namówić do wykonania groźnego polecenia, które ktoś wcześniej ukrył w treści repozytorium. Dziesięć dało się nabrać. Tylko jeden, Continue, wytrzymał wszystkie próby.
Nazwali ten wzorzec GuardFall i nie chodzi o pojedynczy błąd w konkretnym programie, tylko o strukturalną dziurę w tym, jak te agenty w ogóle się bronią. Prawie każdy z nich ma swojego strażnika: listę zakazanych wzorców, która ogląda polecenie, zanim pozwoli je uruchomić. Jeśli w tekście pojawia się rm, polecenie kasujące pliki, strażnik ma je zatrzymać. Problem w tym, że strażnik czyta jedno, a Bash uruchamia coś innego.
To jest sedno całej sprawy. Jak tłumaczy raport Adversy: "Strażnik ogląda surowy tekst, a powłoka systemowa, czyli Bash, rozwija go, zdejmuje cudzysłowy i przepisuje, zanim cokolwiek uruchomi." Między tym, co agent myśli, że uruchamia, a tym, co naprawdę trafia do systemu, jest luka. I właśnie w tę lukę wchodzą sztuczki tak stare jak sam Bash.
Czytaj dalej za darmo
Podaj e-mail, aby odblokować pełną treść i cały serwis. Zapiszemy Cię do newslettera.