
Scanner xss mais rápido,suporta reflected-xss e dom-xss
NoXss é um scanner de vulnerabilidades de script entre sites (XSS) que suporta XSS refletido e XSS baseado em DOM. É muito rápido e adequado para testar milhões de URLs. Já encontrou algumas vulnerabilidades XSS em programas de Bug Bounty.
├── engine.py
├── logo
├── cookie.py
├── url.txt
├── cookie
│ └── test.com_cookie
├── traffic
│ ├── 49226b2cbc77b71b.traffic #arquivo de tráfego (pickled)
│ └── 49226b2cbc77b71b.reflect #arquivo refletido (pickled)
├── config.py
├── start.py
├── url.txt.filtered #URLs filtradas
├── util.py
├── README.md
├── banner.py
├── requirements.txt
├── result
│ └── 49226b2cbc77b71b-2019_10_29_11_24_44.json #resultado
├── model.py
└── test.py

Linux
Python2.7
Navegador: Phantomjs ou Chrome
apt-get install flex bison phantomjspip install -r requirements.txtyum install flex bison phantomjspip install -r requirements.txtbrew install grep findutils flex phantomjspip install -r requirements.txtSe você quiser escanear usando "--browser=chrome", deve instalar o Chrome manualmente. Você pode usar "--check" para testar a instalação.
python start.py --check
python start.py --url url --save
python start.py --url url --cookie cookie --browser chrome --save
python start.py --url url --cookie cookie --browser chrome-headless --save
python start.py --file ./url.txt --save
python start.py --burp ./test.xml --save
python start.py --file file --filter
--url escanear a partir de URL.
--id reescanear a partir do arquivo *.traffic pelo ID da tarefa.
--file escanear URLs a partir de arquivo de texto (como ./url.txt).
--burp escanear *.xml (codificado em base64, como ./test.xml) do proxy Burpsuite.
--process número de processos.
--coroutine número de corrotinas.
--cookie usar cookie.
--filter filtrar URLs.
--browser usar navegador (chrome, chrome-headless ou phantomjs) para escanear, é bom para XSS baseado em DOM, mas lento.
--save salvar resultados em ./result/id.json.
--clear excluir arquivos de tráfego após o escaneamento.
No Proxy, "Save items" ==> "test.xml"

Então você pode escanear test.xml:
python start.py --burp=./test.xml
Após o escaneamento inicial, haverá taskid.traffic e taskid.reflect em ./traffic/:
python start.py --id taskid --saveNoXss utiliza apenas 8 payloads para escanear. Esses payloads são baseados na posição refletida dos parâmetros. Menos payloads tornam o processo mais rápido que fuzzing.
NoXss é altamente concorrente por usar corrotinas.
Cada vez mais páginas estão usando DOM para renderizar HTML. NoXss pode analisá-las usando Phantomjs (padrão) ou Chrome.
Alguns XSS são difíceis de escanear. NoXss salvará alguns arquivos em traffic/ para análise, incluindo:
Como você pode ver na Captura de tela, o PoC é https://xxx/?proxyAccount=xssjs%22%3B&shareName=duhxams. Isso significa que o payload xssjs%22%3B é usado no parâmetro "proxyAccount":

Então você pode fechar as aspas duplas usando o payload xssjs";alert(1);//. O exploit final é:
https://xxx.com/?proxyAccount=xssjs";alert(1);//&shareName=duhxams