Wapiti - kuangalia tovuti kwa udhaifu peke yake

Wapiti - kuangalia tovuti kwa udhaifu peke yake
Zamani Ibara ya tulizungumza Nemesida WAF Bure - zana ya bure ya kulinda tovuti na API dhidi ya mashambulizi ya wadukuzi, na katika hili tuliamua kukagua skana maarufu ya hatari. Elk.

Kuchanganua tovuti kwa udhaifu ni hatua muhimu, ambayo, pamoja na uchambuzi wa msimbo wa chanzo, inakuwezesha kutathmini kiwango cha usalama wake dhidi ya vitisho vya maelewano. Unaweza kuchanganua rasilimali ya wavuti kwa kutumia zana maalum.

Nikto, W3af (iliyoandikwa katika Python 2.7, ambayo haitumiki tena) au Arachni (haijatumika tena tangu Februari) ni suluhisho maarufu zaidi zinazowasilishwa katika sehemu ya bure. Bila shaka, kuna wengine, kwa mfano, Wapiti, ambayo tuliamua kuzingatia.

Wapiti hufanya kazi na aina zifuatazo za udhaifu:

  • upanuzi wa faili (ya ndani na ya mbali, fopen, readfile);
  • sindano (sindano ya PHP / JSP / ASP / SQL na sindano ya XPath);
  • XSS (Uandishi wa Tovuti Msalaba) (unaotafakari na unaoendelea);
  • kugundua na utekelezaji wa amri ( eval (), mfumo (), passtru ());
  • Sindano za CRLF (mgawanyiko wa majibu ya HTTP, urekebishaji wa kikao);
  • XXE (huluki ya nje ya XML) upachikaji;
  • SSRF (Kughushi Ombi la Upande wa Seva);
  • matumizi ya faili zinazojulikana zinazoweza kuwa hatari (shukrani kwa hifadhidata ya Nikto);
  • usanidi dhaifu wa .htaccess ambao unaweza kupitwa;
  • uwepo wa faili za chelezo zinazofichua habari za siri (kufichua msimbo wa chanzo);
  • Shellshock;
  • fungua uelekezaji upya;
  • njia zisizo za kawaida za HTTP zinazoweza kutatuliwa (PUT).

Fursa:

  • usaidizi wa wakala wa HTTP, HTTPS na SOCKS5;
  • uthibitishaji kwa kutumia mbinu kadhaa: Msingi, Digest, Kerberos au NTLM;
  • uwezo wa kupunguza eneo la skanning (kikoa, folda, ukurasa, URL);
  • kuondolewa kwa moja kwa moja kwa moja ya vigezo katika URL;
  • tahadhari nyingi dhidi ya vitanzi visivyo na mwisho (mfano: ifor, kupunguza maadili kwa parameta);
  • uwezo wa kuweka kipaumbele cha kuchunguza URL (hata kama haziko katika eneo la skanning);
  • uwezo wa kuwatenga baadhi ya URL kwenye kuchanganua na kushambuliwa (kwa mfano: kuondoka kwa URL);
  • agiza kuki (zipate kwa kutumia zana ya wapiti-getcookie);
  • uwezo wa kuwezesha / kulemaza uthibitishaji wa cheti cha SSL;
  • uwezo wa kutoa URL kutoka kwa JavaScript (mkalimani rahisi sana wa JS);
  • mwingiliano na HTML5;
  • chaguzi kadhaa za kudhibiti tabia ya kutambaa na vizuizi;
  • kuweka muda wa juu wa mchakato wa skanning;
  • kuongeza baadhi ya vichwa maalum vya HTTP au kusanidi Wakala maalum wa Mtumiaji.

Vipengee vya ziada:

  • kuunda ripoti za athari katika miundo mbalimbali (HTML, XML, JSON, TXT);
  • kusitisha na kuanza tena uchanganuzi au kushambulia (utaratibu wa kikao kwa kutumia hifadhidata za SQLite3);
  • mwangaza nyuma kwenye terminal ili kuonyesha udhaifu;
  • viwango tofauti vya ukataji miti;
  • Njia ya haraka na rahisi ya kuwezesha/kuzima moduli za mashambulizi.

Ufungaji

Toleo la sasa la Wapiti linaweza kusakinishwa kwa njia 2:

  • pakua chanzo kutoka kwa afisa tovuti na endesha hati ya usakinishaji, ukiwa umeweka Python3 hapo awali;
  • kwa kutumia pip3 install wapiti3 amri.

Baada ya hayo, Wapiti itakuwa tayari kwenda.

Kufanya kazi na chombo

Ili kuonyesha kazi ya Wapiti, tutatumia tovuti maalum ya kusimama.vulns.pentestit.ru (rasilimali ya ndani), iliyo na udhaifu mbalimbali (Sindano, XSS, LFI/RFI) na mapungufu mengine ya programu za wavuti.

Taarifa hutolewa kwa madhumuni ya habari tu. Usivunje sheria!

Amri ya msingi ya kuzindua skana:

# wapiti -u <target> <options>

Wakati huo huo, kuna msaada wa kina kabisa na idadi kubwa ya chaguzi za uzinduzi, kwa mfano:

-- upeo - eneo la maombi
Ukibainisha kigezo cha upeo pamoja na URL ya kutambaa, unaweza kurekebisha eneo la kutambaa la tovuti kwa kubainisha ukurasa mmoja na kurasa zote zinazoweza kupatikana kwenye tovuti.

-s ΠΈ -x β€” chaguzi za kuongeza au kuondoa URL maalum. Chaguo hizi ni muhimu unapohitaji kuongeza au kuondoa URL maalum wakati wa mchakato wa kutambaa.

--ruka - parameta iliyoainishwa iliyo na ufunguo huu itachanganuliwa, lakini haitashambuliwa. Inafaa ikiwa kuna vigezo vyovyote hatari ambavyo ni bora kutengwa wakati wa skanning.

--thibitisha-ssl - wezesha au zima uthibitishaji wa cheti.
Kichanganuzi cha Wapiti ni cha moduli. Hata hivyo, ili kuzindua moduli maalum, ikiwa ni pamoja na zile ambazo zimeunganishwa kiotomatiki wakati skana inaendesha, unahitaji kutumia -m kubadili na kuorodhesha unayohitaji, ikitenganishwa na koma. Ikiwa ufunguo haujatumiwa, basi moduli zote zitafanya kazi kwa default. Katika toleo rahisi zaidi itaonekana kama hii:

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

Mfano huu wa matumizi unamaanisha kuwa tutatumia moduli za SQL, XSS na XXE pekee tunapochanganua lengwa. Kwa kuongeza, unaweza kuchuja uendeshaji wa modules kulingana na njia inayotakiwa. Kwa mfano -m β€œxss: pata, blindsql: chapisho, xxe: chapisho”. Katika kesi hii, moduli xss itatumika kwa maombi yaliyotumwa kwa kutumia mbinu ya GET, na moduli blibdsql - kwa kutuma maombi, nk. Kwa njia, ikiwa moduli fulani ambayo ilijumuishwa kwenye orodha haikuhitajika wakati wa skanning au inachukua muda mrefu sana, basi kwa kushinikiza mchanganyiko wa Ctrl + C unaweza kuruka kutumia moduli ya sasa kwa kuchagua kipengee sambamba kwenye orodha ya maingiliano.

Wapiti inasaidia kupitisha maombi kupitia seva mbadala kwa kutumia kitufe -p na uthibitishaji kwenye tovuti inayolengwa kupitia kigezo -a. Unaweza pia kutaja aina ya uthibitishaji: Msingi, Digest, Kerberos ΠΈ NTLM. Mbili za mwisho zinaweza kuhitaji usakinishaji wa moduli za ziada. Kwa kuongeza, unaweza kuingiza vichwa vyovyote kwenye maombi (pamoja na kiholela Wakala wa Mtumiaji) na mengi zaidi.

Ili kutumia uthibitishaji unaweza kutumia zana wapiti-getcookie. Kwa msaada wake tunaunda cookie, ambayo Wapiti itatumia inapochanganua. Malezi cookie imefanywa na amri:

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

Tunapofanya kazi kwa maingiliano, tunajibu maswali na kuashiria taarifa muhimu kama vile kuingia, nenosiri, n.k.:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Matokeo ni faili katika umbizo la JSON. Chaguo jingine ni kuongeza habari zote muhimu kupitia parameter -d:

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

Matokeo yake yatakuwa sawa:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Wakati wa kuzingatia utendakazi mkuu wa skana, ombi la mwisho la kujaribu programu ya wavuti kwa upande wetu lilikuwa:

# 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

wapi kati ya vigezo vingine:

-f ΠΈ -o - muundo na njia ya kuhifadhi ripoti;

-m - kuunganisha moduli zote haipendekezi, kwa sababu itaathiri muda wa kupima na ukubwa wa ripoti;

-rangi - kuangazia udhaifu uliopatikana kulingana na umuhimu wao kulingana na Wapiti yenyewe;

-c - kutumia faili na cookie, zinazozalishwa kwa kutumia wapiti-getcookie;

-- upeo - kuchagua shabaha ya kushambulia. Kuchagua chaguo folder Kila URL itatambazwa na kushambuliwa, kuanzia na ile ya msingi. URL msingi lazima iwe na kufyeka mbele (hakuna jina la faili);

--flush-kikao - inaruhusu skanning mara kwa mara, ambayo matokeo ya awali hayatazingatiwa;

-A -miliki Wakala wa Mtumiaji;

-p - anwani ya seva ya wakala, ikiwa ni lazima.

Kidogo kuhusu ripoti hiyo

Matokeo ya kuchanganua yanawasilishwa kwa njia ya ripoti ya kina juu ya udhaifu wote uliopatikana katika umbizo la ukurasa wa HTML, katika fomu iliyo wazi na rahisi kusoma. Ripoti itaonyesha aina na idadi ya udhaifu uliopatikana, maelezo yao, maombi, amri za curl na vidokezo vya jinsi ya kuzifunga. Kwa urahisi wa urambazaji, kiungo kitaongezwa kwa majina ya kategoria, kubofya ambayo unaweza kwenda kwake:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Ubaya mkubwa wa ripoti ni kutokuwepo kwa ramani ya programu ya wavuti kama hiyo, bila ambayo haitakuwa wazi ikiwa anwani na vigezo vyote vimechanganuliwa. Pia kuna uwezekano wa chanya za uwongo. Kwa upande wetu, ripoti inajumuisha "faili chelezo" na "faili zinazoweza kuwa hatari." Nambari yao hailingani na ukweli, kwani hakukuwa na faili kama hizo kwenye seva:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Labda moduli za kufanya kazi vibaya zitarekebishwa kwa wakati. Kikwazo kingine cha ripoti ni ukosefu wa rangi ya udhaifu uliopatikana (kulingana na umuhimu wao), au angalau kugawanya katika makundi. Njia pekee ambayo tunaweza kuelewa kwa njia isiyo ya moja kwa moja umuhimu wa athari inayopatikana ni kutumia kigezo -rangi wakati wa skanning, na kisha udhaifu unaopatikana utapakwa rangi tofauti:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Lakini ripoti yenyewe haitoi rangi kama hiyo.

Udhaifu

SQLi

Kitambazaji kilikabiliana na utafutaji wa SQLi. Unapotafuta udhaifu wa SQL kwenye kurasa ambapo uthibitishaji hauhitajiki, hakuna matatizo yanayotokea:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Haikuwezekana kupata athari kwenye kurasa zinazoweza kufikiwa tu baada ya uthibitishaji, hata kwa kutumia halali cookie, kwa kuwa uwezekano mkubwa baada ya uthibitishaji wa mafanikio, kikao chao "kitatoka" na cookie itakuwa batili. Ikiwa kazi ya uondoaji uidhinishaji ilitekelezwa kama hati tofauti inayohusika na usindikaji wa utaratibu huu, basi ingewezekana kuitenga kabisa kupitia -x parameta, na kwa hivyo kuizuia kuanza. Vinginevyo, haitawezekana kuwatenga usindikaji wake. Hili sio tatizo na moduli maalum, lakini kwa chombo kwa ujumla, lakini kwa sababu ya nuance hii, haikuwezekana kuchunguza sindano kadhaa katika eneo la rasilimali iliyofungwa.

XSS

Kitambazaji kilishughulikia kazi uliyopewa kikamilifu na kupata udhaifu wote uliotayarishwa:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

LFI/RFI

Kichanganuzi kilipata udhaifu wote wa kimsingi:

Wapiti - kuangalia tovuti kwa udhaifu peke yake

Kwa ujumla, licha ya matokeo chanya ya uwongo na udhaifu unaokosekana, Wapiti, kama zana isiyolipishwa, inaonyesha matokeo mazuri ya utendakazi. Kwa hali yoyote, inafaa kutambua kuwa skana ina nguvu kabisa, inabadilika na inafanya kazi nyingi, na muhimu zaidi, ni bure, kwa hivyo ina haki ya kutumika katika kusaidia wasimamizi na watengenezaji kupata habari za kimsingi juu ya hali ya usalama ya wavuti. maombi.

Kuwa na afya na ulinzi!

Chanzo: mapenzi.com

Kuongeza maoni