Dans le dernier article, nous avons parlé de Nemesida WAF Free - un outil gratuit pour protéger les sites et les API contre les attaques de pirates informatiques, et dans cet article, nous avons décidé de passer en revue le populaire scanner de vulnérabilité Wapiti .
L'analyse des vulnérabilités d'un site est une mesure nécessaire qui, associée à une analyse du code source, permet d'évaluer le niveau de sa protection contre les menaces de compromission. Vous pouvez analyser une ressource Web à l'aide d'outils spécialisés.
Nikto, W3af (écrit en Python 2.7, dont le support est terminé) ou Arachni (plus supporté depuis février) sont les solutions les plus populaires présentées dans le segment gratuit. Bien sûr, il y en a d'autres, par exemple, Wapiti, sur lesquels nous avons décidé de nous arrêter.
Wapiti fonctionne avec les types de vulnérabilités suivants:
- extension de fichier (local et distant, fopen, readfile);
- injection (injection PHP / JSP / ASP / SQL et injection XPath);
- XSS (Cross Site Scripting) (Reflected and Persistent)
- détection et exécution de commandes (eval (), system (), passtru ());
- Injection CRLF (réponses HTTP fractionnées, fixation de session);
- 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
Le scanner a trouvé toutes les vulnérabilités inhérentes:
Dans l'ensemble, malgré les faux positifs et les vulnérabilités manquantes, Wapiti, en tant qu'outil gratuit, montre de très bons résultats. Dans tous les cas, il convient de reconnaître que le scanner est assez puissant, flexible et multifonctionnel, et surtout, il est gratuit, il a donc le droit de l'utiliser, aidant les administrateurs et les développeurs à recevoir des informations de base sur l'état de sécurité d'une application Web.
Restez en bonne santé et protégé!