
This is a proof-of-concept demonstrating CVE-2020-8158, a critical prototype pollution vulnerability in TypeORM versions < 0.2.25.
Esta é uma prova de conceito demonstrando a CVE-2020-8158, uma vulnerabilidade crítica de poluição de protótipo no TypeORM versões < 0.2.25.
Atacantes podem:
A vulnerabilidade existe no tratamento da desserialização de objetos pelo TypeORM ao processar resultados de consultas ao banco de dados. A biblioteca mescla incorretamente dados controlados pelo usuário em objetos sem sanitizar chaves de poluição de protótipo como __proto__, constructor e prototype.
O problema está no processo de hidratação/desserialização de entidades, onde o TypeORM atribui recursivamente propriedades de resultados brutos de consultas a objetos de entidade sem validação adequada.
vulnerable-app.ts - Aplicação TypeORM vulnerável (versão < 0.2.25)exploit.ts - Prova de conceito do exploitpatched-app.ts - Versão corrigida (versão >= 0.2.25)package.json - DependênciasConsulte SETUP.md para instruções detalhadas de configuração e exploração.