Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon
Sa ulahi artikulo nagstorya mi Nemesida WAF Libre - usa ka libre nga himan alang sa pagpanalipod sa mga website ug mga API gikan sa mga pag-atake sa hacker, ug niining usa nakahukom kami nga repasohon ang usa ka sikat nga scanner sa pagkahuyang Elk.

Ang pag-scan sa usa ka website alang sa mga kahuyangan usa ka kinahanglanon nga sukod, nga, inubanan sa pag-analisar sa source code, nagtugot kanimo sa pagtimbang-timbang sa lebel sa seguridad niini batok sa mga hulga sa pagkompromiso. Mahimo nimong i-scan ang usa ka kapanguhaan sa web gamit ang espesyal nga mga himan.

Ang Nikto, W3af (gisulat sa Python 2.7, nga wala na gisuportahan) o Arachni (wala na gisuportahan sukad sa Pebrero) mao ang labing popular nga mga solusyon nga gipresentar sa libre nga bahin. Siyempre, adunay uban pa, pananglitan, Wapiti, nga nakahukom kami nga ipunting.

Ang Wapiti nagtrabaho uban ang mga musunud nga klase sa mga kahuyangan:

  • pagpalapad sa file (lokal ug hilit, fopen, readfile);
  • mga injection (PHP / JSP / ASP / SQL injection ug XPath injection);
  • XSS (Cross Site Scripting) (reflective ug makanunayon);
  • detection ug execution sa mga sugo (eval(), system(), passtru());
  • CRLF injections (HTTP response splitting, session fixation);
  • XXE (XML eksternal nga entidad) pag-embed;
  • SSRF (Server Side Request Forgery);
  • paggamit sa nahibal-an nga posibleng peligro nga mga file (salamat sa Nikto database);
  • huyang nga .htaccess configurations nga mahimong laktawan;
  • ang presensya sa mga backup file nga nagpadayag sa kompidensyal nga kasayuran (pagbutyag sa source code);
  • Shellshock;
  • bukas nga mga pag-redirect;
  • non-standard nga mga pamaagi sa HTTP nga masulbad (PUT).

Mga Feature:

  • HTTP, HTTPS ug SOCKS5 proxy nga suporta;
  • authentication gamit ang daghang mga pamaagi: Basic, Digest, Kerberos o NTLM;
  • ang abilidad nga limitahan ang lugar sa pag-scan (domain, folder, panid, URL);
  • awtomatik nga pagtangtang sa usa sa mga parameter sa URL;
  • daghang mga pag-amping batok sa wala’y katapusan nga mga loop sa pag-scan (pananglitan: kung, gilimitahan ang mga kantidad alang sa usa ka parameter);
  • ang abilidad sa pagtakda og prayoridad sa pagsusi sa mga URL (bisan kon wala sila sa scanning area);
  • abilidad nga dili iapil ang pipila ka mga URL gikan sa pag-scan ug pag-atake (pananglitan: URL logout);
  • import cookies (kuhaa kini gamit ang wapiti-getcookie tool);
  • abilidad sa pagpaaktibo/pag-deactivate sa SSL certificate verification;
  • ang abilidad sa pagkuha sa mga URL gikan sa JavaScript (usa ka yano kaayo nga JS interpreter);
  • pakig-uban sa HTML5;
  • daghang mga kapilian alang sa pagdumala sa pamatasan ug mga pagdili sa crawler;
  • pagtakda sa kinatas-ang panahon alang sa proseso sa pag-scan;
  • pagdugang sa pipila ka mga custom nga HTTP header o pag-set up sa usa ka custom User-Agent.

Dugang nga mga bahin:

  • paghimo sa mga taho sa kahuyang sa lainlaing mga format (HTML, XML, JSON, TXT);
  • paghunong ug pagpadayon sa usa ka pag-scan o pag-atake (mekanismo sa sesyon gamit ang mga database sa SQLite3);
  • backlighting sa terminal aron i-highlight ang mga kahuyangan;
  • lainlaing lebel sa pag-log;
  • Usa ka dali ug dali nga paagi sa pagpaaktibo / pag-deactivate sa mga module sa pag-atake.

Pag-instalar

Ang kasamtangan nga bersyon sa Wapiti mahimong ma-install sa 2 ka paagi:

  • i-download ang tinubdan gikan sa opisyal site ug pagdagan ang script sa pag-install, nga na-install kaniadto ang Python3;
  • gamit ang pip3 install wapiti3 command.

Human niini, andam na si Wapiti sa pag-adto.

Pagtrabaho gamit ang himan

Aron ipakita ang buhat sa Wapiti, mogamit kami usa ka espesyal nga giandam nga stand sites.vulns.pentestit.ru (internal nga kapanguhaan), nga adunay lainlaing mga kahuyangan (Injection, XSS, LFI/RFI) ug uban pang mga kakulangan sa mga aplikasyon sa web.

Ang impormasyon gihatag alang sa mga katuyoan sa impormasyon lamang. Ayaw paglapas sa balaod!

Batakang sugo sa paglansad sa scanner:

# wapiti -u <target> <options>

Sa parehas nga oras, adunay daghang detalyado nga tabang sa daghang mga kapilian sa paglansad, pananglitan:

--sangkap - lugar sa aplikasyon
Kung imong ipiho ang scope parameter kauban ang crawl URL, mahimo nimong i-adjust ang lugar sa pag-crawl sa site pinaagi sa pagpiho sa usa ka panid ug tanan nga mga panid nga makit-an sa site.

-s ΠΈ -x β€” mga kapilian sa pagdugang o pagtangtang sa piho nga mga URL. Kini nga mga kapilian mapuslanon kung kinahanglan nimo nga idugang o tangtangon ang usa ka piho nga URL sa panahon sa proseso sa pag-crawl.

--laktawan β€” ang gipiho nga parameter nga adunay kini nga yawe ma-scan, apan dili atakehon. Mapuslanon kung adunay bisan unsang peligro nga mga parameter nga labing maayo nga dili iapil sa panahon sa pag-scan.

--verify-ssl β€” pagpagana o pag-disable sa pag-verify sa sertipiko.
Ang Wapiti scanner kay modular. Bisan pa, aron ilunsad ang piho nga mga module, lakip ang mga awtomatik nga konektado samtang nagdagan ang scanner, kinahanglan nimo gamiton ang -m switch ug ilista ang imong kinahanglan, gibulag sa mga koma. Kung ang yawe wala gigamit, nan ang tanan nga mga module magamit sa default. Sa pinakasimple nga bersyon kini tan-awon sama niini:

# wapiti -u http://sites.vulns.pentestit.ru/ -m sql,xss,xxe

Kini nga pananglitan sa paggamit nagpasabot nga gamiton lang nato ang SQL, XSS ug XXE modules kung mag-scan sa target. Dugang pa, mahimo nimong ma-filter ang operasyon sa mga module depende sa gusto nga pamaagi. Pananglitan -m "xss: pagkuha, blindsql: post, xxe: post". Sa kini nga kaso, ang module xss magamit sa mga hangyo nga gipadala gamit ang GET nga pamaagi, ug ang module blibdsql - sa mga hangyo sa POST, ug uban pa. Pinaagi sa dalan, kung ang pipila ka module nga gilakip sa lista wala kinahanglana sa panahon sa pag-scan o dugay kaayo, nan pinaagi sa pagpadayon sa Ctrl + C nga kombinasyon mahimo nimong laktawan ang paggamit sa karon nga module pinaagi sa pagpili sa katugbang nga butang sa interactive nga menu.

Gisuportahan ni Wapiti ang pagpasa sa mga hangyo pinaagi sa usa ka proxy gamit ang usa ka yawe -p ug authentication sa target nga site pinaagi sa parameter -a. Mahimo usab nimo ipiho ang tipo sa pag-authenticate: sukaranan, Pagpalaw, Kerberos ΠΈ NTLM. Ang katapusan nga duha mahimong magkinahanglan sa pag-instalar sa dugang nga mga module. Dugang pa, mahimo nimong isulod ang bisan unsang mga ulohan sa mga hangyo (lakip ang arbitraryo Ahente sa Gumagamit) ug daghan pa.

Sa paggamit sa authentication mahimo nimong gamiton ang himan wapiti-getcookie. Uban sa tabang niini kita maporma cookie, nga gamiton ni Wapiti kung mag-scan. Pagporma cookie gibuhat sa sugo:

# wapiti-getcookie -u http://sites.vulns.pentestit.ru/login.php -c cookie.json

Samtang nagtrabaho nga interactive, gitubag namo ang mga pangutana ug gipakita ang gikinahanglan nga impormasyon sama sa login, password, ug uban pa:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Ang output usa ka file sa JSON format. Ang laing kapilian mao ang pagdugang sa tanang gikinahanglan nga impormasyon pinaagi sa parameter -d:

# wapiti-getcookie - http://sites.vulns.pentestit.ru/login.php -c cookie.json -d "username=admin&password=admin&enter=submit"

Ang resulta mahimong susama:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Kung gikonsiderar ang panguna nga pagpaandar sa scanner, ang katapusan nga hangyo alang sa pagsulay sa aplikasyon sa web sa among kaso mao ang:

# 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://proxy.office.pentestit.ru:3128

diin taliwala sa ubang mga parameter:

-f ΠΈ -o β€” pormat ug dalan alang sa pagtipig sa taho;

-m β€” Ang pagkonektar sa tanan nga mga module dili girekomenda, tungod kay makaapekto sa panahon sa pagsulay ug gidak-on sa taho;

--kolor β€” ipasiugda ang nakit-an nga mga kahuyangan depende sa ilang pagkakritikal sumala sa Wapiti mismo;

-c - gamit ang file nga adunay cookie, gihimo gamit ang wapiti-getcookie;

--sangkap - pagpili sa usa ka target alang sa pag-atake. Pagpili og opsyon suksukanan sa papel Ang matag URL paga-crawl ug atakehon, sugod sa base sa usa. Ang base URL kinahanglang adunay forward slash (walay filename);

--flush-session - nagtugot alang sa balik-balik nga pag-scan, diin ang mga nangaging mga resulta dili pagaisipon;

-A - kaugalingon Ahente sa Gumagamit;

-p β€” adres sa proxy server, kung gikinahanglan.

Usa ka gamay mahitungod sa report

Ang resulta sa pag-scan gipresentar sa porma sa usa ka detalyado nga taho sa tanan nga nakit-an nga mga kahuyangan sa format sa panid sa HTML, sa usa ka tin-aw ug dali basahon nga porma. Ang taho magpakita sa mga kategorya ug gidaghanon sa mga kahuyangan nga nakit-an, ang ilang mga paghubit, mga hangyo, mga mando alang sa curl ug mga tip kon unsaon pagsira niini. Alang sa kasayon ​​sa pag-navigate, usa ka link ang idugang sa mga ngalan sa kategorya, pag-klik kung diin ka makaadto niini:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Ang usa ka hinungdanon nga disbentaha sa taho mao ang pagkawala sa usa ka mapa sa aplikasyon sa web nga ingon niini, kung wala kini dili klaro kung ang tanan nga mga adres ug mga parameter nasusi na. Adunay usab usa ka posibilidad sa bakak nga mga positibo. Sa among kaso, ang taho naglakip sa "mga backup nga mga file" ug "mga potensyal nga peligro nga mga file." Ang ilang gidaghanon dili katumbas sa kamatuoran, tungod kay walay ingon nga mga file sa server:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Tingali ang dili husto nga pagtrabaho nga mga module ayohon sa paglabay sa panahon. Laing disbentaha sa taho mao ang kakulang sa pagkolor sa nakit-an nga mga kahuyangan (depende sa ilang pagkakritikal), o labing menos pagbahin kanila sa mga kategorya. Ang bugtong paagi nga dili direkta nga masabtan naton ang pagkakritikal sa nakit-an nga kahuyangan mao ang paggamit sa parameter --kolor sa panahon sa pag-scan, ug unya ang mga kahuyangan nga makit-an makoloran sa lainlaing mga kolor:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Apan ang taho mismo wala maghatag sa ingon nga pagkolor.

Mga kahuyangan

SQLi

Ang scanner partially nakasagubang sa SQLi search. Kung nangita alang sa mga kahuyangan sa SQL sa mga panid diin wala kinahanglana ang pag-authenticate, wala’y mga problema nga motumaw:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Dili posible nga makit-an ang usa ka kahuyang sa mga panid nga ma-access lamang pagkahuman sa pag-authenticate, bisan ang paggamit sa balido cookie, tungod kay lagmit human sa malampuson nga pag-authenticate, ang ilang sesyon "ma-log out" ug cookie mahimong invalid. Kung ang function sa deauthorization gipatuman isip usa ka bulag nga script nga responsable sa pagproseso niini nga pamaagi, nan posible nga hingpit nga dili iapil kini pinaagi sa parameter -x, ug sa ingon mapugngan kini nga mag-trigger. Kung dili, dili mahimo nga dili iapil ang pagproseso niini. Dili kini problema sa usa ka piho nga module, apan sa tibuuk nga himan, apan tungod sa kini nga nuance, dili posible nga makit-an ang daghang mga injection sa usa ka sirado nga lugar nga kapanguhaan.

XSS

Ang scanner hingpit nga nakasagubang sa gihatag nga buluhaton ug nakit-an ang tanan nga giandam nga mga kahuyangan:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

LFI/RFI

Nakita sa scanner ang tanan nga nagpahiping mga kahuyangan:

Wapiti - pagsusi sa usa ka site alang sa mga kahuyangan sa kaugalingon

Sa kinatibuk-an, bisan pa sa sayup nga mga positibo ug nawala nga mga kahuyangan, ang Wapiti, ingon usa ka libre nga himan, nagpakita nga maayo kaayo nga mga resulta sa pasundayag. Sa bisan unsa nga kaso, angay nga ilhon nga ang scanner kusgan kaayo, flexible ug multifunctional, ug labing hinungdanon, kini libre, busa kini adunay katungod nga magamit sa pagtabang sa mga administrador ug mga developer nga makakuha mga sukaranan nga kasayuran bahin sa kahimtang sa seguridad sa usa ka web. aplikasyon.

Magpabiling himsog ug protektado!

Source: www.habr.com

Idugang sa usa ka comment