wapiti падает мой проект ASP.NET. Зачем? Как мне это исправить?
Вот один скан Wapiti. Я замечаю, что когда у меня были загружены изображения (пользователи могут загружать), я получаю сбой раньше Launching module crlf
, Так что, просто используя свежий экземпляр моего сайта, я запустил это и получил результат ниже.
Мои вопросы: 1. Как я могу исправить сбои 2. Как я могу узнать, что является причиной сбоя. Я использовал -v 2, чтобы выяснить URL-адрес и зарегистрировать их в моем приложении. В обоих случаях я не вижу никаких проблем, и проект выходит за пределы моего кода 3. Как я могу решить предупреждение Unicode ниже?
Wapiti-2.2.1 (wapiti.sourceforge.net)
..............................
Notice
========
This scan has been saved in the file C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src/s
cans/localhost:17357.xml
You can use it to perform attacks without scanning again the web site with the "
-k" parameter
[*] Loading modules :
mod_crlf, mod_exec, mod_file, mod_sql, mod_xss, mod_backup, mod_htaccess
, mod_blindsql, mod_permanentxss, mod_nikto
[+] Launching module crlf
[+] Launching module exec
[+] Launching module file
[+] Launching module sql
C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\attack\mod_sql.py:185: UnicodeWarning:
Unicode equal comparison failed to convert both arguments to Unicode - interpre
ting them as being unequal
if (page, tmp) not in self.attackedPOST:
[+] Launching module xss
Traceback (most recent call last):
File "wapiti.py", line 449, in <module>
wap.attack()
File "wapiti.py", line 266, in attack
x.attack(self.urls, self.forms)
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\attack\attack.py", line 121, i
n attack
self.attackGET(page, dictio, headers)
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\attack\mod_xss.py", line 71, i
n attackGET
self.findXSS(page, {}, "", code, "", payloads, headers["link_encoding"])
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\attack\mod_xss.py", line 306,
in findXSS
dat = self.HTTP.send(url).getPage()
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\net\HTTP.py", line 94, in send
info, data = self.h.request(target, headers = _headers)
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\net\httplib2\__init__.py", lin
e 1084, in request
(response, content) = self._request(conn, authority, uri, request_uri, metho
d, body, headers, redirections, cachekey)
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\net\httplib2\__init__.py", lin
e 888, in _request
(response, content) = self._conn_request(conn, request_uri, method, body, he
aders)
File "C:\unzipped\wapiti-2.2.1\wapiti-2.2.1\src\net\httplib2\__init__.py", lin
e 853, in _conn_request
response = conn.getresponse()
File "C:\dev\bin\Python26\lib\httplib.py", line 974, in getresponse
response.begin()
File "C:\dev\bin\Python26\lib\httplib.py", line 391, in begin
version, status, reason = self._read_status()
File "C:\dev\bin\Python26\lib\httplib.py", line 349, in _read_status
line = self.fp.readline()
File "C:\dev\bin\Python26\lib\socket.py", line 397, in readline
data = recv(1)
socket.error: [Errno 10054] An existing connection was forcibly closed by the re
mote host
1 ответ
Wapiti может привести к сбою приложений, потому что он использует много вашего приложения. Стек Wapiti отслеживается при выполнении теста XSS, и я не думаю, что тест xss может привести к сбою приложения. Однако, отправив много запросов 1 типа, это может вызвать состояние DoS. Вам нужно отследить последний запрос, который сделал Вапити. У Wapiti есть подробный режим, я думаю, это -v, и он будет распечатывать каждый запрос, который делает. Как только у вас есть файл, который вылетает, вы должны просмотреть его вручную.
Модуль атаки слепого sql-инъекции Wapiti использует функцию mysql benchmark(), которая БУДЕТ ДЕЛАТЬ ваш сервер mysql, я рекомендую отключить его, если у вас возникли проблемы со сканированием всего сайта.