Krytyczna luka „React2Shell” (CVE-2025-55182) użyta w atakach ransomware — co musisz zrobić teraz

securitybeztabu.pl 1 dzień temu

Wprowadzenie do problemu / definicja luki

Rejestrowana jako CVE-2025-55182 i znana pod nazwą React2Shell, to krytyczna podatność RCE bez uwierzytelnienia w React Server Components (RSC). Umożliwia ona zdalne wykonanie arbitralnego kodu jednym żądaniem HTTP na serwerach korzystających z RSC (m.in. w aplikacjach Next.js), z maksymalnym wynikiem CVSS 10.0. W ciągu ostatnich dni luka była aktywnie wykorzystywana w łańcuchach ataków — w tym ransomware, gdzie po wejściu do sieci szyfrowanie następowało w mniej niż minutę.

W skrócie

  • Co to jest? Pre-auth RCE w protokole „Flight” wykorzystywanym przez React Server Components.
  • Kogo dotyczy? Serwerowych implementacji React/RSC i frameworków opartych o RSC (np. Next.js).
  • Co się dzieje? Potwierdzono realne wykorzystanie, w tym wejścia do sieci i szybkie wdrożenia ransomware.
  • Jak poważne? CVSS 10.0; CISA dodała lukę do katalogu KEV (Known Exploited Vulnerabilities).
  • Co robić? Natychmiast aktualizować do wersji z poprawką zgodnie z zaleceniami React/Next.js oraz odciąć ekspozycję RSC na internet; sprawdzić oznaki kompromitacji.

Kontekst / historia / powiązania

Luka została ujawniona i załatana przez zespół React 3 grudnia 2025 r., a w ślad za nią pojawiły się komunikaty Next.js i narzędzia ułatwiające aktualizację. CISA oficjalnie oznaczyła CVE jako wykorzystywaną w atakach, co zwykle wiąże się z wymogami szybkiego łatania w sektorze publicznym USA. Równolegle duzi dostawcy (Microsoft, Google Threat Intelligence) publikują obserwacje dotyczące masowego skanowania i różnorodnych łańcuchów nadużycia.

Analiza techniczna / szczegóły luki

Sednem problemu jest akceptowanie i deserializacja złośliwych struktur w ścieżce przetwarzania RSC przed adekwatną walidacją. Błędna walidacja pozwala atakującemu wstrzyknąć dane, które React uznaje za poprawne, co w praktyce prowadzi do prototype pollution i ostatecznie do zdalnego wykonania kodu w kontekście procesu serwera. W praktyce wystarcza pojedyncze żądanie HTTP z odpowiednio zbudowanym „ładunkiem”. W niektórych opisanych scenariuszach samo posiadanie podatnych pakietów na serwerze bywało warunkiem wystarczającym do nadużycia.

W ramach sprzątania po głównej luce odnotowano także kolejne problemy w tym samym obszarze (m.in. ujawnienie kodu źródłowego i DoS), a jedna z łatek wymagała poprawienia — jednak to CVE-2025-55182 pozostaje najgroźniejsza z punktu widzenia RCE.

Praktyczne konsekwencje / ryzyko

  • Initial access: atakujący może przejąć serwer aplikacji webowej z uprawnieniami procesu serwera, co często otwiera drogę do ruchu bocznego i eskalacji.
  • Ransomware: w potwierdzonych incydentach gang ransomware wykorzystywał React2Shell do wejścia i uruchamiał szyfrowanie w <60 s od uzyskania dostępu.
  • Różnorodność TTPs: obserwowano zarówno motywacje finansowe (np. cryptomining), jak i działania grup APT; skala jest globalna.

Rekomendacje operacyjne / co zrobić teraz

  1. Natychmiastowa aktualizacja
    • Zastosuj wersje z poprawką zalecane w React oraz Next.js (postępuj według oficjalnych instrukcji/poradników bezpieczeństwa). jeżeli używasz Next.js App Router, skorzystaj z najnowszych wydań bezpieczeństwa.
  2. Zastosuj wytyczne CISA (KEV)
    • Traktuj systemy jako potencjalnie naruszone, jeżeli były wystawione i podatne; sprawdź oznaki kompromitacji po wdrożeniu poprawek.
  3. Tymczasowa redukcja powierzchni ataku
    • Ogranicz lub zdejmij z Internetu endpointy RSC, włącz WAF/filtry na warstwie aplikacji, monitoruj anomalie w logach (niestandardowe nagłówki/ładunki RSC).
  4. Threat hunting / DFIR
    • Szukaj nietypowych procesów potomnych Node/deno, skryptów dropperów, narzędzi do szyfrowania i znanych wskaźników aktywności (np. masowe wywołania endpointów RSC, nietypowe żądania tuż przed szyfrowaniem). W razie wątpliwości wykonaj przegląd serwera i rotację sekretów.
  5. Zarządzanie zależnościami
    • Upewnij się, iż pipeline’y CI/CD wymuszają wersje z poprawkami; rozważ blokowanie wdrożeń podatnych buildów, tak jak robi to część dostawców usług hostingowych.

Różnice / porównania z innymi przypadkami

W odróżnieniu od typowych błędów SSRF/XSS w aplikacjach JS, React2Shell uderza w warstwę protokołu RSC i wykonanie serwerowe — stąd jednostopniowe RCE. Po ujawnieniu głównej luki gwałtownie „wysypały się” kolejne problemy w tym samym komponencie (DoS, ujawnienia), co jest klasycznym efektem wzmożonego audytu po głośnym CVE.

Podsumowanie / najważniejsze wnioski

  • React2Shell to pre-auth RCE o CVSS 10.0 w RSC; jest aktywnie wykorzystywana, również przez grupy wdrażające ransomware.
  • Czas reakcji ma krytyczne znaczenie: aktualizacja, odcięcie ekspozycji i hunting pod kątem kompromitacji powinny być wykonane natychmiast.
  • Traktuj serwery RSC/Next.js jako wysokiego ryzyka, dopóki nie wymusisz wersji z poprawkami w całym łańcuchu build–deploy.

Źródła / bibliografia

  • BleepingComputer: Critical React2Shell flaw exploited in ransomware attacks (17 grudnia 2025). (BleepingComputer)
  • React: Critical Security Vulnerability in React Server Components (3 grudnia 2025 — aktualizowane). (React)
  • Microsoft Security: Defending against CVE-2025-55182 (React2Shell) (15 grudnia 2025). (Microsoft)
  • CISA: CISA Adds One Known Exploited Vulnerability to Catalog / KEV (9 grudnia 2025, aktualizacja). (CISA)
  • Google Threat Intelligence: Multiple threat actors exploit React2Shell (ok. 6 grudnia 2025). (Google Cloud)
Idź do oryginalnego materiału