- CVE-2025-55182 u Reactu i CVE-2025-66478 u Next.js-u omogućavaju neautentificirano udaljeno izvršavanje koda putem protokola React Server Components Flight.
- Greška proizlazi iz nesigurne deserijalizacije RSC korisnih podataka, ostavljajući zadane konfiguracije Reacta i Next.js izloženim bez ikakvih prilagođenih promjena koda.
- Istraživači sigurnosti izvještavaju o gotovo 100% pouzdanosti iskorištavanja i upozoravaju da su masovni napadi vjerovatni dok se analiziraju zakrpe.
- Hitne nadogradnje na ojačane verzije Reacta i Next.jsa su jedino definitivno ublažavanje, posebno u cloud okruženjima gdje do ~40% može biti ranjivo.
Otkrivanje CVE-2025-55182 u Reactu i njegov dvostruki problem CVE-2025-66478 u Next.js-u je skrenuo pažnju na to koliko krhki mogu biti serverski JavaScript stekovi kada protokoli niskog nivoa krenu po zlu. Umjesto da bude nišna greška, ovo je greška u daljinskom izvršavanju koda maksimalne ozbiljnosti koja pogađa srž React Server komponenti i... Protokol leta mnoge moderne aplikacije tiho zavise od.
Ono što ovaj slučaj čini posebno uznemirujućim jeste to što zadane postavke su izloženeJednostavna Next.js aplikacija generirana pomoću create-next-app, napravljen za produkciju i implementiran bez ikakvih neobičnih opcija, može biti kompromitovan putem neautentificiranog HTTP zahtjeva. Nema fensi pogrešne konfiguracije, nema egzotičnih dodataka - samo standardni paket koji mnogi timovi svakodnevno uvode.
Kako su otkriveni CVE-2025-55182 i CVE-2025-66478
Korijen problema leži u implementacija react-server-a koja pokreće React Server Components (RSC)Ovaj paket podržava Flight protokol, koji se koristi za prenos serijaliziranih podataka komponenti između klijenta i servera. Kada istraživač sigurnosti Lachlan Davidson prijavilo je sumnjivo ponašanje putem Metinog programa za nagrađivanje grešaka krajem novembra, što je izazvalo brzu reakciju React i Meta timova.
Prema javnim obavještenjima, ranjivost je otkrivena u srijedu i Hitne zakrpe su poslane u roku od otprilike četiri danaTo je neuobičajeno brzo rješenje za problem koji pogađa tako veliki ekosistem i naglašava koliko je ozbiljna greška: React-ovi održavatelji su ga ocijenili sa CVSS rezultat 10.0, maksimalno mogući.
Paralelno, Vercel — kompanija koja stoji iza Next.js-a — analizirao je kako je ista osnovna greška uticala na njegov okvir. Budući da Next.js koristi isti RSC Flight protokol na serveru, naslijedio je slabost i dodijeljen mu je vlastiti identifikator, CVE-2025-66478Vercel je izdao upozorenje i objavio zakrpe istog dana kao i React savjetodavno rješenje, s ciljem da se vrijeme za napadače svede na što kraće moguće.
Uprkos brzoj reakciji, Proizvođači sigurnosnih proizvoda i istraživači počeli su upozoravati da će napadači vjerovatno rekonstruirati inženjering ispravki. veoma brzo, kao što se vidi u napadi na lanac snabdijevanja protiv NPM-aNakon što je zakrpani kod javno dostupna, mnogo je lakše zaključiti gdje je bila greška i izgraditi funkcionalne exploite.
Šta tačno nije u redu sa React Flight protokolom?
Na tehničkom nivou, i CVE-2025-55182 i CVE-2025-66478 se svode na nesigurna deserijalizacija podataka koje kontrolira napadač unutar Flight protokola. Komponente React Servera šalju i primaju strukturirane korisne podatke, koje server zatim dekodira i koristi za pokretanje toka izvršavanja.
Ranjiva logika u react-server paket nije uspio strogo validirati strukturu i sadržaj dolaznih RSC korisnih podatakaSlanjem namjerno deformiranog, ali pažljivo izrađenog, Flight korisnog tereta na krajnju tačku React Server Function, napadač može utjecati na ono što server radi kada deserializira te podatke. Umjesto jednostavne rekonstrukcije benignog stanja komponente, put koda može se usmjeriti na izvršavanje. privilegovani JavaScript na serveru.
Budući da greška utiče na način dekodiranja protokola, nije potrebna autentifikacijaUdaljenom napadaču je potrebno samo da bude u mogućnosti slati HTTP zahtjeve bilo kojoj dostupnoj RSC ili serverskoj funkcijskoj krajnjoj tački. Ovo pretvara ranjivost u jednostavan, neautentificirani RCE vektor: pošaljite kreirani zahtjev, pričekajte nesigurnu deserijalizaciju i korisni teret se može izvršiti na pozadini.
Istraživači iz Wiza, koji su nezavisno analizirali problem, opisuju ga kao ranjivost logičke deserijalizacije a ne jednostavnu grešku u parsiranju. U njihovom testiranju, potpuno funkcionalan proof-of-concept exploit je postigao gotovo 100% pouzdanost u pokretanju izvršavanja koda na ranjivim ciljevima.
Zašto su zadane implementacije Reacta i Next.jsa ugrožene
Jedan od najzabrinjavajućih aspekata ovih CVE je to što utiču na konfiguracije odmah po instalacijiZa mnoge sigurnosne probleme, iskorištavanje zahtijeva specifičnu zastavicu funkcije, rijetko korišteni dodatak ili nestandardni način implementacije. To ovdje nije slučaj.
Komponente React Servera i njihov Flight protokol postali su sastavni dijelovi modernih React 19 i Next.js arhitektura. Kao rezultat toga, standardna produkcijska verzija generirana od strane create-next-app može se iskoristiti bez dodatnog koda od strane programera aplikacije. Nema potrebe da napadač pogađa prilagođene rute ili poslovnu logiku; zloupotreba generičkih RSC krajnjih tačaka je dovoljna.
Greška nije ograničena samo na Next.js. Bilo koji okvir ili alat koji objedinjuje ili ponovo implementira RSC Flight protokol na serveru mogu biti ranjivi. Javna upozorenja i sigurnosni izvještaji ističu nekoliko pogođenih ekosistema:
- Next.js, najpoznatiji okvir na koji se odnosi nizvodno
- Vite RSC dodatak (
@vitejs/plugin-rsc) - Dodatak za RSC pakete (
@parcel/rsc) - Pregled RSC-a za React Router
- RedwoodSDK (često se navodi kao
rwsdk) - Waku i drugi lanci alata omogućeni RSC-om
U samom Reactu, greška utiče verzije 19.0, 19.1.0, 19.1.1 i 19.2.0 relevantnih paketa. Održavatelji navode da nadogradnja na verziju 19.0.1, 19.1.2 ili 19.2.1 pruža ojačano ponašanje i uklanja ranjivost. Next.js ima odgovarajuća ispravljena izdanja koja integrišu zakrpljenu logiku React servera.
Neki pružatelji infrastrukture su pojasnili granice utjecaja. Na primjer, Google je izjavio da Javne slike operativnog sistema za Compute Engine nisu ranjive po defaultu, budući da ne isporučuju gotove React ili Next.js; rizik nastaje kada korisnici implementiraju pogođene verzije tih okvira preko osnovnih slika.
Koliki je radijus eksplozije preko oblaka?
Razmjere problema dolaze do izražaja kada se pogleda koliko se široko React i Next.js koriste u produkciji. React je osnova korisničkih interfejsa za glavne platforme kao što su Facebook, Instagram, Netflix, Airbnb, Shopify, Walmart, Asana i mnogi drugiOsim toga, bezbroj manjih aplikacija i internih nadzornih ploča izgrađeno je s istim komponentama i okvirima.
Timovi za obavještajne podatke o prijetnjama u Wizu analizirali su telemetriju iz cloud okruženja i otkrili da Oko 39-40% implementacija u oblaku sadrži ranjive instance Reacta ili Next.js-a. Samo za Next.js, okvir se pojavljuje otprilike u 69% ispitanih okruženja, i otprilike u 61% tih javno dostupnih aplikacija radi preko njegaKada se ti procenti saberu, to znači da otprilike 44% svih posmatranih cloud okruženja hostuje javno izložene Next.js instance, bez obzira na tačnu verziju okvira.
To preklapanje između popularnosti i ranjivosti je ono što alarmira branitelje. Kada široko rasprostranjeni stek ima maksimalno ozbiljnu, neautentificiranu RCE grešku s pouzdanim putem iskorištavanja, Oportunistički i ciljani napadi gotovo su zagarantovaniČak i organizacije koje brzo instaliraju zakrpe mogu se suočiti s kratkim vremenskim okvirom u kojem izložene krajnje tačke mogu biti ispitane i kompromitovane.
U vrijeme početnih otkrića, nije javno prijavljena nikakva potvrđena eksploatacija u divljiniMeđutim, više istraživača sigurnosti, uključujući stručnjake iz Rapid7 i watchTowr, naglasilo je da je realno pretpostaviti da akteri prijetnji već vrše reverzni inženjering zakrpa, skenirajući nezakrpljene servise i gradeći automatizirane lance napada.
Šta istraživači i dobavljači kažu o riziku od eksploatacije
Izjave sigurnosne zajednice oslikavaju konzistentnu sliku: ovo nije teorijski problem, a prepreka za ulazak napadača je niska. Benjamin Harris, izvršni direktor watchTowra, opisao je nedostatak kao veliki rizik za korisnike jednog od najrasprostranjenijih web frameworka na svijetu i naglasio da eksploatacija zahtijeva „malo preduslova“.
Istraživači u Wizu ponovili su tu procjenu nakon testiranja i ranjivih i zakrpljenih verzija. Njihovi interni eksperimenti pokazali su da su izrađeni korisni sadržaji korišteni za iskorištavanje nesigurne deserijalizacije postigli stopa uspjeha od gotovo 100% u pokretanju potpunog udaljenog izvršavanja koda na pogođenim serverima. Također su napomenuli da je napad potpuno udaljeno i neautentificirano, u potpunosti vođen posebno konstruiranim HTTP zahtjevima.
Iz perspektive Rapid7-a, očekivanje je da Tehnički opisi i probni koncepti će se pojaviti nakon što dovoljan broj ljudi analizira zakrpe.To će, zauzvrat, vjerovatno podstaći šire pokušaje skeniranja i masovne eksploatacije, posebno protiv cloud okruženja s mnogim aplikacijama okrenutim ka internetu.
Čak i izvan zajednice dobavljača, Industrijski mediji su ove CVE-ove predstavili kao faktore koji ugrožavaju značajan dio interneta.Izvještavanje je istaklo ne samo surovu ozbiljnost problema, već i broj velikih potrošačkih web stranica, SaaS platformi i API backendova koji se oslanjaju na React i Next.js za svoje frontendove i renderiranje na strani servera.
Koraci za ublažavanje: šta korisnici Reacta i Next.jsa trebaju učiniti sada
Za timove koji koriste React ili Next.js u produkciji, smjernice održavatelja i istraživača svode se na jednostavnu stvar: Nadogradnja na zakrpljene verzije je jedino definitivno rješenjeNe postoje konfiguracijski prekidači ili generička WAF pravila koja mogu u potpunosti riješiti osnovni nesigurni problem deserijalizacije u Flight protokolu.
React tim preporučuje da svi na pogođenim granama prelazi na ojačane verzije 19.0.1, 19.1.2 ili 19.2.1, osiguravajući da react-server Paket je uključen u ažuriranje. Za Next.js, Vercel je objavio ispravljene verzije koje integrišu zakrpljeno RSC rukovanjeAdministratori bi trebali konsultovati službeni savjet o Next.js-u kako bi odredili minimalnu sigurnu verziju za odabranu liniju izdanja.
Organizacije koje se oslanjaju na druge Okviri omogućeni RSC-om — kao što su Redwood, Waku, RSC pregled React Router-a ili Vite i Parcel RSC dodaci — preporučuje se da provjerite odgovarajuće bilješke o izdanju i sigurnosne kanaleU mnogim slučajevima, ovi projekti jednostavno omotavaju ili grupišu React-ove serverske komponente, tako da je potrebno ažuriranje samog Reacta, a zatim preuzimanje najnovije revizije frameworka.
Pored jednostavnog ažuriranja, koriste se alati usmjereni na oblak za potraga za ranjivim instancama u velikim razmjerimaNa primjer, Wiz korisnici mogu provjeriti upite i savjete u Wiz Threat Centru kako bi pronašli gdje su pogođene verzije Reacta ili Next.jsa raspoređene u njihovim okruženjima. Druge organizacije koriste inventare imovine, SBOM podatke i skeniranje kontejnera kako bi postigle sličnu vidljivost.
Ako postoji bilo kakva indikacija da su sistemi možda već bili meta ili kompromitovani putem ovih CVE napada, preporučuje se podrška za odgovor na incidenteNeki dobavljači posebno pozivaju kupce koji sumnjaju na zloupotrebu CVE-2025-55182 ili CVE-2025-66478 da kontaktiraju njihove IR timove za pomoć pri trijaži, obuzdavanju i forenzici.
Šta ovo otkriva o JavaScript web ekosistemu
Iako zakrpe za React i Next.js zatvaraju neposrednu prazninu, Incident pokreće šira pitanja o tome kako serverski JavaScript okviri obrađuju nepouzdane podatke.Protokoli poput Flighta nalaze se duboko u steku, skriveni iza apstrakcija koje programeri rijetko direktno provjeravaju, što znači da nedostaci mogu imati širok spektar posljedica prije nego što se uoče.
Činjenica da ranjivo ponašanje isporučeno u zadanim postavkama, intenzivno promovirane konfiguracije također naglašava napetost između iskustva programera i dizajna koji je siguran po defaultu. Karakteristike koje olakšavaju izgradnju modernih aplikacija - poput serverskih komponenti i besprijekorne serijalizacije između klijenta i servera - mogu neprimjetno uvesti složene površine za napad.
Za sigurnosne timove, ovaj slučaj je još jedan podsjetnik da Ranjivosti na nivou okvira mogu se trenutno pretvoriti u izloženost cijeloj organizacijiJedna greška u popularnoj komponenti otvorenog koda može se pojaviti u srcu desetina odvojenih aplikacija, mikroservisa i internih alata, posebno kada se kontejneri i predlošci ponovo koriste.
S pozitivne strane, odgovor održavatelja Reacta, Mete i Vercela, pokazuje da Koordinirano otkrivanje i brz razvoj zakrpa mogući su čak i u velikim ekosistemimaJasni savjeti, verzije ispravki i koordinacija s dobavljačima sigurnosnih rješenja pomogli su zaštitnicima da daju prioritet ovom problemu usred mnogih konkurentskih ranjivosti.
Gledajući unaprijed, mnogi posmatrači očekuju nastavak praćenja Logika serijalizacije, deserijalizacije i parsiranja protokola u web frameworkimaAko CVE-2025-55182 i CVE-2025-66478 podstaknu sistematičnije testiranje i strožu validaciju komponenti poput Flighta, neke dugoročne sigurnosne koristi mogle bi proizaći iz inače ozbiljnog incidenta.
Za sada, timovi koji koriste React ili Next.js stekove su u utrci između... implementacija zakrpa i automatizacija napadačaS obzirom na to da RCE maksimalnog stepena ozbiljnosti utiče na zadane konfiguracije, opsežno prisustvo u oblaku i tehnike iskorištavanja visoke pouzdanosti koje su već demonstrirane u istraživanjima, održavanje sigurnosti ovih okruženja svodi se na to koliko brzo organizacije mogu identificirati gdje su izložene i premjestiti sve na ojačana izdanja.