
Более быстрый XSS сканер, поддерживает reflected-xss и dom-xss
NoXss — это сканер уязвимостей межсайтового скриптинга, поддерживающий отражённый XSS и DOM-основанный XSS. Он очень быстр и подходит для тестирования миллионов URL-адресов. С его помощью были найдены некоторые XSS-уязвимости в программе Bug Bounty.
├── engine.py
├── logo
├── cookie.py
├── url.txt
├── cookie
│ └── test.com_cookie
├── traffic
│ ├── 49226b2cbc77b71b.traffic #traffic file(pickled)
│ └── 49226b2cbc77b71b.reflect #reflected file(pickled)
├── config.py
├── start.py
├── url.txt.filtered #filtered urls
├── util.py
├── README.md
├── banner.py
├── requirements.txt
├── result
│ └── 49226b2cbc77b71b-2019_10_29_11_24_44.json #result
├── model.py
└── test.py

Linux
Python2.7
Браузер: Phantomjs или 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.txtЕсли вы хотите сканировать с использованием "--browser=chrome", вы должны установить Chrome вручную. Вы можете использовать "--check" для проверки установки.
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 сканирование по URL.
--id повторное сканирование из файла *.traffic по ID задачи.
--file сканирование URL из текстового файла (например, ./url.txt).
--burp сканирование *.xml (base64-кодированный, например ./test.xml) из прокси Burpsuite.
--process количество процессов.
--coroutine количество корутин.
--cookie использовать cookie.
--filter фильтровать URL.
--browser использовать браузер (chrome, chrome-headless или phantomjs) для сканирования, хорошо подходит для DOM-основанного XSS, но медленно.
--save сохранять результаты в ./result/id.json.
--clear удалять файлы трафика после сканирования.
В прокси, «Save items» ==> «test.xml»

Затем вы можете сканировать test.xml:
python start.py --burp=./test.xml
После первого сканирования в ./traffic/ появятся taskid.traffic и taskid.reflect:
python start.py --id taskid --saveNoXss использует только 8 полезных нагрузок для сканирования. Эти нагрузки основаны на позиции отражения параметра. Меньшее количество нагрузок делает сканирование быстрее фаззинга.
NoXss обладает высокой степенью параллелизма благодаря использованию корутин.
Всё больше страниц используют DOM для рендеринга HTML. NoXss может анализировать их с помощью Phantomjs (по умолчанию) или Chrome.
Некоторые XSS-уязвимости трудно сканировать. NoXss сохраняет некоторые файлы в traffic/ для анализа, включая:
Как видно на скриншоте, PoC: https://xxx/?proxyAccount=xssjs%22%3B&shareName=duhxams. Это означает использование полезной нагрузки xssjs%22%3B в параметре «proxyAccount»:

Затем вы можете завершить двойные кавычки с помощью полезной нагрузки xssjs";alert(1);//. Финальный эксплойт:
https://xxx.com/?proxyAccount=xssjs";alert(1);//&shareName=duhxams