Wapiti는 내 ASP.NET 프로젝트를 충돌시킵니다. 왜요? 어떻게 수정합니까?
문제
그녀는 Wapiti의 한 스캔입니다. 이미지가 업로드되었을 때 (사용자가 업로드 할 수 있음) 전에 충돌을받습니다. Launching module crlf
. 그래서 내 사이트의 새로운 인스턴스를 사용하면 이것을 실행하고 아래 결과를 얻었습니다.
내 질문은 1입니다. 충돌 사고를 어떻게 고치는가 2. 충돌의 원인을 어떻게 알 수 있습니까? -v 2를 사용하여 URL을 파악하고 내 앱에 로그인했습니다. 두 경우 모두 문제가 보이지 않으며 프로젝트가 코드 3 이외의 지역에서 충돌합니다. 아래의 유니 코드 경고를 어떻게 해결합니까?
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
해결책
Wapiti는 응용 프로그램이 많은 응용 프로그램을 사용하기 때문에 충돌 할 수 있습니다. XSS 테스트를 수행 할 때 Wapiti 스택은 추적했으며 XSS 테스트가 응용 프로그램에 충돌 할 수 있다고 생각하지 않습니다. 그러나 많은 유형의 요청을 제출함으로써 DOS 조건을 유발할 수 있습니다. Wapiti가 한 마지막 요청을 추적해야합니다. Wapiti는 장점 모드를 가지고 있습니다. 나는 그것의 -v라고 생각하며 그것이 모든 요청을 인쇄 할 것이라고 생각합니다. 충돌하는 파일이 있으면 수동으로 검토해야합니다.
Wapiti의 블라인드 SQL 주입 공격 모듈은 MySQL의 Benchmark () 함수를 사용합니다. DOS MySQL 서버, 전체 사이트를 스캔하는 데 어려움이있는 경우 이것을 끄는 것이 좋습니다.
제휴하지 않습니다 StackOverflow