Wapiti - tcheke yon sit pou frajilite poukont li

Wapiti - tcheke yon sit pou frajilite poukont li
Nan tan lontan an Atik nou te pale de Nemesida WAF gratis - yon zouti gratis pou pwoteje sit entènèt ak API kont atak pirate, ak nan yon sèl sa a nou deside revize yon eskanè vilnerabilite popilè Elk.

Eskane yon sit entènèt pou frajilite se yon mezi nesesè, ki, makonnen ak analiz de kòd sous la, pèmèt ou evalye nivo sekirite li kont menas nan konpwomi. Ou ka eskane yon resous entènèt lè l sèvi avèk zouti espesyalize.

Nikto, W3af (ekri nan Python 2.7, ki pa sipòte ankò) oswa Arachni (pa sipòte ankò depi fevriye) se solisyon ki pi popilè yo prezante nan segman gratis la. Natirèlman, gen lòt, pa egzanp, Wapiti, ki nou te deside konsantre sou.

Wapiti travay ak kalite frajilite sa yo:

  • ekspansyon dosye (lokal ak aleka, fopen, readfile);
  • piki (PHP / JSP / ASP / SQL piki ak piki XPath);
  • XSS (Cross Site Scripting) (reflektif ak pèsistan);
  • deteksyon ak ekzekisyon kòmandman (eval(), system(), passtru());
  • CRLF piki (divizyon repons HTTP, fikse sesyon);
  • XXE (XML ekstèn antite) entegre;
  • SSRF (Sèvè Side Request Forgery);
  • itilizasyon fichye ki kapab danjere (gras a baz done Nikto);
  • konfigirasyon fèb .htaccess ki ka kontoune;
  • prezans dosye backup ki revele enfòmasyon konfidansyèl (divilgasyon kòd sous);
  • Shellshock;
  • redireksyon louvri;
  • metòd HTTP ki pa estanda ki ka rezoud (PUT).

Karakteristik:

  • HTTP, HTTPS ak SOCKS5 sipò prokurasyon;
  • otantifikasyon lè l sèvi avèk plizyè metòd: Basic, Digest, Kerberos oswa NTLM;
  • kapasite nan limite zòn nan optik (domèn, katab, paj, URL);
  • otomatik retire youn nan paramèt yo nan URL la;
  • plizyè prekosyon kont bouk eskanè kontinuèl (egzanp: ifor, valè limite pou yon paramèt);
  • kapasite nan mete yon priyorite pou egzamine URL (menm si yo pa nan zòn nan optik);
  • kapasite pou eskli kèk URL nan optik ak atak (pa egzanp: URL logout);
  • enpòte bonbon (jwenn yo avèk zouti wapiti-getcookie);
  • kapasite pou aktive/dezaktive verifikasyon sètifika SSL;
  • kapasite nan ekstrè URL soti nan JavaScript (yon entèprèt JS trè senp);
  • entèraksyon ak HTML5;
  • plizyè opsyon pou jere konpòtman krole ak restriksyon;
  • fikse tan maksimòm pou pwosesis optik la;
  • ajoute kèk tèt HTTP koutim oswa mete kanpe yon Itilizatè-Ajan koutim.

Karakteristik adisyonèl:

  • kreye rapò vilnerabilite nan divès fòma (HTML, XML, JSON, TXT);
  • pran yon poz ak rekòmanse yon eskanè oswa atak (mekanis sesyon lè l sèvi avèk baz done SQLite3);
  • ekleraj nan tèminal la pou mete aksan sou frajilite yo;
  • diferan nivo antre;
  • Yon fason rapid ak fasil yo aktive / dezaktive modil atak.

Enstalasyon

Vèsyon aktyèl la nan Wapiti ka enstale nan 2 fason:

  • telechaje sous la nan men ofisyèl la sit epi kouri script enstalasyon an, li te deja enstale Python3;
  • lè l sèvi avèk pip3 enstale lòd wapiti3 la.

Apre sa, Wapiti pral pare pou ale.

Travay ak zouti a

Pou demontre travay Wapiti a, nou pral sèvi ak yon kanpe espesyalman prepare sites.vulns.pentestit.ru (resous entèn), ki gen divès kalite frajilite (Piki, XSS, LFI/RFI) ak lòt enpèfeksyon nan aplikasyon entènèt.

Enfòmasyon yo bay pou rezon enfòmasyon sèlman. Pa vyole lalwa!

Kòmand debaz yo lanse eskanè a:

# wapiti -u <target> <options>

An menm tan an, gen èd byen detaye ak yon gwo kantite opsyon lansman, pou egzanp:

--dimansyon - zòn aplikasyon an
Si ou presize paramèt sijè ki abòde lan ansanm ak URL rale a, ou ka ajiste zòn rale sit la lè w presize tou de yon sèl paj ak tout paj ki ka jwenn sou sit la.

-s и -x — opsyon pou ajoute oswa retire URL espesifik. Opsyon sa yo itil lè ou bezwen ajoute oswa retire yon URL espesifik pandan pwosesis rale a.

--sote — yo pral analize paramèt espesifye a ak kle sa a, men yo pa pral atake. Itil si gen nenpòt paramèt danjere ki pi bon eskli pandan optik.

--verify-ssl — pèmèt oswa enfim verifikasyon sètifika.
Scanner Wapiti a modilè. Sepandan, pou lanse modil espesifik, ki gen ladan sa yo ki konekte otomatikman pandan eskanè a ap kouri, ou bezwen sèvi ak switch la -m epi lis sa ou bezwen yo, separe pa vigil. Si kle a pa itilize, Lè sa a, tout modil ap travay pa default. Nan vèsyon ki pi senp la, li pral sanble sa a:

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

Egzanp itilizasyon sa a vle di ke nou pral sèlman itilize modil SQL, XSS ak XXE lè w ap analize sib la. Anplis de sa, ou ka filtre operasyon an nan modil depann sou metòd la vle. Pa egzanp -m "xss: jwenn, blindsql: poste, xxe: poste". Nan ka sa a, modil la xss pral aplike pou demann yo voye lè l sèvi avèk metòd GET, ak modil la blibdsql - pou POST demann, elatriye. By wout la, si kèk modil ki te enkli nan lis la pa te nesesè pandan optik oswa pran yon tan trè long, Lè sa a, peze Ctrl + C konbinezon ou ka sote lè l sèvi avèk modil aktyèl la lè w chwazi atik ki koresponn lan nan meni an entèaktif.

Wapiti sipòte demann pase atravè yon prokurasyon lè l sèvi avèk yon kle -p ak otantifikasyon sou sit la sib atravè paramèt la -a. Ou kapab tou presize kalite otantifikasyon an: Debaz, Digest, Kerberos и NTLM. De dènye yo ka mande pou enstalasyon modil adisyonèl yo. Anplis de sa, ou ka mete nenpòt headers nan demann (ki gen ladan abitrè Ajan Itilizatè) ak plis ankò.

Pou itilize otantifikasyon ou ka itilize zouti a wapiti-getcookie. Avèk èd li nou fòme bonbon, ki Wapiti pral itilize lè optik. Fòmasyon bonbon fè ak kòmandman an:

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

Pandan n ap travay entèaktif, nou reponn kesyon epi endike enfòmasyon ki nesesè yo tankou login, modpas, elatriye:

Wapiti - tcheke yon sit pou frajilite poukont li

Pwodiksyon an se yon dosye nan fòma JSON. Yon lòt opsyon se ajoute tout enfòmasyon ki nesesè nan paramèt la -d:

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

Rezilta a pral menm jan an:

Wapiti - tcheke yon sit pou frajilite poukont li

Lè nou konsidere fonksyonalite prensipal la nan eskanè a, demann final la pou tès aplikasyon entènèt la nan ka nou an te:

# 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

kote pami lòt paramèt:

-f и -o — fòma ak chemen pou sove rapò a;

-m — konekte tout modil pa rekòmande, paske pral afekte tan tès la ak gwosè rapò;

--koulè — mete aksan sou yo te jwenn frajilite depann sou kritik yo dapre Wapiti li menm;

-c - lè l sèvi avèk yon dosye ak bonbon, pwodwi lè l sèvi avèk wapiti-getcookie;

--dimansyon - chwazi yon sib pou atak. Chwazi yon opsyon folder Chak URL pral ranpe ak atake, kòmanse ak youn nan baz. URL debaz la dwe gen yon koupe pi devan (pa gen non fichye);

--flush-sesyon — pèmèt pou optik repete, nan ki rezilta anvan yo pa pral pran an kont;

-A - pwòp Ajan Itilizatè;

-p — adrès sèvè proxy, si sa nesesè.

Yon ti kras sou rapò a

Rezilta eskanè a prezante sou fòm yon rapò detaye sou tout frajilite yo jwenn nan fòma paj HTML, nan yon fòm klè ak fasil pou li. Rapò a pral endike kategori yo ak kantite frajilite yo te jwenn, deskripsyon yo, demann, kòmandman pou pli ak konsèy sou kòman yo fèmen yo. Pou navigasyon fasil, yo pral ajoute yon lyen nan non kategori yo, klike sou ki ou ka ale nan li:

Wapiti - tcheke yon sit pou frajilite poukont li

Yon dezavantaj enpòtan nan rapò a se absans la nan yon kat aplikasyon entènèt kòm sa yo, san yo pa ki li pa pral klè si tout adrès ak paramèt yo te analize. Genyen tou yon posibilite pou fo pozitif. Nan ka nou an, rapò a gen ladan "fichye sovgad" ak "fichye ki kapab danjere." Nimewo yo pa koresponn ak reyalite, paske pa te gen okenn dosye sa yo sou sèvè a:

Wapiti - tcheke yon sit pou frajilite poukont li

Petèt modil k ap travay mal yo pral fiks sou tan. Yon lòt dezavantaj nan rapò a se mank de koloran nan frajilite yo te jwenn (ki depann sou kritik yo), oswa omwen divize yo an kategori. Sèl fason nou ka konprann endirèkteman kritik vilnerabilite yo jwenn se sèvi ak paramèt la --koulè pandan optik, ak Lè sa a, frajilite yo jwenn yo pral gen koulè nan diferan koulè:

Wapiti - tcheke yon sit pou frajilite poukont li

Men, rapò a li menm pa bay koloran sa yo.

Vilnerabilite

SQLi

Scanner a pasyèlman fè fas ak rechèch la SQLi. Lè w ap chèche vilnerabilite SQL nan paj kote otantifikasyon pa obligatwa, pa gen pwoblèm:

Wapiti - tcheke yon sit pou frajilite poukont li

Li pa t posib pou jwenn yon vilnerabilite sou paj aksesib sèlman apre otantifikasyon, menm lè l sèvi avèk valab bonbon, Piske gen plis chans apre otantifikasyon siksè, sesyon yo pral "dekonekte" ak bonbon ap vin envalid. Si fonksyon deotorizasyon an te aplike kòm yon script separe responsab pou trete pwosedi sa a, Lè sa a, li ta posib konplètman eskli li atravè paramèt -x la, epi kidonk anpeche li deklanche. Sinon, li pa pral posib pou eskli pwosesis li yo. Sa a se pa yon pwoblèm ak yon modil espesifik, men ak zouti a kòm yon antye, men akòz nuans sa a, li pa t 'posib yo detekte plizyè piki nan yon zòn resous fèmen.

XSS

Scanner a te fè fas ak travay yo bay la pafètman epi li te jwenn tout frajilite yo prepare:

Wapiti - tcheke yon sit pou frajilite poukont li

LFI/RFI

Scanner la te jwenn tout frajilite ki kache yo:

Wapiti - tcheke yon sit pou frajilite poukont li

An jeneral, malgre fo pozitif ak frajilite ki manke, Wapiti, kòm yon zouti gratis, montre rezilta pèfòmans trè bon. Nan nenpòt ka, li vo rekonèt ke eskanè a se byen pwisan, fleksib ak multifonksyonèl, ak pi enpòtan, li gratis, kidonk li gen dwa yo dwe itilize nan ede administratè ak devlopè jwenn enfòmasyon debaz sou estati sekirite a nan yon sit entènèt. aplikasyon.

Rete an sante ak pwoteje!

Sous: www.habr.com

Add nouvo kòmantè