Ten artykuł jest częścią serii „Bezpłatny Kurs LPI Security Essentials”, w ramach której znajdziesz wszystko, co potrzeba, aby zdać egzamin LPI Security Essentials 020-100 już za pierwszym razem.
Każdy moduł zawiera praktyczne przykłady, wyjaśnienia i materiały pomocnicze – wszystko po polsku, zrozumiale i konkretnie.
Ten artykuł jest częścią serii „Bezpłatny Kurs LPI Security Essentials”, w ramach której znajdziesz wszystko, co potrzeba, aby zdać egzamin LPI Security Essentials 020-100 już za pierwszym razem.
Każdy moduł zawiera praktyczne przykłady, wyjaśnienia i materiały pomocnicze – wszystko po polsku, zrozumiale i konkretnie.
Na OpenVSX (alternatywny rejestr rozszerzeń VS Code) wykryto powrót kampanii GlassWorm – zestawu złośliwych rozszerzeń wykorzystujących niewidzialne znaki Unicode do ukrywania i wykonywania JavaScriptu. Nowa fala obejmuje 3 rozszerzenia (m.in. ai-driven-dev.ai-driven-dev, adhamu.history-in-sublime-merge, yasuyuky.transient-emacs) i według bieżących raportów odnotowała łącznie >10 tys. pobrań. Kampania kontynuuje wcześniej opisane techniki: C2 w łańcuchu Solana, kradzież tokenów GitHub/npm/OpenVSX oraz danych portfeli krypto z 49 popularnych wtyczek.
W skrócie
Co się stało: po październikowych czyszczeniach OpenVSX znów pojawiły się 3 zainfekowane rozszerzenia z ukrytym ładunkiem GlassWorm.
Jak działa: payload jest schowany w znakach PUA/VS (Private Use Area/Variation Selectors) – „puste” w edytorze, ale dekodowane i wykonywane przez JS. C2 i aktualizacje są osadzane w transakcjach Solana (trwałość, anonimizacja, niskie koszty).
Po co: kradzież sekretów (GitHub, npm, OpenVSX), drenaż krypto, tworzenie SOCKS proxy/HVNC i budowa infrastruktury przestępczej na stacjach devów.
Skala i spór: OpenVSX informował, że incydent z października był „opanowany” i że nie była to autonomiczna samoreplikacja; jednak badacze widzą „samopowielanie” przez kradzież i użycie poświadczeń.
Nowość: potwierdzone wejście na GitHub (commity z doklejonym, ukrytym dekoderem + eval) – to rozszerza wektor poza marketplace.
Kontekst / historia / powiązania
Pierwsza fala GlassWorm została opisana 20 października 2025 r., gdy wykryto pakiet zainfekowanych rozszerzeń na OpenVSX i w marketplace Microsoftu (łączny licznik pobrań szacowany na ok. 35,8 tys., choć mógł być sztucznie zawyżony przez atakujących). 2 listopada OpenVSX ogłosił rotację tokenów i dodatkowe zabezpieczenia po wykryciu wycieku >550 sekretów; jednocześnie podkreślił, że kod nie był „samoreplikującym się” robakiem w klasycznym sensie. 6 listopada badacze Koi i Aikido pokazali jednak nową falę oraz pivot na GitHub. 8 listopada media potwierdziły trzy świeże rozszerzenia na OpenVSX.
Analiza techniczna / szczegóły luki
1) „Niewidzialny” ładunek
Atak wykorzystuje PUA/VS (np. zakresy U+E000–U+F8FF, U+FE00–U+FE0F), które nie renderują się w edytorze, ale są parsowane przez dekoder w JS. Typowy wzorzec: dekoder mapujący punkty kodowe → bajty → eval. Na GitHub widziano jednolinijkowy wariant, który dołączał dekoder na końcu pliku.
2) Kanał C2/aktualizacji w Solanie
Rozszerzenia pobierają następne etapy na podstawie transakcji Solana (w polach danych trzymane są base64 z URL-ami serwerów C2). Rozwiązanie trudne do zdejmowania (odporne, tanie, anonimowe). Backup: Google Calendar z linkiem base64 w tytule wydarzenia.
3) Zdolności końcowe
Kradzież tokenów/logowań (GitHub/npm/OpenVSX), portfeli krypto (49 wtyczek), uruchamianie SOCKS proxy, HVNC (ukryty VNC) – praktycznie przejęcie stacji deweloperskiej jako węzła przestępczego.
4) Infrastruktura i IOC
Koi w nowej fali wskazało, że używana jest ta sama infrastruktura (zaktualizowane wskaźniki C2 publikowane w Solanie; przykładowo w raporcie widnieją adresy 199.247.10.166 oraz 199.247.13.106:80/wall jako punkty komunikacji/eksfiltracji).
Praktyczne konsekwencje / ryzyko
Łańcuchowe kompromitacje: kradzione tokeny wydawnicze pozwalają wstrzykiwać złośliwe aktualizacje do innych rozszerzeń/repozytoriów/teamów.
Trwałość i trudne wyłączenie:C2 na blockchainie zmniejsza skuteczność klasycznych Takedownów. Zmiana transakcji → nowy endpoint → „samoleczenie” C2.
Ryzyko finansowe i reputacyjne: wyciek sekretów organizacji, kradzież krypto, nadużycie zasobów (proxy, botnet z dev-workstation).
Rozszerzenie wektora: pojawienie się ukrytych commitów na GitHub (AI-like, wiarygodne modyfikacje) utrudnia code review i detekcję.
Rekomendacje operacyjne / co zrobić teraz
0) Szybkie kroki IR (dla SOC/ITSec)
Zidentyfikuj i usuń trzy rozszerzenia z nowej fali (oraz te z list październikowych):
Sprawdź stacje devów pod kątem IOC/C2 i anomalii sieciowych (np. komunikacja do znanych hostów z raportu Koi).
Rotuj sekrety: patche PAT/ghp, npm tokens, OpenVSX tokens, klucze do CI/CD; wymuś 2FA i SSO. (OpenVSX przeszedł już rotację tokenów, ale Twoja organizacja musi zrobić to samo).
1) Wykrywanie „niewidzialnego” kodu (proste skrypty)
Linux/macOS – skan katalogów rozszerzeń VS Code/VSCodium
# VS Code i VSCodium: typowe ścieżki
EXT_DIRS=("$HOME/.vscode/extensions" "$HOME/.vscode-oss/extensions" "$HOME/.vscode-insiders/extensions")
# Znaki PUA/VS: U+E000–U+F8FF, U+FE00–U+FE0F, U+E0100–U+E01EF
for d in "${EXT_DIRS[@]}"; do
[ -d "$d" ] || continue
echo "[*] Skanuję $d"
grep -RIl --include='*.js' --include='*.ts' \
-P "[\x{E000}-\x{F8FF}\x{FE00}-\x{FE0F}\x{E0100}-\x{E01EF}]" "$d" || true
done
Sekrety: ogranicz TTL tokenów, wprowadź krótko żyjące PAT, automatyczną re-rotację po wykryciu wycieku; secret scanning w CI. (Zgodne z kierunkiem zmian deklarowanych przez OpenVSX).
Publikacja rozszerzeń: SBOM + skan artefaktów przed publikacją, signowanie, zasada 4-oczu na „release”.
Review kodu: wymuś widoczność znaków niewidzialnych w IDE i Diffach (np. włącz „Render Control Characters” w VS Code, używaj pre-commit hooków skanujących PUA). (W raporcie Aikido wskazano, że interfejsy nie zawsze oznaczały te znaki).
Egress i DNS: blokady do znanych IOC oraz monitorowanie zapytań powiązanych z Solaną używaną jako kanał C2 (telemetria proxy, NetFlow/Zeek).
Różnice / porównania z innymi przypadkami
Klasyczne „tylne drzwi” w npm (post-install, skrypty lifecycle) były wyraźniejsze w kodzie; tutaj ładunek „nie istnieje gołym okiem” i potrafi przenikać code review.
C2 w Solanie to nowszy trend utrudniający Takedown – w porównaniu do typowych domen/URL na VPS, które łatwiej zawiesić.
Spór o „worma”: OpenVSX wskazuje, że brak autonomicznej replikacji; badacze argumentują, że automatyczne aktualizacje + wykorzystanie wykradzionych tokenów de facto umożliwia rozprzestrzenianie się w ekosystemie. Wniosek operacyjny: dla obrony nie ma to znaczenia – ścieżka propagacji i tak omija kontrole.
Podsumowanie / kluczowe wnioski
Niewidzialny kod + blockchain C2 + kradzież sekretów = bardzo skuteczny model ataku na ekosystemy developerskie.
Nowa fala na OpenVSX pokazuje, że nawet po rotacji tokenów atakujący szybko wracają – potrzebne są krótkie TTL, skanowanie podczas publikacji i silne procesy w organizacjach.
Blue Teamy powinny wdrożyć skan PUA, bloki IOC, telemetrię egress i procedury IR wyspecjalizowane dla stacji developerskich (zależne od IDE/marketplace).
Źródła / bibliografia
BleepingComputer – nowa fala, 3 rozszerzenia i >10k pobrań (08.11.2025). (BleepingComputer)
BleepingComputer – analiza pierwszej fali (20.10.2025). (BleepingComputer)
Eclipse Foundation (OpenVSX) – aktualizacja bezpieczeństwa, rotacje tokenów i stanowisko nt. „self-replicating” (27.10.2025; podsumowane także 02.11.2025). (Eclipse Foundation Staff Blogs)
Koi Security – „GlassWorm Returns”: nowe IoC, opis pivotu i zrzuty z serwera atakujących (06.11.2025). (Koi)
Aikido Security – „The Return of the Invisible Threat”: wzorzec jednolinijkowego dekodera, pivot na GitHub (31.10.2025). (Aikido)
Badacze ujawnili świeży zestaw podatności w popularnych elementach infrastruktury AI: w silniku modeli Ollama oraz w stosie NVIDIA (Triton Inference Server i Container Toolkit/GPU Operator). Część błędów umożliwia zdalne wykonanie kodu (RCE) bez uwierzytelnienia lub ucieczkę z kontenera do hosta, co wprost zagraża klastrom Kubernetes i serwerom GPU. Informacje o nowych lukach i ich naprawach potwierdza m.in. serwis Dark Reading oraz biuletyny producentów.
W skrócie
Produkty narażone (przykłady):
Ollama – m.in. nowsze zgłoszenia: CVE-2025-51471 (token-steal/bypass auth), wcześniejsze: CVE-2024-37032 (RCE „Probllama”), CVE-2024-28224 (DNS rebinding), plus błędy DoS/overflow.
Wpływ: przejęcie serwera inferencji, kradzież modeli i danych, eskalacja uprawnień z kontenera do hosta, dostęp do innych workloadów na tym samym węźle GPU.
Ollama – aktualizacja do wydań z łatami (m.in. po CVE-2024-37032 oraz po CVE-2025-51471).
Kontekst / historia / powiązania
Od 2024 r. infrastruktura AI trafia coraz częściej na celownik: Wiz Research opisał RCE w Ollama (CVE-2024-37032, „Probllama”) – łatwe do sprowokowania przez błędy walidacji i brak natywnego uwierzytelniania, zwłaszcza w domyślnie publicznych wdrożeniach Docker. NCC Group wcześniej udowodniło, że DNS rebinding pozwala atakować lokalne instancje Ollama przez przeglądarkę ofiary. Równolegle 2025 przyniósł NVIDIAScape – krytyczny escape w Container Toolkit. Trend potwierdzają media branżowe: środek ciężkości badań przesuwa się z prompt-injection do warstwy infrastruktury (serwery inferencji, rejestry modeli, kontenery GPU).
Analiza techniczna / szczegóły luki
Ollama
CVE-2024-37032 („Probllama”) – RCE
Wada w obsłudze manifestów przy /api/pull pozwalała na path traversal i arbitrary file write/read, co w deploymentach Docker (root, 0.0.0.0) dawało prostą ścieżkę do RCE (np. przez manipulację ld.so.preload). Zalecana aktualizacja do wersji z 08.05.2024+.
CVE-2024-28224 – DNS rebinding
Atak z poziomu przeglądarki ofiary omijał Same-Origin Policy, umożliwiając zdalny dostęp do API Ollama na localhost, eksfiltrację plików oraz operacje na modelach. Naprawione w v0.1.29; rekomendowane m.in. sprawdzanie nagłówka Host i TLS, także dla loopback.
CVE-2025-51471 – kradzież tokenów / obejście auth
Cross-Domain Token Exposure: złośliwy WWW-Authenticate realm z /api/pull mógł wykradać tokeny i obchodzić kontrolę dostępu. Dotyczyło Ollama 0.6.7; patrz NVD/GitHub Advisory i poprawki projektu.
Wniosek: w praktyce te trzy klasy błędów łączą się w łańcuch ataku: rebinding ⇒ token-steal ⇒ pull/push z prywatnego rejestru ⇒ RCE/eksfiltracja.
NVIDIA Container Toolkit / GPU Operator
CVE-2025-23266 (CVSS 9.0) – błąd w hookach inicjalizacji kontenera; w pewnych konfiguracjach umożliwiał ucieczkę z kontenera i wykonanie kodu z podwyższonymi uprawnieniami na hoście.
CVE-2025-23267 (CVSS 8.5) – podatność w hooku update-ldcache; specjalnie spreparowany obraz mógł prowadzić do link following, skutkując manipulacją danymi/DoS.
Wersje naprawcze: Toolkit 1.17.8, GPU Operator 25.3.2, Device Plugin 0.17.3, MIG Manager 0.12.2; dodatkowe uwagi dla RHEL/OpenShift i notatka, że konfiguracje z crun nie są dotknięte 23266.
Praktyczne konsekwencje / ryzyko
Kradzież modeli i promptów, modyfikacja wag i artefaktów (supply-chain modeli), sabotaż inferencji.
Pivot z kontenera do hosta GPU (23266) ⇒ dostęp do innych namespace’ów/kontenerów na węźle, wyciek danych klientów i eskalacja w klastrze.
Ataki z przeglądarki na lokalne dev-maszyny (DNS rebinding) ⇒ eksfiltracja dokumentów/projektów R&D.
Ryzyko compliance: naruszenia izolacji danych, IP leakage, utrata integralności modeli.
Rekomendacje operacyjne / co zrobić teraz
1) Patch & wersje
NVIDIA: zaktualizuj Container Toolkit → 1.17.8, GPU Operator → 25.3.2, Device Plugin → 0.17.3, MIG Manager → 0.12.2. Dla OpenShift – użyj tagów v1.17.8-ubi8 / v0.12.2-ubi9. Jeśli używasz crun – 23266 nie dotyczy, ale 1.17.7 nadal wymaga łat na 23267.
Ollama: zaktualizuj do wersji usuwających CVE-2024-37032 i CVE-2025-51471 (sprawdź release notes projektu). Minimalnie ≥ v0.1.34 dla „Probllama”, naprawa 0.6.7-related dla token-steal.
2) Minimalizacja ekspozycji
Nie wystawiaj API Ollama publicznie. Jeśli musisz – wymuś reverse proxy z auth (OIDC/Basic) i TLS:
Pin’uj hashy warstw, weryfikuj źródła (allow-list domen/rejestrów), skanuj artefakty przed „pull”. (W RCE „Probllama” wektor przechodził przez /api/pull z prywatnego rejestru.)
5) Detekcja i IR
Wskaźniki podejrzanej aktywności (przykłady):
Nietypowe żądania /api/pull z zewnętrznych adresów, 4xx/5xx na /api/push, powtarzające się tworzenie modelu z niestandardowymi FROM.
W nodach GPU: logi runtime wskazujące na modyfikacje ld.so.preload, anomalie w hookach OCI, nieautoryzowane biblioteki preload (23266/23267).
Reguły (przykład Falco):
- rule: Write to ld.so.preload
desc: Potential container escape via ld.so.preload manipulation
condition: >
evt.type in (open, openat) and fd.name = "/etc/ld.so.preload" and
proc.name not in (ldconfig)
output: "Process %proc.name wrote to ld.so.preload (user=%user.name container=%container.id)"
priority: CRITICAL
Różnice / porównania z innymi przypadkami
Ollama – błędy głównie na styku API i walidacji danych (path traversal, token-steal, DNS rebinding), a więc ataki zdalne poprzez HTTP i łańcuchy z udziałem przeglądarek/serwerów proxy.
NVIDIA Container Toolkit/GPU Operator – błędy w hookach OCI i przepływie inicjalizacji, skutkujące eskalacją z kontenera do hosta (breakout), co zagraża całemu węzłowi i sąsiadującym workloadom.
Podsumowanie / kluczowe wnioski
Zaktualizuj wszystko, co dotyczy stosu AI – najpierw Toolkit 1.17.8 / GPU Operator 25.3.2, potem Ollama do wersji z łatami na RCE, rebinding i token-exposure.
Nie wystawiaj surowych endpointów inferencji do Internetu; dodaj auth i TLS na brzegu.
Odchudź uprawnienia kontenerów, stosuj Pod Security i NetworkPolicy, monitoruj anomalia w hookach OCI i modyfikacje ld.so.preload.
Traktuj modele jak łańcuch dostaw – weryfikuj źródła i hashe, skanuj pliki GGUF/manifesty przed użyciem.
Źródła / bibliografia
Dark Reading — przegląd nowych luk w Ollama i NVIDIA Triton/Toolkit (7 listopada 2025). (Dark Reading)
NVIDIA Security Bulletin: Container Toolkit (CVE-2025-23266, CVE-2025-23267) oraz wersje naprawcze. (NVIDIA Support)
Wiz Research: „Probllama” — CVE-2024-37032 (RCE w Ollama), wektory i mitigacje. (wiz.io)
NCC Group: CVE-2024-28224 (DNS rebinding w Ollama), szczegóły ataku i zalecenia. (NCC Group)
NVD: CVE-2025-51471 (Cross-Domain Token Exposure w Ollama 0.6.7), status i referencje. (NVD)
Na Visual Studio Marketplace opublikowano rozszerzenie do VS Code, które wprost reklamowało funkcje „zipping, upload & encrypt”, po zainstalowaniu uruchamiało się automatycznie, a następnie pakowało, eksfiltrowało i szyfrowało pliki. Zjawisko ochrzczono „ransomvibing” – ransomware „vibe-coded”, czyli w dużej mierze sklejone promptami do LLM. Wpis badacza, który pierwszy opisał sprawę (Secure Annex), oraz relacje prasowe potwierdzają, że Microsoft usunął rozszerzenie z Marketplace po zgłoszeniu.
W skrócie
Złośliwy plugin VS Code został opublikowany pod nazwą wydawcy sugerującą „sus…” i opisem jednoznacznie wskazującym na eksfiltrację i szyfrowanie. Po zgłoszeniu zniknął z Marketplace, a Microsoft informuje, że takie pakiety po weryfikacji trafiają na blocklistę i są autoodinstalowane.
Implementacja zdradza ślady generowania kodu przez AI (obszerne komentarze, nielogiczne decyzje projektowe), łącznie z kuriozalnym wbudowaniem klucza deszyfrującego.
Kanał C2 oparto o prywatne repozytorium GitHub; rozszerzenie nasłuchiwało zmian i wykonywało polecenia. W opisie widniały także docelowe ścieżki do pakowania danych.
Incydent wpisuje się w szerszy trend AI-asystowanego malware (np. akademicki PoC „PromptLock/PromptLocker”).
Kontekst / historia / powiązania
Marketplace’y na narzędzia developerskie stają się łakomym kąskiem: poza fałszywymi wtyczkami do przeglądarek i IDE, branża obserwuje też złośliwe rozszerzenia VS Code i nieszczelne wydania z wyciekami sekretów. Dostawcy (w tym Microsoft) deklarują procesy moderacyjne, automatyczną dezinstalację zidentyfikowanych zagrożeń i link „Report abuse” na stronach rozszerzeń. Jednak incydenty – od kradzieży kodu źródłowego po cryptomining – pokazują, że sama kuratela nie wystarcza i wymaga defensywy po stronie organizacji.
Analiza techniczna / szczegóły luki
Składniki łańcucha ataku:
Publikacja pluginu w Marketplace jako zwykłego rozszerzenia VS Code; opis nie krył funkcji „zip-upload-encrypt”.
Automatyczna aktywacja (activation events „onStartupFinished”/„*”) – uruchomienie funkcji zipUploadAndEncrypt już przy instalacji/otwarciu edytora.
Zbieranie danych – tworzenie archiwum ZIP wskazanego katalogu (np. C:\Users\Public\testing lub /tmp/testing w PoC).
Eksfiltracja – wysyłka na zdalny serwer/C2; w tym przypadku GitHub (repo prywatne) jako boczny kanał poleceń (polling commitów).
Szyfrowanie – zastąpienie plików wersjami zaszyfrowanymi; w kodzie widniał twardo zaszyty klucz deszyfrujący oraz dwa „decryptory” (Python/Node), co zdradza pośpieszne, AI-asystowane klejenie.
Artefakty i wskaźniki (IoC) do huntowania w orgu:
Nazwy: podejrzany wydawca o wzorcu „sus…”, funkcja zipUploadAndEncrypt, odwołania do index.html jako pseudo-kanału sterowania.
Aktywność sieciowa VS Code do domen GitHub/serwera C2 bez interakcji użytkownika (po starcie IDE).
Praktyczne konsekwencje / ryzyko
Obniżenie poprzeczki dla przestępców: LLM-y pozwalają szybko „wibrować” (vibe-code) działający, choć toporny kod ransomware. Amator może wrzucić POC do ekosystemu, w którym użytkownicy ufają dystrybucji rozszerzeń.
Ryzyko supply-chain: Auto-update rozszerzeń = ryzyko „one-click impact” lub nawet silent impact przy aktualizacji.
Trudność w detekcji: Aktywacja na eventach VS Code i C2 w GitHubie „zlewają się” z normalnym ruchem dev-toolingu.
Rekomendacje operacyjne / co zrobić teraz
1) Governance i polityki VS Code/Marketplace (Enterprise)
Wyłącz auto-aktualizacje rozszerzeń na poziomie orgu: settings.json (User/Workspace/Policy): { "extensions.autoUpdate": false, "extensions.autoCheckUpdates": false }
Wymuś allow-listę wydawców (rozszerzenia tylko ze sprawdzonej listy; w praktyce – własny mirror lub repo wewnętrzne).
Zablokuj dostęp do Marketplace na brzegu (proxy/NGFW/DNS): domeny marketplace.visualstudio.com, *.gallery.vsassets.io (tylko dla stacji dev bez zgody). Microsoft sam zaleca możliwość całkowitego blokowania Marketplace w środowiskach podwyższonego ryzyka.
W politykach MDM/Intune lub konfiguracji złotych obrazów wymuś zewnętrzne źródła rozszerzeń = off, instalacja tylko z pakietów zatwierdzonych.
2) Kontrola instalacji i inwentaryzacja
Zrzut listy rozszerzeń (CI lub skrypty pre-commit): # macOS/Linux code --list-extensions > extensions.txt # Windows (PowerShell) code --list-extensions | Out-File extensions.txt
Wymuś uninstall niezatwierdzonych: # przykład: masowa dezinstalacja wszystkiego spoza allow-listy allowed=$(cat allowlist.txt) for ext in $(code --list-extensions); do echo "$allowed" | grep -qx "$ext" || code --uninstall-extension "$ext" done
Ścieżki przeglądu kodu rozszerzeń:
Windows: %USERPROFILE%\.vscode\extensions\
Linux/macOS: ~/.vscode/extensions/
3) Detekcje / hunting (EDR/SIEM/Defender for Endpoint)
Reguła YARA (przykład PoC) na artefakty wspomniane publicznie: rule VSCode_Ransomvibe_PoC { meta: description = "Heurystyka: vibe-coded VSCode ransomware PoC" strings: $s1 = "zipUploadAndEncrypt" nocase $s2 = "index.html" ascii $s3 = "C:\\Users\\Public\\testing" ascii $s4 = "/tmp/testing" ascii condition: 2 of ($s*) } (dobierz do własnych TTP, nie traktuj jako sygnatury ostatecznej). Źródła publiczne wspominają zarówno nazwę funkcji, jak i ścieżki docelowe.
Reguła EDR (pseudo-KQL) – VS Code inicjuje ZIP + outbound do GitHub po starcie:DeviceProcessEvents | where InitiatingProcessFileName =~ "Code.exe" and (FileName in~ ("powershell.exe","zip.exe","node.exe","python.exe")) | where Timestamp between (SigninTime .. SigninTime + 5m) | join kind=leftouter DeviceNetworkEvents on DeviceId, InitiatingProcessId | where RemoteUrl endswith "github.com" or RemoteUrl endswith "githubusercontent.com" | summarize count() by DeviceName, InitiatingProcessCommandLine
Alerty na nietypowe „activation events” w package.json rozszerzeń (szczególnie „onStartupFinished”, „*”).
4) Hardening stacji developerskich
Least privilege (dev nie jest lokalnym adminem).
AppLocker/WDAC – lista dozwolonych interpreterów (Node/Python) uruchamianych z katalogów profilowych.
Segregacja danych – wartościowe repozytoria poza katalogami, do których VS Code ma pełny zapis bez kontroli.
Skanowanie tajemnic (pre-commit hooks, np. gitleaks) i DLP – ogranicza exfil wartościowych artefaktów, nawet jeśli dojdzie do ZIP/POST.
5) Reagowanie i odtwarzanie
W przypadku detekcji: izolacja hosta, inwentaryzacja zaszyfrowanych/wyeksfiltrowanych ścieżek, wymuszenie rotacji sekretów (tokeny w repo), zgłoszenie do zespołu PSIRT.
Backup i testy odtwarzania – szczególnie dla katalogów roboczych developerów.
Różnice / porównania z innymi przypadkami (jeśli dotyczy)
PromptLock / PromptLocker (NYU, PoC): akademicki projekt pokazał, że LLM może orkiestrwać pełny cykl ataku ransomware (od rekonesansu po szyfrowanie) – to dowód możliwości, nie kampania przestępcza. Incydent z rozszerzeniem VS Code jest praktycznym przykładem, że „AI-asystowana” implementacja potrafi trafić do zaufanego kanału dystrybucji.
Inne przypadki z VS Code: raporty branżowe z ostatnich tygodni wskazują na szkodliwe rozszerzenia kradnące kod i użycie Marketplace do dystrybucji – „ransomvibing” wpisuje się w ten trend, ale rzadko widziano tak jawnie opisane funkcje „encrypt/exfil”.
Podsumowanie / kluczowe wnioski
Zaufanie do Marketplace ≠ bezpieczeństwo. Moderacja nie zastąpi kontroli organizacyjnej (allow-lista, mirror, polityki).
AI obniża barierę wejścia – nawet amatorzy są w stanie złożyć „działający” ransomware i opublikować go w kanale enterprise-grade.
Operationalize security w DevEx: inwentaryzacja rozszerzeń, EDR-hunting wokół VS Code i blokady sieciowe to dziś „must-have”.
Przygotuj IR pod developerów: procedury odtwarzania stanowisk i rotacji sekretów po incydencie z IDE.
Źródła / bibliografia
Dark Reading – opis incydentu, cytat Microsoftu, szczegóły publikacji i usunięcia rozszerzenia. (Dark Reading)
Google wydało poprawkę bezpieczeństwa dla Chrome 142 usuwającą 5 podatności, z czego 3 mają wagę High. Najpoważniejsza z nich to błąd zapisu poza bufor (out-of-bounds write) w WebGPU – CVE-2025-12725, potencjalnie umożliwiający zdalne wykonanie kodu (RCE). Dodatkowo naprawiono błędy „inappropriate implementation” w Views (CVE-2025-12726) i V8 (CVE-2025-12727) oraz dwie usterki średniej wagi w Omnibox (CVE-2025-12728, CVE-2025-12729). Google nie raportuje na ten moment aktywnego wykorzystania tych luk. Oficjalne wersje z łatami to m.in. 142.0.7444.134/.135 dla Windows/Mac/Linux.
Warianty wersji z poprawką: Windows/Mac 142.0.7444.134/.135, Linux 142.0.7444.134; rollout etapowy.
Eksploatacja „in the wild”: brak potwierdzenia.
Ryzyko praktyczne: możliwe RCE (WebGPU, V8), korupcja pamięci/stanów UI (Views), manipulacje paskiem adresu i scenariusze phishingowe (Omnibox).
Dla kogo priorytet: SOC/IT z dużym udziałem przeglądarki w łańcuchu pracy (SaaS, VDI, SSO, EDR w konsoli web), środowiska z WebGPU/AI w przeglądarce oraz parkiem rozszerzeń.
Kontekst / historia / powiązania
Chrome 142 został ogłoszony jako stabilny 28 października 2025 r., a kilka dni później wydano aktualizację stricte bezpieczeństwa dla desktopów ze zredukowanymi szczegółami do czasu, aż większość użytkowników się zaktualizuje (standardowa polityka). Wpis zespołu Chromium podaje listę CVE i numery wersji kanału stabilnego.
Natura błędu:out-of-bounds write w implementacji WebGPU (warstwa umożliwiająca stronom dostęp do GPU). Tego typu usterki to klasyczna korupcja pamięci — zapis poza przeznaczonym obszarem może prowadzić do crasha lub dowolnego wykonania kodu przy odpowiednio spreparowanych shaderach/buforach.
Implikacje praktyczne: złośliwe strony/aplikacje webowe uruchamiające obciążenia GPU (np. wizualizacje 3D/AI) mogą próbować eskalować błąd do RCE w procesie renderera; potencjalnie do piaskownicy, ale łańcuchy „renderer → browser” są znane z wcześniejszych kampanii. (Implikacja na bazie typologii błędu w Chrome i modelu procesów.)
2) Views — CVE-2025-12726 (High)
Opis: „inappropriate implementation” w frameworku Views (warstwa UI Chrome), niebezpieczne obchodzenie się z referencjami obiektów UI → możliwość korupcji pamięci po odwiedzeniu spreparowanej strony lub poprzez rozszerzenie.
3) V8 — CVE-2025-12727 (High)
Opis: błąd „inappropriate implementation” w silniku V8 (JS/WebAssembly). Tego rodzaju defekty (np. type confusion, błędy pamięci) są historycznie atrakcyjne do RCE przez skrypty na stronie.
Opis: „inappropriate implementation” w Omnibox (pasek adresu). Skutki to m.in. nadużycia UI lub błędne odwzorowanie danych, co w praktyce zwiększa ryzyko phishingu/redirectów i ataków „tapjacking”/„clickjacking” w interakcji z paskiem.
Atak RCE z poziomu strony: kombinacje luk WebGPU/V8 mogą umożliwić uruchomienie kodu w procesie renderera i potencjalny sandbox escape przy dodatkowych błędach (łańcuchy exploitów).
Manipulacja interfejsem i socjotechnika: błędy Omnibox podnoszą skuteczność kampanii phishingowych (maskowanie adresów, nieoczekiwane autouzupełnianie, przekierowania).
Ryzyko dla środowisk korporacyjnych: przeglądarka to największa powierzchnia ataku w organizacji; wiele zakładek/aktywnych skryptów zwiększa ekspozycję — stąd presja na szybkie wdrożenia poprawek.
Rekomendacje operacyjne / co zrobić teraz
1) Szybki update użytkownika końcowego
Ręcznie (GUI):Ustawienia → Informacje → Google Chrome (sprawdzenie/instalacja, restart).
Windows (Winget, CMD/PowerShell jako admin):winget upgrade --id Google.Chrome --source winget $v = (Get-Item "C:\Program Files\Google\Chrome\Application\chrome.exe").VersionInfo.ProductVersion Write-Host "Zainstalowana wersja Chrome: $v"
Zasady izolacji: włącz Site Isolation / Strict Origin Isolation dla aplikacji krytycznych.
Zachowania Omnibox: rozważ wyłączenie sugestii i autouzupełniania w stacjach o podwyższonym ryzyku (polityki Omnibox).
Różnice / porównania z innymi przypadkami (jeśli dotyczy)
Brak zero-day w tej fali (w odróżnieniu od poprzednich wydań z 2025 r., gdzie V8 bywał wykorzystywany „in the wild”). Obecna łatka dotyczy nowych CVE w 142 i nie ma wzmianki o aktywnej eksploatacji.
Komponenty: ponownie widzimy mieszankę błędów pamięci (WebGPU/V8) i błędów implementacyjnych UI (Views/Omnibox), co odpowiada trendom w złożonych przeglądarkach (warstwy grafiki + interfejs).
Podsumowanie / kluczowe wnioski
Zaktualizuj Chrome do 142.0.7444.134/.135 jak najszybciej; zdefiniuj deadline i wymuszony relaunch.
Monitoruj zgodność — hosty poniżej 142.0.7444.134/.135 są podatne; skanuj i raportuj odsetek niezałatanych.
Zarządzaj ryzykiem WebGPU/Omnibox (tymczasowe wyłączenia/ograniczenia), szczególnie w stacjach z wysoką ekspozycją web/AI.
Źródła / bibliografia
Chrome Releases – Stable Channel Update for Desktop (142.0.7444.134/.135, 5 CVE, rollout i restrykcje szczegółów). (Chrome Releases)
SecurityWeek – „Chrome 142 Update Patches High-Severity Flaws” (CVE, opis WebGPU, brak „in the wild”). (SecurityWeek)
QNAP opublikował aktualizacje usuwające 7 podatności typu zero-day wykorzystanych na żywo podczas konkursu Pwn2Own Ireland 2025. Błędy dotyczyły zarówno systemów operacyjnych QTS/QuTS hero, jak i aplikacji: HBS 3 (Hybrid Backup Sync), Malware Remover, Hyper Data Protector oraz – dodatkowo tego samego dnia – QuMagie (krytyczny SQLi). Producent potwierdził dostępność poprawek i podał minimalne wersje, do których należy zaktualizować systemy i aplikacje.
Wektory: od zdalnego wykonania kodu i modyfikacji danych po DoS – zależnie od komponentu. Luki potrafią ominąć zabezpieczenia warstwy aplikacyjnej backupu.
Łatki minimalne:
QTS 5.2.7.3297 build 20251024+, QuTS hero h5.2.7.3297+ oraz h5.3.1.3292+ (OS).
HBS 3 26.2.0.938+, Malware Remover 6.6.8.20251023+, Hyper Data Protector 2.2.4.1+.
QuMagie 2.7.0+ (CVE-2025-52425, SQLi).
Geneza: exploity zaprezentowane przez Summoning Team, DEVCORE, Team DDOS i stażystę CyCraft na Pwn2Own Ireland 2025.
Kontekst / historia / powiązania
Pwn2Own to konkurs ZDI (Trend Micro), w którym badacze demonstrują exploity 0-day na realnym sprzęcie. Tegoroczna edycja w Cork (21–23 października 2025) zaowocowała dziesiątkami nowych błędów w NAS-ach, urządzeniach IoT i oprogramowaniu. QNAP po wydarzeniu podkreślił „przyspieszoną obronę” – szybkie publikacje łatek i dystrybucję przez App Center (m.in. poprzez Malware Remover).
Analiza techniczna / szczegóły luki
Zakres i komponenty
QTS / QuTS hero – trzy luki (CVE-2025-62847/-62848/-62849) sklasyfikowane przez QNAP jako Critical. Załatane w QTS 5.2.7.3297 i QuTS hero h5.2.7.3297 / h5.3.1.3292. QNAP przypisuje te zgłoszenia do Pwn2Own 2025 (ack: DEVCORE).
HBS 3 (Hybrid Backup Sync) – dwie luki (CVE-2025-62840, CVE-2025-62842) usunięte w 26.2.0.938. HBS 3 to centralna usługa backupu/sync (RTRR, rsync, FTP, WebDAV, SMB) – kompromitacja ma wpływ także na repozytoria zdalne/chmurowe.
Malware Remover – CVE-2025-11837, łatka w 6.6.8.20251023. Paradoksalnie dotyczy modułu bezpieczeństwa, co podnosi ryzyko eskalacji w środowiskach ufających temu komponentowi.
Hyper Data Protector – CVE-2025-59389, poprawione w 2.2.4.1. Narzędzie realizuje backup maszyn wirtualnych/VMware/Hyper-V, a więc ma szerokie uprawnienia do repozytoriów.
QuMagie (dodatkowo w tym samym pakiecie biuletynów) – CVE-2025-52425 (SQLi) → 2.7.0. QNAP określa możliwość „wykonania nieautoryzowanego kodu lub komend”.
Uwaga: w momencie publikacji części CVE dotyczących QTS/QuTS/HBS 3 pozostają w stanie RESERVED w publicznych bazach (brak pełnych opisów), jednak QNAP i biuletyny prasowe podają konkretne wersje naprawcze – to one są obecnie jedynym wiarygodnym punktem odniesienia dla zarządzania ryzykiem.
Praktyczne konsekwencje / ryzyko
Łańcuchy ataku z backupem w roli „przepustki”: kompromitacja HBS 3 może otworzyć drogę do modyfikowania lub podmieniania danych na repozytoriach off-site (rsync/S3/SMB), w tym do „zatruwania” kopii zapasowych i utraty możliwości odtworzenia.
Uprzywilejowana powierzchnia:Malware Remover i Hyper Data Protector działają z wysokimi uprawnieniami, więc ich podatności mogą skutkować RCE z uprawnieniami systemowymi, a także ruchem bocznym do hipernadzorców/serwerów wirtualizacji.
OS-level: luki w QTS/QuTS hero mogą zostać połączone z błędami aplikacyjnymi dla eskalacji do root i trwałej persystencji (np. ingerencja w mechanizmy aktualizacji, demonów usługowych).
Rekomendacje operacyjne / co zrobić teraz
1) Aktualizacje – minimalne wersje docelowe
QTS: ≥ 5.2.7.3297 build 20251024
QuTS hero: ≥ h5.2.7.3297 lub h5.3.1.3292
HBS 3: ≥ 26.2.0.938
Malware Remover: ≥ 6.6.8.20251023
Hyper Data Protector: ≥ 2.2.4.1
QuMagie: ≥ 2.7.0 Instrukcje QNAP: Panel sterowania → System → Aktualizacja firmware (Live Update) oraz App Center → [nazwa aplikacji] → Update.
2) Szybkie kroki higieniczne (post-patch)
Wymuś rotację haseł wszystkich kont (min. adminów) i wygeneruj nowe API tokens dla aplikacji integrujących się z NAS.
Wyłącz UPnP, myQNAPcloud i przekierowania portów, jeśli nie są niezbędne; wystawiaj dostęp przez VPN/Zero Trust zamiast przez Internet.
QuFirewall: reguły „deny by default”, listy dozwolonych adresów, geoblokady.
Wyłącz loginy admin/admin oraz włącz 2FA dla kont uprzywilejowanych.
3) Walidacja wersji – przykładowe komendy (SSH)
# Sprawdź wersję systemu (QTS/QuTS hero)
getcfg system version -f /etc/config/uLinux.conf
getcfg system "Build Number" -f /etc/config/uLinux.conf
# Sprawdź wersje zainstalowanych aplikacji (App Center)
getcfg "HBS 3 Hybrid Backup Sync" QPKG_Ver -f /etc/config/qpkg.conf
getcfg "Malware Remover" QPKG_Ver -f /etc/config/qpkg.conf
getcfg "Hyper Data Protector" QPKG_Ver -f /etc/config/qpkg.conf
getcfg "QuMagie" QPKG_Ver -f /etc/config/qpkg.conf
4) Hardening usług backupu (HBS 3)
Używaj oddzielnych kont/kluczy dla każdego celu backupu (S3/rsync/SMB); minimalne uprawnienia (RBAC, bucket-policy).
Włącz weryfikację integralności backupów (checksumy, immutable buckets, Object Lock) i testowe odtworzenia (table-top every 30 dni).
Segmentuj ruch HBS 3 w VLAN/VRF; zdalne endpointy dostępne wyłącznie z interfejsu backupowego.
5) Detekcja i triage incydentu (SOC/blue team)
Logi systemowe i aplikacyjne kieruj do SIEM (syslog/TLS). Ścieżki istotne w triage:
Q’center/Qlog Center – zdarzenia Malware Remover i HBS 3 Przykładowe wskaźniki:
Nietypowe wywołania HBS 3 do nowych hostów, nagłe skoki transferu/zmiany harmonogramów.
Restart usług systemowych bez planowanej zmiany; nowe zadania crontab w /etc/config/crontab.
Sigma (przykład – zdalne uruchomienie nieznanego binarium przez www):
title: QNAP Suspicious Web Exec
logsource:
product: linux
service: apache
detection:
sel:
cs-method: POST
cs-uri-stem|contains:
- /cgi-bin/
- /phpMyAdmin/
keywords:
- "wget http"
- "curl http"
- "bash -c"
condition: sel and keywords
level: high
Różnice / porównania z innymi przypadkami
Rok wcześniej QNAP łatał 0-daye z Pwn2Own 2024 (m.in. OS command injection w HBS 3 i SQLi w usłudze SMB). W 2025 r. ponownie trzonem problemu są moduły backupowe i systemy bazowe, ale zakres jest szerszy (7 zero-dayów) i obejmuje nawet Malware Remover. Z punktu widzenia zarządzania ryzykiem to potwierdza, że backup i narzędzia bezpieczeństwa na NAS-ach wymagają takiego samego rygoru testów i segmentacji jak serwery aplikacyjne.
Podsumowanie / kluczowe wnioski
Traktuj NAS jak pełnoprawny serwer – z micro-segmentacją, kontrolą dostępu i monitoringiem.
Aktualizacje do wersji minimalnych (podanych wyżej) to obowiązek – zrób to dla OS i każdej aplikacji.
Backup nie chroni, jeśli jest kompromitowany: izoluj HBS 3, stosuj immutable storage i regularne testy odtworzeniowe.
Ogranicz ekspozycję: brak UPnP, brak publicznych portów; dostęp tylko przez VPN/Zero Trust.
Włącz 2FA, rotuj hasła i klucze, przeglądnij zadania crona oraz logi po aktualizacji.
Źródła / bibliografia
BleepingComputer – „QNAP fixes seven NAS zero-day flaws exploited at Pwn2Own”, 7 listopada 2025 (lista CVE, minimalne wersje aplikacji i OS). (BleepingComputer)
QNAP Security Advisory QSA-25-45 – „Multiple Vulnerabilities in QTS and QuTS hero (PWN2OWN 2025)” (wersje naprawcze OS, status Critical). (QNAP NAS)