Luka w Amazon Q Developer dla VS Code mogła umożliwiać kradzież poświadczeń chmurowych - Security Bez Tabu

Luka w Amazon Q Developer dla VS Code mogła umożliwiać kradzież poświadczeń chmurowych

Cybersecurity news

Wprowadzenie do problemu / definicja

Rozszerzenia AI dla programistów coraz częściej działają w uprzywilejowanym środowisku, mając dostęp do lokalnych plików, konfiguracji, sesji uwierzytelnienia oraz narzędzi deweloperskich. To sprawia, że błąd w takim komponencie może wywołać skutki wykraczające daleko poza sam edytor kodu.

Właśnie taki charakter miała podatność wykryta w Amazon Q Developer dla Visual Studio Code. Problem dotyczył automatycznego ładowania konfiguracji MCP z plików workspace, co mogło prowadzić do uruchomienia nieautoryzowanego kodu i przejęcia poświadczeń chmurowych.

W skrócie

Podatność oznaczona jako CVE-2026-12957 wpływała na sposób obsługi konfiguracji serwerów MCP w środowisku VS Code. Mechanizm nie wymuszał odpowiedniej zgody użytkownika przed uruchomieniem konfiguracji dostarczonej przez otwierane repozytorium.

W praktyce oznaczało to możliwość przygotowania złośliwego projektu, który po otwarciu przez dewelopera inicjował proces z dostępem do zmiennych środowiskowych, tokenów, kluczy API i poświadczeń AWS. Problem został usunięty w AWS Language Server w wersji 1.65.0.

Kontekst / historia

Incydent wpisuje się w szerszy trend ryzyk związanych z narzędziami AI wspierającymi tworzenie oprogramowania. Asystenci kodowania są dziś ściśle zintegrowani z IDE, repozytoriami, środowiskami chmurowymi i pipeline’ami CI/CD, przez co stają się atrakcyjnym celem dla atakujących.

W tym przypadku problem nie wynikał z klasycznego błędu parsowania danych, lecz z modelu zaufania wobec konfiguracji workspace oraz działania Model Context Protocol. To istotne, ponieważ podobne klasy zagrożeń mogą występować również w innych narzędziach AI instalowanych bezpośrednio w środowiskach deweloperskich.

Analiza techniczna

Źródłem ryzyka była obsługa Model Context Protocol, czyli mechanizmu pozwalającego agentom AI komunikować się z dodatkowymi usługami i narzędziami. W podatnej implementacji rozszerzenie Amazon Q Developer dla VS Code automatycznie ładowało i wykonywało konfiguracje MCP zapisane w plikach workspace.

Scenariusz ataku mógł wyglądać następująco:

  • atakujący przygotowuje złośliwe repozytorium lub pakiet podszywający się pod legalny projekt,
  • ofiara klonuje repozytorium i otwiera je w Visual Studio Code,
  • rozszerzenie inicjalizuje konfigurację MCP bez wymaganego potwierdzenia,
  • uruchomiony proces dziedziczy środowisko użytkownika,
  • atakujący uzyskuje dostęp do sekretów obecnych w sesji deweloperskiej.

Najbardziej krytycznym elementem było dziedziczenie pełnego środowiska procesu. Dzięki temu wykonany lokalnie kod mógł odczytać aktywne poświadczenia AWS, zmienne środowiskowe, tokeny dostępu, klucze API czy informacje dostępne przez agenta SSH.

Badacze wskazali również, że uruchomienie niepożądanej logiki mogło nastąpić jeszcze przed ręczną analizą kodu przez użytkownika. Oznacza to, że samo otwarcie projektu w edytorze mogło wystarczyć do rozpoczęcia kompromitacji.

Konsekwencje / ryzyko

Ryzyko związane z tą luką należy uznać za wysokie, zwłaszcza w organizacjach, gdzie deweloperzy mają szeroki dostęp do zasobów chmurowych, środowisk testowych, produkcyjnych lub systemów automatyzacji.

  • kradzież poświadczeń AWS i innych sekretów,
  • utrwalenie dostępu w chmurze poprzez utworzenie dodatkowych kont lub kluczy,
  • ruch boczny do systemów wewnętrznych dostępnych z sieci deweloperskiej,
  • kompromitacja prywatnych repozytoriów i projektów open source,
  • atak na łańcuch dostaw oprogramowania przez przejęcie pipeline’ów i kont maintainerów.

Szczególnie groźny jest socjotechniczny charakter takiego wektora wejścia. Złośliwe repozytorium może wyglądać wiarygodnie i przyjmować formę próbki kodu, pull requestu, zadania rekrutacyjnego lub pakietu z literówką w nazwie.

Rekomendacje

Organizacje wykorzystujące narzędzia AI w pracy programistów powinny traktować je jako krytyczny element powierzchni ataku. Ochrona takich rozwiązań wymaga zarówno aktualizacji, jak i zmian w politykach bezpieczeństwa środowisk developerskich.

  • zaktualizować AWS Language Server do wersji 1.65.0 lub nowszej,
  • przeprowadzić audyt konfiguracji MCP używanych w środowiskach roboczych,
  • ograniczyć automatyczne wykonywanie niezaufanych konfiguracji workspace,
  • stosować krótkotrwałe poświadczenia i minimalizować liczbę sekretów dostępnych lokalnie,
  • wdrożyć zasadę najmniejszych uprawnień dla kont deweloperskich i ról chmurowych,
  • monitorować nietypowe użycie tokenów, wywołań API oraz operacji IAM,
  • segmentować środowiska deweloperskie od systemów produkcyjnych,
  • otwierać nieznane projekty w izolowanych workspace’ach, kontenerach lub sandboxach,
  • szkolić zespoły z ryzyk związanych z AI coding assistants i MCP.

Podsumowanie

Podatność CVE-2026-12957 pokazuje, że nowoczesne asystenty AI dla programistów mogą stać się skutecznym wektorem ataku, jeśli działają w zaufanym środowisku pełnym sekretów i aktywnych sesji uwierzytelnienia. W tym przypadku wystarczyło otworzyć złośliwe repozytorium, aby uruchomić kod i narazić poświadczenia chmurowe na przejęcie.

Choć poprawka została udostępniona, problem ma wymiar szerszy niż pojedyncza luka. Bezpieczeństwo rozszerzeń AI w IDE powinno być oceniane tak samo rygorystycznie jak bezpieczeństwo przeglądarek, agentów dostępowych czy komponentów łańcucha dostaw oprogramowania.

Źródła

  1. https://www.darkreading.com/cloud-security/amazon-q-vs-extension-flaw-leads-cloud-credential-theft
  2. https://www.wiz.io/blog/amazon-q-developer-extension-vulnerability
  3. https://aws.amazon.com/security/security-bulletins/AWS-2026-017/