GITHUB_TOKEN (tajny klucz o zasięgu repozytorium), a w drugiej ścieżce uzyskać zdalne wykonanie kodu na samym runnerze GitHub Actions . Umożliwiłoby to modyfikację komentarzy w pull requestach, zatwierdzanie złośliwych zmian lub manipulację pipeline'em CI repozytorium .Repozytorium adk-python uruchamiało dwa poziomy agentów AI w swoim pipeline'ie CI/CD :
| Poziom | Agent | Uprawnienia | Wyzwalany przez |
|---|---|---|---|
| Niski | Agent triażu (publiczny) | Tylko do odczytu; może komentować zgłoszenia/PR | Dowolne publiczne zgłoszenie lub pull request na GitHubie |
| Wysoki | Agent naprawiający kod (tylko dla opiekunów) | Pełny dostęp do repozytorium; może modyfikować kod, zatwierdzać PR, uzyskiwać dostęp do tajnych kluczy | Komenda /adk-issue-fix opublikowana przez Współpracownika repozytorium |
Krok po kroku – łańcuch ataku :
/adk-issue-fix”)./adk-issue-fix w wątku zgłoszenia.GITHUB_TOKEN) i modyfikować kod lub zatwierdzać pull requesty .Główną wadą architektoniczną był brak granicy uprawnień między agentami: agent wyższego rzędu ufał komendzie, ponieważ pochodziła z konta Współpracownika, nigdy nie weryfikując, czy instrukcja pochodzi od zaufanego człowieka, czy od skompromitowanego agenta niższego rzędu .
adk-python, które były zaangażowane w łańcuch ataku agent-agent: issue-analyze.yml, issue-fix.yml i pr-analyze.yml .Badacze i analitycy z całej branży wyciągnęli kilka ważnych wniosków z tego ujawnienia:
Zaufanie między agentami to nowa powierzchnia ataku. Tradycyjny model bezpieczeństwa zakłada granice zaufania między ludźmi a oprogramowaniem; ten przypadek pokazuje, że agenci AI mogą być używani do atakowania innych agentów AI, a atak może przekraczać granice uprawnień w sposób niewidoczny . Cloud Security Alliance (CSA) określa to jako „wadę przekazania zaufania” – agenci domyślnie ufają danym wejściowym od innych agentów bez weryfikacji rzeczywistego pochodzenia tych instrukcji .
Wstrzykiwanie promptów to nowa klasa ataków iniekcyjnych. Tak jak SQL injection i command injection zdefiniowały lata 2000. i 2010., tak międzyagentowe wstrzykiwanie promptów – gdzie dane wyjściowe jednego agenta stają się zaufanym wejściem innego – jest teraz udowodnionym, realnym wektorem ataku, który architektury bezpieczeństwa muszą uwzględnić .
Tożsamość i autoryzacja agentów to nierozwiązane problemy. Obecnie nie ma ustandaryzowanego sposobu, w jaki jeden agent AI może zweryfikować prawdziwą tożsamość lub poziom uprawnień innego agenta przed wykonaniem jego instrukcji. Atak powiódł się, ponieważ system ufał tożsamości konta (Współpracownik), a nie pochodzeniu instrukcji (publiczny atakujący) . Badacze CSA wzywają do opracowania „ram autoryzacji międzyagentowej” jako podstawowego elementu bezpieczeństwa .
Pipeline'y CI/CD korzystające z agentów AI wymagają separacji uprawnień. Architekci bezpieczeństwa wzywają do: (a) agentów tylko do odczytu, którzy nie mogą wydawać poleceń operacyjnych, (b) kryptograficznej weryfikacji żądań między agentami, (c) bramek z udziałem człowieka dla każdej komendy eskalującej uprawnienia oraz (d) ograniczania wyników agentów, aby nie emitowały komend wyzwalających dla systemów niższego rzędu .
To kanarek dla szerszego ekosystemu agentowego. The Register, CSO, CSA i wielu analityków określa to jako atak „pierwszy w swoim rodzaju”, który prawie na pewno zostanie powtórzony w innych frameworkach wieloagentowych (np. LangChain, AutoGen, CrewAI, Microsoft Copilot Studio), chyba że branża wbuduje bezpieczeństwo od samego początku architektury .