JSPanda

JSpanda é um scanner de vulnerabilidades de poluição de protótipo no lado do cliente. Possui dois recursos principais: escanear vulnerabilidades nas URLs fornecidas e analisar o código-fonte das bibliotecas JavaScript.
No entanto, o JSpanda não consegue detectar vulnerabilidades avançadas de poluição de protótipo.
Como o JSPanda funciona?
- Utiliza múltiplos payloads para vulnerabilidade de poluição de protótipo.
- Coleta todos os links nos alvos para escaneamento e adiciona payloads às URLs obtidas pelo JSpanda, navegando para cada URL com o Chromedriver headless.
- Escaneia todas as palavras no código-fonte de bibliotecas JavaScript potencialmente vulneráveis e cria um PoC JS simples ao encontrar um gadget de script, ajudando você a analisar o código manualmente.
Requisitos
- Baixe a versão mais recente do Google Chrome e do Chromedriver
- Selenium
Uso
Escaneamento: python3.7 jspanda.py
- Adicione URLs ao arquivo url.txt, por exemplo: example.com
Análise Básica de Código Fonte : python3.7 analyze.py
- Adicione o código-fonte de uma biblioteca JavaScript ao analyze.js
- Gere código PoC usando o analyze.py
- Execute o código PoC no console do Chrome. Ele polui todas as palavras coletadas do código-fonte e as exibe na tela. Isso pode gerar resultados falso-positivos. Essas saídas fornecem informações adicionais aos pesquisadores, não automatizam tudo.
Demonstração

Análise de código fonte - Captura de tela

Materiais de Apoio :
https://twitter.com/har1sec/status/1314469278322655233
https://github.com/BlackFan/client-side-prototype-pollution
https://github.com/ThePacketBender/notes/blob/01c0b834f6e3ee4d934b087b2d92c9e484dc2a50/web/prototype_pollution.txt
https://habr.com/ru/company/huawei/blog/547178/
https://infosecwriteups.com/javascript-prototype-pollution-practice-of-finding-and-exploitation-f97284333b2
https://github.com/securitum/research/tree/master/r2020_prototype-pollution
Aprenda Poluição de Protótipo em Série - Parte 2
dwisiswant0/ppfuzz
GitHub - raverrr/plution: Scanner de poluição de protótipo usando headless chrome
Vulnerabilidades de Envenenamento de Protótipo JavaScript em Ambiente Real
O Guia Completo para Vulnerabilidades de Poluição de Protótipo