Vanredna Next.js zakrpa zatvara dve kritične RCE ranjivosti

Vercel je 14. oktobra objavio vanredno bezbednosno ažuriranje za Next.js koje otklanja dve kritične ranjivosti za udaljeno izvršavanje koda, obe sa ocenom CVSS 9,5, kao i propust visokog rizika za uskraćivanje usluge. Popravljene verzije su Next.js 16.4.1 i 15.5.28, aktuelna Active i Maintenance LTS izdanja.
Jedna RCE ranjivost vezana je za React Server Components, a druga za biblioteku librsvg, do koje Next.js dolazi preko paketa sharp pri obradi SVG slika. Treći propust omogućava da posebno oblikovani zahtevi zauzmu kompletan CPU jednog serverskog procesa kada aplikacija koristi Server Actions.
Koje implementacije su izložene
Propust u React Server Components obuhvata pakete react-server-dom-webpack, react-server-dom-parcel i react-server-dom-turbopack u verzijama od 19.0.0 do 19.3.0. U Next.js aplikaciji okidač je funkcija use cache koja vraća više od jednog typed array objekta, pa se neposredna izloženost odnosi na aplikacije iz grane 16 sa uključenim Cache Components.
Vercel ipak preporučuje nadogradnju svim korisnicima verzije 16. Ovaj propust nema privremeno rešenje: samo prelazak na 16.4.1 uklanja rizik. Ranjivost za uskraćivanje usluge pogađa App Router aplikacije koje imaju makar jednu Server Action; Pages Router aplikacije i aplikacije bez Server Actions nisu obuhvaćene.
SVG obrada zahteva posebnu proveru
Ranjivost CVE-2026-96889 nalazi se u librsvg-u i može dovesti do izvršavanja koda kada aplikacija na Linuxu zasnovanom na glibc-u prosleđuje SVG pod kontrolom napadača paketu sharp. Next.js podrazumevano ne optimizuje SVG datoteke, ali se taj tok aktivira podešavanjem dangerouslyAllowSVG. Ista biblioteka može učestvovati i u generisanju slika za društvene mreže kroz next/og na Node.js izvršnom okruženju.
Za verziju 16, Next.js 16.4.1 zahteva sharp 0.35.5, koji uključuje zakrpljeni librsvg 2.63.2. Kod grane 15, verzija 15.5.28 i dalje prihvata stariji sharp 0.34.x, pa nadogradnja preko postojeće instalacije može ostaviti ranjivu zavisnost. Stanje se proverava komandom npm ls sharp; ako je verzija starija, potrebno je preći na sharp 0.35.5 ili noviji.
Redosled za operativne timove
- Instalirati Next.js 16.4.1 za granu 16 ili 15.5.28 za granu 15.
- Proveriti verziju paketa sharp, naročito u projektima na Next.js 15.
- Ponovo izgraditi aplikaciju i objaviti novu verziju u produkciji.
- Proveriti upotrebu Cache Components, Server Actions, dangerouslyAllowSVG i next/og.
Ako neposredna nadogradnja Next.js nije moguća, za SVG propust postoji privremena mera: sharp 0.35.5 ili noviji, odnosno blokiranje SVG učitavanja kroz sharp.block({ operation: ["VipsForeignLoadSvg"] }). Za use cache i Server Actions nema zamene za nadogradnju. Dodatno, saveti za ova dva propusta 15. oktobra nisu imali CVE oznake niti su se pojavljivali u npm advisory feed-u, zbog čega automatizovani skeneri ne moraju dati upozorenje. Poslovni prioritet je zato proverena nadogradnja, obnova artefakata i potvrda stvarno instalirane verzije sharp-a, a ne oslanjanje isključivo na izveštaj skenera.

