No Ăşltimo artigo, falamos sobre Nemesida WAF Free - uma ferramenta gratuita para proteger sites e APIs de ataques de hackers, e neste artigo decidimos revisar o popular scanner de vulnerabilidade Wapiti .
A varredura de um site em busca de vulnerabilidades Ă© uma medida necessária que, junto com uma análise do cĂłdigo-fonte, permite avaliar o nĂvel de proteção contra ameaças de comprometimento. VocĂŞ pode digitalizar um recurso da web usando ferramentas especializadas.
Nikto, W3af (escrito em Python 2.7, que terminou) ou Arachni (não mais suportado desde fevereiro) são as soluções mais populares apresentadas no segmento gratuito. Claro, existem outros, por exemplo, Wapiti, nos quais decidimos parar.
Wapiti funciona com os seguintes tipos de vulnerabilidades:
- expansĂŁo de arquivo (local e remoto, fopen, readfile);
- Injeções (PHP / JSP / ASP / SQL Injection e XPath Injection);
- XSS (Cross Site Scripting) (refletido e persistente);
- detecção e execução de comandos (eval (), system (), passtru ());
- Injeção CRLF (dividir respostas HTTP, fixação de sessão);
- XXE (XML ) ;
- SSRF ( );
- ( Nikto);
- .htaccess, ;
- , ( );
- Shellshock;
- ;
- HTTP, (PUT).
:
- HTTP, HTTPS SOCKS5;
- : Basic, Digest, Kerberos NTLM;
- (, , , URL-);
- URL;
- (: ifor, );
- URL- ( );
- URL- (: URL logout);
- cookie ( wapiti-getcookie);
- / SSL;
- URL JavaScript ( JS-);
- HTML5;
- crawler’a;
- ;
- HTTP- User-Agent.
:
- (HTML, XML, JSON, TXT);
- ( SQLite3);
- ;
- ;
- / .
Wapiti 2 :
Wapiti .
Wapiti sites.vulns.pentestit.ru ( ), (Injection, XSS, LFI/RFI) -.
. !
:
# wapiti -u <target> <options>
, :
--scope —
URL scope, , , , .
-s -x — URL-. , URL- .
--skip — , . , - , .
--verify-ssl — .
Wapiti . , , , , -m . , . :
# wapiti -u http://sites.vulns.pentestit.ru/ -m sql,xss,xxe
, SQL, XSS XXE . , . -m “xss: get, blindsql: post, xxe: post”. xss , GET, blibdsql — POST- .. , - , , , Ctrl+C , .
Wapiti - -p -a. : Basi, Digest, Kerberos NTLM. . , ( User-Agent) .
wapiti-getcookie. C cookie, Wapiti . cookie :
# wapiti-getcookie -u http://sites.vulns.pentestit.ru/login.php -c cookie.json
: , :
JSON. — -d:
# wapiti-getcookie - http://sites.vulns.pentestit.ru/login.php -c cookie.json -d "username=admin&password=admin&enter=submit"
:
, - :
# wapiti --level 1 -u http://sites.vulns.pentestit.ru/ -f html -o /tmp/vulns.html -m all --color - cookie.json --scope folder --flush-session -A 'Pentestit Scans' -p http://myproxy:3128
:
-f -o — ;
-m — — , .. ;
--color — Wapiti;
-c — cookie, wapiti-getcookie;
--scope — . folder URL, . URL ( );
--flush-session — , ;
-A — User-Agent;
-p — -, .
HTML-, . , , , curl , . , :
— -, , . . « » « ». , :
, . ( ), . , — --color :
.
SQLi
C SQLi. SQL- , , :
, , cookie, " " cookie . , , -x, . . , , - .
XSS
:
LFI/RFI
O scanner encontrou todas as vulnerabilidades inerentes:
No geral, apesar de falsos positivos e vulnerabilidades ausentes, Wapiti, como uma ferramenta gratuita, mostra resultados muito bons. De qualquer forma, Ă© importante reconhecer que o scanner Ă© bastante potente, flexĂvel e multifuncional e, o mais importante, Ă© gratuito, portanto, tem direito de uso, ajudando administradores e desenvolvedores a obter informações básicas sobre o estado de segurança de uma aplicação web.
Fique saudável e protegido!