Microsoft pokazał dziś demonstrację ataku nazwanego AutoJack. To nowy łańcuch exploitacji, w którym, jak opisują badacze firmy, już samo otwarcie złośliwej strony, a nawet samo jej wyrenderowanie przez agenta webowego, może skończyć się przejęciem komputera hosta i finalnie doprowadzić do zdalnego wykonania kodu na hoście. Proof of concept przygotowano przeciwko AutoGen Studio, czyli otwartemu interfejsowi Microsoftu do budowania aplikacji wieloagentowych.
- W proof of concept Microsoft wykorzystał listę zaufanych źródeł dla localhost. Pozwalała ona na lokalne połączenia wykonywane przez samego agenta.
- W tym samym scenariuszu, jak podaje Microsoft, udało się ominąć uwierzytelnianie na endpointach WebSocket MCP (Model Context Protocol).
- Polecenia, według opisu Microsoftu, zostały przekazane przez parametr „server_params” wprost do mechanizmu uruchamiania procesów.
- Efekt końcowy był prosty: uruchomiono PowerShell, Bash i inne binaria dostępne na maszynie, bez dodatkowego kliknięcia i bez ręcznej zgody. Wystarczyła sama wizyta na stronie albo jej wyrenderowanie.
Trudno przeoczyć, że AutoGen Studio działa w sposób zbliżony do innych frameworków agentowych, które łączą przeglądanie internetu z uprzywilejowaną komunikacją lokalną. I właśnie dlatego Microsoft zaznacza, że problem nie musi dotyczyć wyłącznie tego jednego narzędzia. Zasięg może być dużo szerszy.
Zresztą najciekawszy wniosek z całego badania wykracza poza samą podatność. Jeśli agent potrafi jednocześnie otwierać strony WWW i rozmawiać z lokalnymi usługami działającymi z podwyższonymi uprawnieniami, localhost przestaje być realną granicą bezpieczeństwa. Badacze Microsoftu opisali to jako klasyczny problem „confused deputy”, czyli sytuację, w której system działa z twoimi uprawnieniami, ale można go nakłonić do wykonywania poleceń kogoś innego.
Dla zespołów projektujących takie rozwiązania to spora zmiana optyki, bo lokalne usługi przez długi czas traktowano jak coś domyślnie godnego zaufania. W praktyce wygląda to mniej bezpiecznie: agent renderujący obcą zawartość może stać się pomostem między internetem a procesami uruchomionymi na twoim komputerze.
AutoJack dopisuje się też do coraz dłuższej listy problemów w narzędziach agentowych. Są tam już pułapki zastawiane na agentów, przejęcia asystentów programistycznych, scenariusze prompt injection prowadzące do RCE, a także luki ujawniające wrażliwe dane. Wspólny mianownik wciąż jest ten sam: tradycyjne zabezpieczenia często słabo pokrywają warstwę interakcji między tobą, agentem i danymi.
Na ten moment Microsoft podaje, że podatny kod występował wyłącznie w wersjach deweloperskich z obsługą MCP, a ustalenia zostały wewnętrznie zgłoszone do MSRC, czyli Microsoft Security Response Center. Żeby odtworzyć ten scenariusz, według Microsoftu potrzebna jest deweloperska wersja AutoGen Studio z obsługą MCP oraz agent webowy, który równocześnie renderuje obcą treść i łączy się z lokalnymi usługami działającymi z podwyższonymi uprawnieniami.
Microsoft twierdzi też, że luka została załatana jeszcze przed publiczną publikacją pakietu w PyPI, więc wersja dostępna obecnie nie była narażona. Eksperci od bezpieczeństwa zalecają podejście zero trust, uruchamianie agentów w sandboxach, obowiązkowe uwierzytelnianie lokalnych usług oraz traktowanie wszystkich działań i całego kodu generowanego przez system jako nieufnych do chwili ich zweryfikowania. Reszta użytkowników musi na razie poczekać, aż pojawi się potwierdzenie, czy podobne problemy występują także w innych frameworkach.