
Co znajdziesz w tym artykule?
- 1 Wprowadzenie do problemu / definicja luki
- 2 W skrócie
- 3 Kontekst / historia / powiązania
- 4 Analiza techniczna / szczegóły luki
- 5 Praktyczne konsekwencje / ryzyko
- 6 Rekomendacje operacyjne / co zrobić teraz
- 7 Różnice / porównania z innymi przypadkami
- 8 Podsumowanie / kluczowe wnioski
- 9 Źródła / bibliografia
Wprowadzenie do problemu / definicja luki
W rejestrze Open VSX wykryto fałszywe rozszerzenie dla języka Solidity: juan-bianco.solidity-vlang. Początkowo niewinne wydanie z 31 października 2025 r. zostało dzień później zaktualizowane o złośliwe możliwości — już po zdobyciu dużej liczby pobrań. Rozszerzenie zawierało trojana zdalnego dostępu SleepyDuck, który komunikuje się z serwerem dowodzenia m.in. poprzez kontrakt na blockchainie Ethereum, co utrudnia neutralizację infrastruktury C2. Z pakietu skorzystały dziesiątki tysięcy użytkowników Open VSX, w tym popularnych forków VS Code (Cursor, Windsurf).
W skrócie
- Wejście: fałszywe rozszerzenie „Solidity” w Open VSX.
- Ładunek: RAT SleepyDuck z mechanizmem C2 opartym na kontrakcie Ethereum (odporność na wyłączenie domeny).
- Aktywacja: start edytora, otwarcie pliku
.sollub kompilacja. - Cel: kradzież danych systemowych i wykonywanie poleceń; ryzyko dalszej eskalacji.
- Reakcja: Open VSX rotuje tokeny wydawnicze i wdraża dodatkowe kontrole po serii incydentów łańcucha dostaw.
Kontekst / historia / powiązania
Ostatnie miesiące przyniosły presję na ekosystemy rozszerzeń edytorów. Wiz Research ujawnił >550 wyciekłych sekretów, w tym dostępy wydawnicze do marketplace’ów, co umożliwia przestępcom wpychanie złośliwych aktualizacji do już popularnych rozszerzeń (autoupdate robi resztę). Open VSX jest szczególnie atrakcyjny dla użytkowników Cursor/Windsurf, bo nie mogą oni korzystać z oficjalnego Microsoft Visual Studio Marketplace.
Open VSX/Eclipse poinformował następnie, że incydenty zostały opanowane do 21 października 2025 r. oraz zapowiedział krótsze TTL tokenów, łatwiejsze unieważnianie, skany przy publikacji i wymianę informacji z innymi platformami.
Warto pamiętać, że Solidity-devowie są celem od dawna: w lipcu 2025 r. opisano przypadek kradzieży ~500 000 USD po instalacji fałszywego rozszerzenia z Open VSX/Cursor.
Analiza techniczna / szczegóły luki
- Wejście i maskowanie: wydanie 0.0.7 było „czyste”; 0.0.8 (1 listopada) dołożyło komponenty złośliwe. Zanim to nastąpiło, rozszerzenie zdążyło nabić ~14 tys. pobrań, co zwiększyło bazę ofiar na starcie. Twórcy złośliwego pakietu stosowali też taktyki pozycjonowania (aktualność, pobrania) typowe dla ataków na marketplace’y.
- Warunki aktywacji: start IDE, otwarcie pliku
.sollub wywołanie komendy kompilacji Solidity. - Ładunek i telemetria: komponent inicjalizujący podszywa się pod
webpack.init()i ładuje payload, który zbiera hostname, username, MAC, strefę czasową oraz uruchamia sandbox wykonywania komend. - C2 i odporność: moduł wybiera najszybszego dostawcę Ethereum RPC, odczytuje kontrakt zawierający bieżącą konfigurację (np. nowy adres C2, interwały), a gdy domena C2 padnie, polecenia i aktualizacje są pobierane prosto z łańcucha. To zapewnia przetrwanie kampanii mimo blokad DNS/hostingu.
Praktyczne konsekwencje / ryzyko
- Ryzyko operacyjne: zdalne wykonywanie poleceń w środowisku deweloperskim → kradzież sekretów (tokeny, klucze), modyfikacja repozytoriów, dołączanie do kolejnych ataków łańcucha dostaw.
- Ryzyko finansowe: historycznie ataki na rozszerzenia „Solidity” prowadziły do utracenia środków z portfeli krypto i kompromitacji stacji roboczych.
- Ryzyko systemowe: wycieki tokenów wydawniczych tworzą masowy punkt zapalny — atakujący może wypchnąć złośliwą AKTUALIZACJĘ do całej bazy instalacji rozszerzenia.
Rekomendacje operacyjne / co zrobić teraz
Dla zespołów bezpieczeństwa / dev platform:
- Inwentaryzacja i blokady: utrzymujcie listę dozwolonych rozszerzeń (allowlist) i centralną dystrybucję rozszerzeń. Wyłączcie instalacje spoza zaufanych wydawców.
- Zarządzanie aktualizacjami: rozważcie opóźnione autoupdate rozszerzeń + promowanie wersji po skanowaniu (staging).
- Monitoring IDE: detekcje na uruchamianie skryptów z katalogów rozszerzeń (
~/.vscode/extensions,%USERPROFILE%\.vscode\extensions) i nietypowe wywołania PowerShell/cmdprzez procesy VS Code/Cursor. - Skany IOCs: blokujcie znane wskaźniki (domeny typu
sleepyduck[.]xyz, adresy kontraktów, nietypowe zapytania RPC). (Wg materiałów badawczych, C2 i kontrakt są częścią TTP tej kampanii). - Higiena sekretów: skanowanie repozytoriów i paczek
.vsixpod kątem sekretów; rotacja tokenów publikacyjnych; krótkie TTL i prefiksy ułatwiające detekcję. (To też kierunek zmian po stronie Open VSX).
Dla pojedynczych deweloperów:
- Instaluj rozszerzenia wyłącznie od znanych wydawców; weryfikuj historię, kod źródłowy i różnicę między podobnie nazwanymi pakietami (popularna technika podszywania się).
- Zredukuj liczbę rozszerzeń do niezbędnego minimum; każde to nowa powierzchnia ataku.
- Włącz monitorowanie EDR/XDR na stacjach dev i segregację portfeli krypto (oddzielne hosty/przeglądarki, sprzętowe klucze, brak kluczy na maszynach dev). (Rekomendacje wynikają z analizy incydentów krypto-kradzieży na tle fałszywych rozszerzeń).
Różnice / porównania z innymi przypadkami
- SleepyDuck vs. wcześniejsze kampanie (Cursor/Open VSX 2025): wcześniejsze przypadki częściej stawiały na klasyczny zdalny dostęp (np. ScreenConnect) i kradzież seedów; SleepyDuck wprowadza C2 przez kontrakt Ethereum, co utrudnia wyłączenie kampanii i sprzyja długowieczności złośliwych konfiguracji.
- GlassWorm / wycieki tokenów: równoległe kampanie wykorzystywały wycieknięte tokeny wydawnicze do publikowania/zamiany wersji rozszerzeń na złośliwe. Odpowiedzią były rotacje tokenów i skrócenie czasu życia po stronie Open VSX.
Podsumowanie / kluczowe wnioski
- Zaufanie do marketplace’ów IDE nie może zastąpić kontroli bezpieczeństwa po stronie organizacji.
- Atakujący coraz częściej używają łańcucha bloków jako kanału C2 (odporność na zdejmowanie domen).
- Operatory rejestrów (Open VSX) wzmacniają kontrole — rotują tokeny, skracają TTL, dodają skany — ale higiena po stronie wydawców i użytkowników jest równie kluczowa.
Źródła / bibliografia
- BleepingComputer — „Fake Solidity VSCode extension on Open VSX backdoors developers” (03.11.2025). (BleepingComputer)
- Eclipse Foundation — „Open VSX security update, October 2025” (27.10.2025). (Eclipse Foundation Staff Blogs)
- Wiz Research — „Dismantling a Critical Supply Chain Risk in VSCode Extension Marketplaces” (15.10.2025). (wiz.io)
- BleepingComputer — „Open VSX rotates access tokens used in supply-chain malware attack” (02.11.2025). (BleepingComputer)
- Kaspersky — „How installing a fake extension from Open VSX led to cryptocurrency theft” (10.07.2025). (Kaspersky)