Wapiti stürzt mein ASP.NET-Projekt. Warum? Wie kann ich das Problem beheben?
Frage
Heres ein Scan von Wapiti. Ich merke, wenn ich Bilder hochgeladen hatte (Benutzer können Upload) i erhalten einen Absturz vor Launching module crlf
. Also nur eine neue Instanz von meiner Seite mit lief ich dies und erhielt das Ergebnis unten.
Meine Fragen sind 1. Wie behebe ich die Abstürze 2. Wie kann ich herausfinden, was den Absturz verursacht. Früher habe ich -v 2, um die URL herauszufinden, und melden sie in meiner app. In beiden Fällen nicht, dass ich irgendwelche Probleme sehen und das Projekt stürzt außerhalb meines Codes 3. Wie so ich die Unicode-Warnung unten lösen?
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
Lösung
Wapiti kann Anwendungen zum Absturz bringen, weil es eine Menge Ihrer Anwendung verwendet. Wapiti Stapel zurückgeführt, wenn einen XSS-Test zu tun, und ich glaube nicht, ein XSS-Test eine Anwendung zum Absturz bringen kann. Doch durch eine Menge von 1 Art der Anfrage einreichen, dann könnte dies einen DoS-Zustand führen. Sie müssen die letzte Anforderung auf die Spur, dass Wapiti gemacht. Wapiti hat einen ausführlichen Modus, ich glaube, seine -v und es wird jede Anfrage auszudrucken es macht. Sobald Sie die Datei, die Sie abstürzt sollte es manuell überprüfen.
Wapiti blinde SQL-Injection-Attacke Modul verwendet MySQL Benchmark () Funktion, die WILL DoS Ihr MySQL-Server, empfehle ich, dieses aus, wenn Sie haben, sind Probleme scannen Ihre gesamte Website.