Poveikis
Trūkstamos saugos antraštės gali būti panaudotos spustelėjimų užgrobimui, kelių svetainių scenarijams (XSS) arba informacijos apie serverio aplinką [S2] rinkimui. Kai antraštės, pvz., Content-Security-Policy (CSP) arba X-Frame-Options, nenuosekliai taikomos įvairiuose maršrutuose, užpuolikai gali nukreipti konkrečius neapsaugotus kelius, kad apeitų visos svetainės saugos valdiklius ZXCVFIXZVIBETOKEN3.
Pagrindinė priežastis
Next.js leidžia kūrėjams konfigūruoti atsakymų antraštes next.config.js naudojant headers ypatybę [S2]. Ši konfigūracija naudoja kelių atitikimą, kuris palaiko pakaitos simbolius ir reguliariąsias išraiškas [S2]. Saugumo spragos paprastai kyla dėl:
- Nepilnas kelio aprėptis: pakaitos simbolių šablonai (pvz.,
/path*) gali neaprėpti visų numatytų antrinių maršrutų, todėl įdėtieji puslapiai lieka be saugos antraščių [S2]. - Informacijos atskleidimas: pagal numatytuosius nustatymus Next.js gali apimti
X-Powered-Byantraštę, kuri atskleidžia sistemos versiją, nebent ji būtų aiškiai išjungta perpoweredByHeaderkonfigūraciją ZXCVFIXZVICVOKEN2. - CORS netinkama konfigūracija: netinkamai apibrėžtos
Access-Control-Allow-Originantraštėsheadersmasyve gali leisti neteisėtai kryžminės kilmės prieigą prie neskelbtinų duomenų ZXCVFIXZVIBETOKEN2.
Betono pataisymai
– Audito kelio šablonai: įsitikinkite, kad visi source šablonai next.config.js naudokite atitinkamus pakaitos simbolius (pvz., /:path*), kad prireikus antraštės būtų taikomos visame pasaulyje.
- Išjungti pirštų atspaudus: nustatykite
poweredByHeader: falselaukelyjenext.config.js, kadX-Powered-Byantraštė nebūtų siunčiama [S2]. - Apriboti CORS: nustatykite
Access-Control-Allow-Originkonkretiems patikimiems domenams, o ne pakaitos simboliamsheaderskonfigūracijoje [S2].
Kaip FixVibe tai tikrina
FixVibe galėtų atlikti aktyvųjį zondą, tikrindamas programą ir palygindamas įvairių maršrutų saugos antraštes. Analizuodamas X-Powered-By antraštę ir Content-Security-Policy nuoseklumą skirtinguose kelio gyliuose, FixVibe gali nustatyti next.config.js konfigūracijos spragas.
