
Questa applicazione dimostra la vulnerabilità x-middleware-subrequest in Next.js 13.4.19, che consente di aggirare la protezione del middleware.
npm install
npm run dev
L'applicazione ha una pagina admin su /admin che dovrebbe essere protetta dal middleware. Tuttavia, può essere acceduta senza autenticazione utilizzando l'header x-middleware-subrequest.
/admin - Verrai reindirizzato a /login/adminPer aggirare l'autenticazione, puoi usare curl o qualsiasi client HTTP per effettuare una richiesta con l'header x-middleware-subrequest:
curl -H "x-middleware-subrequest: middleware" http://localhost:3000/admin
Questa vulnerabilità dimostra come la protezione del middleware possa essere aggirata in Next.js 13.4.19 utilizzando l'header x-middleware-subrequest. In un ambiente di produzione, questo potrebbe consentire accessi non autorizzati a route protette.
Per correggere questa vulnerabilità, aggiorna a una versione più recente di Next.js in cui questo problema è stato risolto.