25 березня 2025 року стало відомо про вразливість у Next.js, яка дозволяла обходити виконання Middleware через маніпуляцію заголовком x-middleware-subrequest. Проблема стосувалася самостійно розгорнутих додатків у режимі «standalone», тоді як інфраструктура Vercel виявилася невразливою через децентралізовану архітектуру маршрутизації.
Вразливість, розібрана Vercel 25 березня 2025 року, була пов'язана з некоректною обробкою заголовка x-middleware-subrequest. Проблема стосувалася лише самостійних розгортань у режимах next start та standalone. Інфраструктура Vercel залишилася захищеною завдяки використанню окремої системи маршрутизації, проте для власних серверів вимагалося оновлення та перевірка конфігурацій.
Рекомендації:
- Оновіть Next.js до версії, у якій виправлено обхід Middleware.
- Перевірте конфігурації Middleware у ваших проєктах, щоб переконатися, що логіка перевірки доступу не покладається виключно на заголовки, які можуть бути підроблені.
- Проведіть ревізію налаштувань безпеки для всіх самостійних розгортань, особливо тих, що працюють у режимі
standalone.
Захист API та конфігурацій у самостійних розгортаннях Next.js
Для компаній, що використовують Next.js у самостійних розгортаннях, ця вразливість створює ризик обходу механізмів контролю доступу. Це може призвести до несанкціонованого доступу до захищених API або конфіденційних сторінок, що ставить під загрозу цілісність даних. Важливо переконатися, що архітектура безпеки вашого додатку не залежить виключно від заголовків, які можуть бути підроблені.
Практичний крок: Оновіть Next.js до безпечної версії та перевірте логіку Middleware. Замовте в Softline архітектурний огляд вашого рішення для самостійного розгортання, щоб переконатися в коректності налаштувань безпеки та захищеності API-ендпоінтів.
Використані джерела
- vercel.com (vercel.com)