Site icon Kiber.ba

Next.js: Ugrožena sigurnost keša Next.js, napadači mogu izazvati DoS stanje, čuvajte se obmanjivanja keša.

Otkrivena je kritična sigurnosna ranjivost u popularnom React-baziranom web okviru Next.js, koja omogućava napadačima da iskoriste mehanizme trovanja keš memorije i time izazovu uvjete uskraćivanja usluge (DoS).

Ovu ranjivost, označenu kao CVE-2025-49826, otkrili su istraživači sigurnosti Allam Rachid (zhero) i Allam Yasser (inzo_). Ona pogađa verzije Next.js od 15.1.0 do 15.1.8, što je navelo tim za razvoj da odmah izda sigurnosna ažuriranja.

Ova ranjivost proizilazi iz greške u mehanizmu keširanja odgovora, preciznije ciljajući HTTP 204 odgovore u procesu generiranja statičkih stranica.

Pod određenim okolnostima, ova greška dozvoljava zlonamjernim akterima da “otruju” keš memoriju praznim odgovorima, što rezultira time da legitimni korisnici umjesto očekivanog sadržaja dobiju prazne stranice.

Da bi ova ranjivost bila iskoristiva, moraju biti ispunjena tri ključna uvjeta: korištenje pogođene verzije Next.js (od 15.1.0 do 15.1.8), primjena Incremental Static Regeneration (ISR) sa provjerom ispravnosti keša u produkcijskom načinu rada (next start ili samostalno postavljanje), te implementacija Server-Side Rendering (SSR) s mrežom za dostavu sadržaja (CDN) koja je konfigurirana za keširanje 204 odgovora.

Napad iskorištava utrku uvjeta u mehanizmu dijeljenog objekta odgovora Next.js-a, gdje okvir pogrešno obrađuje i kešira HTTP 204 status kodove.

Kada se uspješno izvede, ova tehnika trovanja keša dovodi do trajnih uvjeta uskraćivanja usluge, jer se keširani prazni odgovor servira svim naknadnim korisnicima koji pokušaju pristupiti pogođenim statičkim stranicama.

Posljedice ove ranjivosti su posebno ozbiljne za aplikacije s velikim prometom koje se oslanjaju na ISR za optimizaciju performansi.

Tim za razvoj Next.js-a je riješio ovu ranjivost kroz opsežne izmjene koda usmjerene na temeljni uzrok mehanizma trovanja keša.

Glavna zakrpa uključivala je uklanjanje problematičnog dijela koda odgovornog za postavljanje pogrešnih 204 odgovora u proces generiranja statičkih stranica.

Dodatno, programeri su eliminisali utrku uvjeta restrukturiranjem arhitekture keširanja odgovora kako više ne bi zavisila od dijeljenih objekata odgovora za popunjavanje keš memorije Next.js-a.

Stručnjaci za sigurnost preporučuju hitnu migraciju na verziju Next.js 15.1.8 ili noviju, koja sadrži potpuno rješenje za CVE-2025-49826.

Organizacije koje koriste pogođene verzije trebale bi dati prioritet ažuriranju svojih zavisnosti i provođenju temeljitog testiranja svojih ISR i SSR implementacija.

Važno je napomenuti da aplikacije hostovane na Vercel platformi ostaju neafektirane zahvaljujući dizajnu infrastrukture platforme koji onemogućava ovaj specifični vektor napada.

TImovi za razvoj bi trebali implementirati sveobuhvatno sigurnosno praćenje svojih Next.js aplikacija, fokusirajući se posebno na anomalije u ponašanju keš memorije i neočekivane obrasce 204 odgovora koji bi mogli ukazivati na pokušaje eksploatacije.

Exit mobile version