
PoC | NextJS Middleware 15.2.2 - 권한 부여 우회
⚠️ NextJS 미들웨어의 심각한 인증 우회
🛠️ @zs1n의 PoC 구현
NextJS는 널리 사용되는 React 기반 웹 프레임워크이며, 12.3.5, 13.5.9, 14.2.25, 15.2.3 이전 버전에 영향을 미치는 인증 취약점이 있습니다. 이 취약점은 x-middleware-subrequest 헤더를 부적절하게 신뢰하는 데서 발생합니다. 이 헤더를 스푸핑하면 공격자는 미들웨어 로직을 우회할 수 있으며, 그 결과 일반적으로 허용되지 않는 인증 및 인가 메커니즘을 우회하여 허용되지 않은 경로에 접근할 수 있습니다.
NextJS는 요청을 라우팅하기 전에 인증 및 인가와 같은 보안 정책을 적용하기 위해 미들웨어를 사용합니다. 프레임워크가 이 헤더를 맹목적으로 신뢰하기 때문에, 공격자는 이 헤더를 스푸핑할 수 있으며, 이로 인해 middleware 헤더가 부적절하게 처리되어 사실상 인증을 우회하게 됩니다. 이로 인해 네트워크상의 모든 사용자가 허용되지 않은 경로를 보거나 접근할 수 있습니다.
x-middleware-subrequest — 취약한 NextJS 헤더
공격자는 x-middleware-subrequest를 스푸핑한 요청을 보내 내부 요청으로 위장할 수 있습니다.
git clone https://github.com/zs1n/CVE-2025-29927
익스플로잇 스크립트 CVE-2025-29927.py를 실행하세요.
python3 CVE-2025-29927.py -u http://128.43.16.13/api/auth