Wapiti - e Site iwwerpréift fir Schwachstelle eleng

Wapiti - e Site iwwerpréift fir Schwachstelle eleng
An der leschter Artikel mir geschwat iwwer Nemesida WAF FrĂ€i - e gratis Tool fir WebsĂ€iten an APIe vu Hackerattacken ze schĂŒtzen, an an dĂ«sem hu mir beschloss e populĂ€re Schwachstelle Scanner ze iwwerprĂ©iwen Elk.

Scannen vun enger WebsÀit fir Schwachstelle ass eng noutwendeg Moossnam, déi, gekoppelt mat der Analyse vum Quellcode, Iech erlaabt den Niveau vu senger Sécherheet géint Gefore vu Kompromëss ze bewÀerten. Dir kënnt eng Webressource scannen mat spezialiséierten Tools.

Nikto, W3af (geschriwwen am Python 2.7, deen net méi ënnerstëtzt gëtt) oder Arachni (net méi zënter Februar ënnerstëtzt) sinn déi populÀrste Léisungen, déi am gratis Segment presentéiert ginn. Natierlech ginn et anerer, zum Beispill Wapiti, op déi mir beschloss hunn ze fokusséieren.

Wapiti schafft mat de folgenden Zorte vu Schwachstelle:

  • Dateiexpansioun (lokal a Remote, fopen, readfile);
  • Injektiounen (PHP / JSP / ASP / SQL Injektioun an XPath Injektioun);
  • XSS (Cross Site Scripting) (reflektiv a persistent);
  • Detektioun an AusfĂ©ierung vun Kommandoen (eval (), System (), passstru ());
  • CRLF Injektiounen (HTTP Äntwert Spaltung, Sessiounsfixatioun);
  • XXE (XML extern EntitĂ©it) Embedding;
  • SSRF (Server Side Request Forgery);
  • Benotzung vu bekannte potenziell gefĂ©ierleche Dateien (dank der Nikto Datebank);
  • schwaach .htaccess Konfiguratiounen dĂ©i Ă«mgoen kĂ«nnen;
  • d'PrĂ€senz vu Backupdateien dĂ©i vertraulech Informatioun verroden (Offenbarung vum Quellcode);
  • Shellshock;
  • oppe Viruleedungen;
  • Net-Standard HTTP Methoden dĂ©i gelĂ©ist kĂ«nne ginn (PUT).

Features:

  • HTTP, HTTPS an SOCKS5 Proxy ËnnerstĂ«tzung;
  • Authentifikatioun mat verschiddene Methoden: Basis, Digest, Kerberos oder NTLM;
  • d'KapazitĂ©it fir d'Scannengebitt ze limitĂ©ieren (Domain, Dossier, SĂ€it, URL);
  • automatesch Entfernung vun engem vun de Parameteren an der URL;
  • Multiple Virsiichtsmoossname gĂ©int endlos Scan Loops (Beispill: ifor, limitĂ©ierend WĂ€erter fir e Parameter);
  • d'KapazitĂ©it fir eng PrioritĂ©it fir d'Untersuchung vun URLen ze setzen (och wa se net am ScannenberĂ€ich sinn);
  • FĂ€egkeet fir e puer URLen aus Scannen an Attacken auszeschlĂ©issen (zum Beispill: URL Logout);
  • Import Cookien (krĂ©ien se mat dem wapiti-getcookie Tool);
  • FĂ€egkeet fir SSL Zertifika VerifizĂ©ierung z'aktivĂ©ieren / deaktivĂ©ieren;
  • d'FĂ€egkeet URLen aus JavaScript ze extrahieren (e ganz einfache JS Dolmetscher);
  • Interaktioun mat HTML5;
  • verschidde MĂ©iglechkeeten fir d'Gestioun vum Crawler Verhalen a Restriktiounen;
  • Astellung vun der maximal ZĂ€it fir de Scannen Prozess;
  • e puer personalisĂ©iert HTTP Header bĂ€izefĂŒgen oder e personalisĂ©ierte User-Agent opzestellen.

ZousÀtzlech Funktiounen:

  • Schafung vu Schwachstelleberichter a verschiddene Formater (HTML, XML, JSON, TXT);
  • Pausen a weidergoen e Scan oder Attack (Sessiounsmechanismus mat SQLite3 Datenbanken);
  • Backlighting am Terminal fir Schwachstelle ze markĂ©ieren;
  • verschidden Niveaue vu Logbicher;
  • Eng sĂ©ier an einfach ManĂ©ier Attack Moduler ze aktivĂ©ieren / deaktivĂ©ieren.

Kader

Déi aktuell Versioun vu Wapiti kann op 2 Weeër installéiert ginn:

  • download d'Quell vum offiziellen Site a lafen d'Installatiounsskript, nodeems se virdru Python3 installĂ©iert hunn;
  • mam pip3 installĂ©ieren wapiti3 Kommando.

Duerno wÀert Wapiti prett sinn fir ze goen.

Schafft mam Tool

Fir d'Aarbecht vun Wapiti ze demonstréieren, wÀerte mir e speziell virbereet Stand benotzen Sites.vulns.pentestit.ru (intern Ressource), déi verschidde Schwachstelle enthÀlt (Injektioun, XSS, LFI / RFI) an aner MÀngel vu Webapplikatiounen.

D'Informatioun gëtt nëmme fir Informatiounszwecker geliwwert. Paus net d'Gesetz!

Basis Kommando fir de Scanner ze starten:

# wapiti -u <target> <options>

Zur selwechter ZÀit gëtt et zimmlech detailléiert Hëllef mat enger grousser Zuel vu Startoptiounen, zum Beispill:

-- Ëmfang - Applikatioun BerĂ€ich
Wann Dir den Ëmfangparameter zesumme mat der Crawl URL spezifizĂ©iert, kĂ«nnt Dir de CrawlberĂ€ich vum Site upassen andeems Dir souwuel eng eenzeg SĂ€it an all SĂ€iten spezifizĂ©iert, dĂ©i um Site fonnt ginn.

-s О -x - Optiounen fir spezifesch URLen ze addéieren oder ze lÀschen. Dës Optiounen sinn nëtzlech wann Dir eng spezifesch URL wÀrend dem Crawlprozess derbÀigesat oder ewechhuelt.

--sprangen - de spezifizéierte Parameter mat dësem Schlëssel gëtt gescannt, awer net attackéiert. Nëtzlech wann et geféierlech Parameteren sinn, déi am beschten ausgeschloss sinn beim Scannen.

--verify-ssl - aktivéiert oder deaktivéiert d'Zertifikaverifizéierung.
De Wapiti Scanner ass modulÀr. Wéi och ëmmer, fir spezifesch Moduler ze lancéieren, och déi, déi automatesch verbonne sinn, wÀhrend de Scanner leeft, musst Dir den -m Schalter benotzen an déi oplëschten, déi Dir braucht, getrennt vu Kommaen. Wann de Schlëssel net benotzt gëtt, funktionnéieren all Moduler als Standard. An der einfachster Versioun gesÀit et esou aus:

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

DĂ«st Benotzungsbeispill bedeit datt mir nĂ«mmen d'SQL, XSS an XXE Moduler benotze wann Dir d'Ziel scannen. ZousĂ€tzlech kĂ«nnt Dir d'Operatioun vu Moduler filteren ofhĂ€ngeg vun der gewĂ«nschter Method. Zum Beispill -m "xss: get, blindsql: post, xxe: post". An dĂ«sem Fall, de Modul xss gĂ«llen op Ufroe geschĂ©ckt mat der GET Method, an de Modul blibdsql - fir POST Ufroen, etc. Iwwregens, wann e Modul, deen an der LĂ«scht abegraff war, net gebraucht gouf beim Scannen oder ganz laang dauert, da kĂ«nnt Dir andeems Dir d'Ctrl+C Kombinatioun drĂ©ckt, iwwersprangen andeems Dir den aktuellen Modul benotzt andeems Dir dat entspriechend Element am interaktiven MenĂŒ auswielt.

Wapiti ënnerstëtzt Ufroen duerch e Proxy mat engem Schlëssel -p an Authentifikatioun op der Zil- Site duerch de Parameter -a. Dir kënnt och d'Authentifikatiounstyp uginn: Basis, Verdauung, Kerberos О NTLM. Déi lescht zwee kënnen d'Installatioun vun zousÀtzleche Moduler erfuerderen. ZousÀtzlech kënnt Dir all Header an Ufroe setzen (inklusiv arbitrÀr Benotzer Agent) a vill méi.

Fir d'Authentifikatioun ze benotzen, kënnt Dir den Tool benotzen wapiti-getcookie. Mat senger Hëllef bilden mir Cookie, déi Wapiti beim Scannen benotzt. Formatioun Cookie gemaach mam Kommando:

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

WÀrend interaktiv schaffe mir op Froen an weisen déi néideg Informatioune wéi Login, Passwuert asw.

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

D'Ausgab ass eng Datei am JSON Format. Eng aner Optioun ass all néideg Informatioun duerch de Parameter ze addéieren -d:

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

D'Resultat wÀert Àhnlech sinn:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

Wann Dir d'HaaptfunktionalitĂ©it vum Scanner berĂŒcksichtegt, war dĂ©i lescht Ufro fir d'Webapplikatioun an eisem Fall ze testen:

# 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

wou ënner anerem Parameteren:

-f О -o - Format a Wee fir de Bericht ze spÀicheren;

-m - all Moduler ze verbannen ass net recommandéiert, well wÀert TestzÀit a Berichtgréisst beaflossen;

--faarf - Highlight fonnt Schwachstelle ofhÀngeg vun hirer Kritik no Wapiti selwer;

-c - benotzt engem Fichier mat Cookie, generéiert benotzt wapiti-getcookie;

-- Ëmfang - d'Auswiel vun engem Zil fir Attack. Auswiel vun enger Optioun Dossier All URL gĂ«tt gekrabbelt an attackĂ©iert, ugefaange mat der Basis. D'Basis URL muss e Forward Slash hunn (kee Dateinumm);

--flush-Sessioun - erlaabt widderholl Scannen, an deem virdrun Resultater net berĂŒcksichtegt ginn;

-A - eegen Benotzer Agent;

-p - Proxy Server Adress, wann néideg.

E bëssen iwwer de Bericht

D'Scannenresultat gĂ«tt a Form vun engem detaillĂ©ierte Bericht iwwer all fonnt Schwachstelle am HTML SĂ€itformat presentĂ©iert, an enger kloerer an einfach ze liesen Form. De Bericht weist d'Kategorien an d'Zuel vun de Schwachstelle fonnt, hir Beschreiwungen, Ufroen, Kommandoen fir esouvill an Tipps wĂ©i se zoumaachen. Fir d'Navigatioun ze vereinfachen, gĂ«tt e Link op d'Kategoriennimm bĂ€igefĂŒĂŒgt, klickt op dĂ©i Dir dohinner kĂ«nnt:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

E wesentlechen Nodeel vum Bericht ass d'Feele vun enger Webapplikatiounskaart als solch, ouni déi et net kloer ass ob all Adressen a Parameteren analyséiert goufen. Et gëtt och eng Méiglechkeet vu falsche Positiven. An eisem Fall enthÀlt de Bericht "Backupdateien" an "potenziell geféierlech Dateien." Hir Zuel entsprécht net der Realitéit, well et keng esou Dateien um Server waren:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

VlÀicht falsch funktionéierend Moduler ginn iwwer ZÀit fixéiert. En aneren Nodeel vum Bericht ass de Mangel u Faarf vun de fonnte Schwachstelle (ofhÀngeg vun hirer Kritik), oder op d'mannst se a Kategorien opzedeelen. Deen eenzege Wee wéi mir indirekt d'Kritikitéit vun der fonnter Schwachstelle kënnen verstoen ass de Parameter ze benotzen --faarf wÀhrend dem Scannen, an da ginn d'Schwachstelle fonnt a verschiddene Faarwen faarweg:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

MÀ de Rapport selwer gëtt net esou Faarf.

Schwachstelle

SQLi

De Scanner huet deelweis mat der SQLi Sich gekëmmert. Wann Dir no SQL Schwachstelle sicht op SÀiten wou d'Authentifikatioun net erfuerderlech ass, entstinn keng Probleemer:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

Et war net méiglech eng Schwachstelle op SÀiten ze fannen, déi nëmmen no der Authentifikatioun zougÀnglech sinn, och mat valabel Cookie, well héchstwahrscheinlech no der erfollegrÀicher Authentifikatioun, hir Sessioun gëtt "ausgeloggt" an Cookie wÀert ongëlteg ginn. Wann d'Deautoriséierungsfunktioun als separat Skript ëmgesat gouf, verantwortlech fir d'Veraarbechtung vun dëser Prozedur, da wier et méiglech, se komplett duerch den -x Parameter auszeschléissen, an doduerch ze verhënneren datt se ausléisen. Soss ass et net méiglech seng Veraarbechtung auszeschléissen. Dëst ass net e Problem mat engem spezifesche Modul, mÀ mat der Outil als Ganzt, mÀ wéinst dëser Nuancen war et net méiglech e puer Injektiounen an engem zouenen Ressource BerÀich z'entdecken.

XSS

De Scanner huet déi gegebene Aufgab perfekt gepackt an huet all preparéiert Schwachstelle fonnt:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

LFI/RFI

De Scanner huet all déi ënnerierdesch Schwachstelle fonnt:

Wapiti - e Site iwwerpréift fir Schwachstelle eleng

Am Allgemengen, trotz falschen Positiven a fehlende Schwachstelle, weist Wapiti, als gratis Tool, zimlech gutt Leeschtungsresultater. Op alle Fall ass et derwÀert ze erkennen datt de Scanner zimlech mÀchteg, flexibel a multifunktionell ass, an am wichtegsten ass et gratis, sou datt et d'Recht huet fir Administrateuren an Entwéckler ze hëllefen Basisinformatioun iwwer de Sécherheetsstatus vun engem Web ze kréien Applikatioun.

Bleift gesond a geschĂŒtzt!

Source: will.com

Kaaft zouverlĂ€sseg Hosting fir Site mat DDoS Schutz, VPS VDS Server đŸ”„ Kaaft zouverlĂ©issegt WebsĂ€ithosting mat DDoS-Schutz, VPS VDS Server | ProHoster