owasp zap tutorial comprehensive review owasp zap tool
Tento výukový program vysvetľuje, čo je OWASP ZAP, ako to funguje, ako nainštalovať a nastaviť proxy server ZAP. Zahŕňa tiež ukážku overenia ZAP a správy používateľov:
Prečo používať ZAP na testovanie perom?
Aby bolo možné vyvinúť bezpečnú webovú aplikáciu, musí človek vedieť, ako na ne bude útočiť. Tu prichádza požiadavka na zabezpečenie webových aplikácií alebo na penetračné testovanie.
Z bezpečnostných dôvodov spoločnosti používajú platené nástroje, ale OWASP ZAP je skvelá alternatíva otvoreného zdroja, ktorá testerom uľahčuje testovanie penetrácie.
Čo sa dozviete:
- Čo je OWASP ZAP?
- Ako funguje ZAP?
- ZAP autentifikácia, relácia a správa používateľov
- Ukážka správy Html ZAP
- Záver
Čo je OWASP ZAP?
Penetračné testovanie pomáha pri hľadaní zraniteľností skôr, ako to urobí útočník. OSWAP ZAP je bezplatný nástroj otvoreného zdroja a používa sa na vykonávanie penetračných testov. Hlavným cieľom spoločnosti Zap je umožniť ľahké penetračné testovanie s cieľom nájsť chyby vo webových aplikáciách.
Výhody ZAP:
- Zap poskytuje viac platforiem, to znamená, že funguje na všetkých OS (Linux, Mac, Windows)
- Zap je opakovane použiteľný
- Môže generovať prehľady
- Ideálne pre začiatočníkov
- Nástroj zadarmo
Ako funguje ZAP?
ZAP vytvára proxy server a zaisťuje prenos webovej stránky cez server. Používanie automatických skenerov v ZAP pomáha zachytiť zraniteľné miesta na webe.
Pre lepšie pochopenie si pozrite tento vývojový diagram:
Ako otvorím súbor bin
Terminológie ZAP
Pred konfiguráciou nastavenia ZAP si prečítajte niektoré terminológie ZAP:
# 1) Relácia : Relácia jednoducho znamená prechádzať webovou stránkou a identifikovať oblasť útoku. Na tento účel je možné použiť akýkoľvek prehliadač, ako je Mozilla Firefox, zmenou nastavení servera proxy. Alebo môžeme uložiť reláciu Zap ako .session a môžeme ju znova použiť.
# 2) Kontext: Znamená to webovú aplikáciu alebo súbor adries URL súčasne. Kontext vytvorený v ZAP zaútočí na zadaný a zvyšok bude ignorovať, aby sa zabránilo príliš veľkému množstvu údajov.
# 3) Typy útokov ZAP: Správu o zraniteľnosti môžete vygenerovať pomocou rôznych typov útokov ZAP zasiahnutím a skenovaním adresy URL.
Aktívne skenovanie: Aktívne skenovanie môžeme vykonať pomocou programu Zap mnohými spôsobmi. Prvou možnosťou je Rýchly štart, ktorá sa nachádza na uvítacej stránke nástroja ZAP. Prečítajte si nasledujúcu snímku obrazovky:
Rýchly štart 1
Vyššie uvedená snímka obrazovky zobrazuje najrýchlejší spôsob, ako začať so ZAP. Zadajte adresu URL na karte Rýchly štart, stlačte tlačidlo Útok a potom začne pokrok.
Rýchly štart spustí pavúka na zadanej adrese URL a potom spustí aktívny skener. Pavúk prehľadáva všetky stránky počnúc zadanou adresou URL. Presnejšie povedané, stránka Rýchly štart je ako „ukáž a vystreľ“.
Rýchly štart 2
Tu sa po nastavení cieľovej adresy URL spustí útok. Stav priebehu môžete vidieť ako prehľadávanie adresy URL na objavovanie obsahu. Ak to trvá príliš dlho, môžeme útok manuálne zastaviť.
Ďalšou možnosťou pre Aktívne skenovanie je, že môžeme získať prístup k adrese URL v prehliadači proxy ZAP, pretože Zap ju automaticky zistí. Po kliknutí pravým tlačidlom myši na URL -> sa spustí Aktívna kontrola. Po dokončení indexového prehľadávania sa spustí aktívna kontrola.
Priebeh útoku sa zobrazí na karte Aktívna kontrola. a karta Pavúk zobrazí adresu URL zoznamu so scenármi útoku. Po dokončení aktívneho prehľadávania sa výsledky zobrazia na karte Výstrahy.
Skontrolujte nasledujúcu snímku obrazovky Aktívne skenovanie 1 a Aktívne skenovanie 2 pre jasné pochopenie.
Aktívne skenovanie 1
Aktívne skenovanie 2
# 4) Pavúk: Spider identifikuje URL na webe, skontroluje hypertextové odkazy a pridá ho do zoznamu.
# 5) Ajax Spider: V prípade, že naša aplikácia vo veľkej miere využíva JavaScript, použite na preskúmanie aplikácie AJAX spider.Vysvetlím Ajax pavúk podrobne v mojom ďalšom návode.
# 6) Výstrahy : Zraniteľnosti webových stránok sú označené ako vysoké, stredné a nízke výstrahy.
Inštalácia ZAP
Teraz pochopíme nastavenie inštalácie ZAP. Najskôr si stiahnite Zap inštalácia . Pretože používam Windows 10, stiahol som si podľa toho 64-bitový inštalátor Windows.
Predpoklady pre inštaláciu Zap: Vyžaduje sa Java 7. Ak vo svojom systéme nemáte nainštalovaný program Java, najskôr si ho kúpte. Potom môžeme spustiť ZAP.
Nastavte prehliadač ZAP
Najskôr zatvorte všetky aktívne relácie prehliadača Firefox.
Spustite nástroj Zap >> choďte do ponuky Nástroje >> vyberte možnosti >> vyberte Local Proxy >> tam môžeme vidieť adresu ako localhost (127.0.0.1) a port ako 8080, môžeme zmeniť na iný port, ak už používa, povedzme, že sa mením na 8099. Skontrolujte snímku obrazovky nižšie:
Lokálny proxy v Zap 1
Teraz otvorte Mozilla Firefox >> vyberte možnosti >> záložka >> v tom vyberte Sieť >> Nastavenia pripojenia >> vyberte možnosť Ručná konfigurácia proxy. Použite rovnaký port ako v nástroji Zap. V ZAP som sa manuálne zmenil na 8099 a použil som to isté aj v prehliadači Firefox. Skontrolujte nasledujúcu snímku obrazovky s konfiguráciou prehliadača Firefox nastavenou ako prehliadač proxy.
Nastavenie proxy prehliadača Firefox 1
Pokúste sa pripojiť svoju aplikáciu pomocou prehliadača. Tu som sa pokúsil pripojiť Facebook a hovorí, že vaše pripojenie nie je zabezpečené. Musíte teda pridať výnimku a potom potvrdiť bezpečnostnú výnimku pre navigáciu na stránku Facebook. Prečítajte si screenshoty nižšie:
Prístup na webovú stránku - proxy prehliadač 1
Prístup na webovú stránku - proxy prehliadač 2
Prejdite na webovú stránku - proxy prehliadač 3
Zároveň na karte Weby spoločnosti Zap skontrolujte vytvorenú novú reláciu pre stránku Facebook. Po úspešnom pripojení vašej aplikácie môžete vidieť viac riadkov na karte histórie ZAP.
Zvyčajne poskytujú ďalšie funkcie, ku ktorým máte prístup pravým tlačidlom myši, ako napríklad
Kliknite pravým tlačidlom myši na >> HTML >> aktívne skenovanie, potom prep vykoná aktívne skenovanie a zobrazí výsledky.
Ak svoju aplikáciu nemôžete pripojiť pomocou prehliadača, znova skontrolujte nastavenia servera proxy. Budete musieť skontrolovať nastavenia prehľadávača aj proxy servera ZAP.
Generovanie správ v ZAP
Po dokončení aktívneho prehľadávania môžeme generovať správy. Za týmto účelom kliknite na OWASP ZAP >> Správa >> generovanie správ HTML >> poskytnutá cesta k súboru >> export správy o skenovaní. Musíme správy preskúmať, aby sme identifikovali všetky možné hrozby, a zabezpečiť ich opravu.
ZAP autentifikácia, relácia a správa používateľov
Prejdime k ďalšej funkcii Zap, ktorá sa zaoberá autentifikáciou, správou relácií a používateľov. Prosím, dajte mi vedieť akýkoľvek dotaz, ktorý vás v súvislosti s tým napadne, ako komentár.
Základné pojmy
- Kontext : Predstavuje webovú aplikáciu alebo skupinu adries URL súčasne. Pre daný kontext sa pridávajú nové karty na prispôsobenie a konfiguráciu procesu autentifikácie a správy relácie. Možnosti sú k dispozícii v dialógovom okne vlastností relácie. Tj. Dialógové okno Vlastnosti relácie -> Kontext -> môžete buď použiť predvolenú možnosť, alebo pridať nový názov kontextu.
- Metóda riadenia relácie: Existujú 2 typy metód správy relácie. Väčšinou sa používa správa relácií založená na súboroch cookie, spojená s kontextom.
- Metóda autentifikácie: ZAP používa hlavne 3 typy metódy Auth:
- Metóda overovania na základe formulára
- Ručné overenie
- Overenie HTTP
- Správa užívateľov: Po nakonfigurovaní schémy autentifikácie je možné pre každý kontext definovať skupinu používateľov. Títo používatelia sa používajú na rôzne akcie ( Napríklad, Spider URL / Context as User Y, send all requests as User X). Čoskoro bude poskytnutých viac akcií, ktoré využijú používateľov.
Implementuje sa rozšírenie „Forced-User“, ktoré nahradzuje staré rozšírenie autentifikácie, ktoré vykonávalo opätovné overenie. Na paneli nástrojov je teraz k dispozícii režim „Nútený používateľ“ (rovnaká ikona ako staré rozšírenie na overenie).
Po nastavení používateľa ako „Forced-User“ pre daný kontext alebo po jeho povolení sa každá žiadosť odoslaná prostredníctvom ZAP automaticky upraví tak, aby bola odoslaná pre tohto používateľa. Tento režim tiež vykonáva opätovné overenie automaticky (najmä v spojení s overovaním na základe formulára), ak chýba overenie, zistí sa „odhlásené“.
Pozrime sa na ukážku:
Krok 1:
Najskôr spustite ZAP a vstúpte do URL v prehliadači proxy. Tu som vzal vzorovú adresu URL ako https://tmf-uat.iptquote.com/login.php . Kliknite na Rozšírené -> pridať výnimku -> potvrdiť bezpečnostnú výnimku ako na stranách 6 a 7. Potom sa zobrazí vstupná stránka. Zároveň ZAP automaticky načíta webovú stránku v časti Webové stránky ako novú reláciu. Pozrite si nasledujúci obrázok.
Krok 2:
Zahrňte to do kontextu. Môžete to urobiť buď zahrnutím do predvoleného kontextu, alebo ho pridať ako nový kontext. Pozrite si nasledujúci obrázok.
Krok 3:
Teraz je na rade metóda Authentication. Autentifikáciu môžete vidieť v samotnom dialógovom okne vlastností relácie. Tu používame metódu Auth na základe formulára.
Malo by to byť ako authMethodParams ako „ prihlasovacia adresa URL = https: //tmf-uat.iptquote.com/login.php&loginRequestData=username=superadmin&password=primo868&proceed=login ”
V našom príklade musíme nastaviť metódu overovania na základe formulára. Za týmto účelom vyberte cieľovú adresu URL, pole s požiadavkami na prihlásenie sa predvyplní, potom zmeňte parameter ako používateľské meno a heslo -> kliknite na tlačidlo OK .
Krok 4:
Teraz nastavte indikátory, ktoré oznámia ZAP, keď bude autentizovaný.
Indikátory prihláseného a odhláseného:
- Je potrebný iba jeden
- Môžeme nastaviť vzory regulárneho výrazu zodpovedajúce odpovedi, je potrebné nastaviť indikátor prihlásenia alebo odhlásenia.
- Zistite, či je odpoveď autentifikovaná alebo kedy nie.
- Príklad indikátora prihlásenia: Qhttp: // príklad / odhlásenie E alebo Vitajte. *
- Príklad indikátora Odhlásený: login.jsp alebo niečo podobné.
Tu, v našej ukážkovej aplikácii, som pristúpil na adresu URL v prehliadači proxy. Prihlásený do aplikácie pomocou platného poverenia, používateľské meno ako superadmin a heslo ako primo868. Prejdite vnútornými stránkami a kliknite na odhlásenie
Na obrázku 3 môžete vidieť, že program Zap berie údaje žiadosti o prihlásenie ako údaje použité na prihlásenie do aplikácie TMF (prihlásenie ukážkovej aplikácie).
Nahlásiť prihlásený vzor Regex z odpovede ZAP ako odpoveď -> odhlásená odpoveď -> označiť ako prihlásený v indikátore. Odkazujú na snímka obrazovky nižšie
Krok 5:
Môžeme indikátor uložiť a overiť, či sa dialógové okno vlastností relácie pridá k prihlásenému indikátoru alebo nie. Pozri snímku obrazovky nižšie:
Krok 6:
Musíme pridať používateľov, platných a neplatných používateľov. Použite útoky pavúkov na obidve a analyzujte výsledky.
Platný užívateľ:
Neplatný užívateľ:
ako otvárať súbory jar v systéme Windows
Krok 7:
Predvolene nastavte správu relácie ako metódu založenú na súboroch cookie.
Krok 8:
Útok Spider URL sa použije na neplatných a platných používateľov a kontroluje výsledky / generuje prehľady.
Neplatný názor na útok pavúka používateľa 1:
Tu sa na neplatného používateľa použije útok spider URL. V rozhraní ZAP môžeme vidieť Get: login.php (chyba _message), čo znamená, že autentifikácia zlyhala. Taktiež neprechádza adresy URL cez vnútorné stránky TMF.
Krok 9:
Ak chcete použiť útok spider URL na platného používateľa, prejdite na zoznam webov -> útok -> spider URL -> existujúci platný používateľ -> tu je to predvolene povolené -> začať skenovať.
Analýza výsledkov: Pretože je to platný overený používateľ, bude prechádzať všetkými vnútornými stránkami a zobrazí stav overenia ako úspešný. Pozri snímku obrazovky nižšie.
Platný používateľ
Ukážka správy Html ZAP
Po dokončení aktívneho skenovania môžeme pre rovnaké súbory vygenerovať správu HTML. Vyberte možnosť Správa -> Generovať správu HTML. Priložil som ukážkový obsah správ HTML. Tu sa vygenerujú správy o vysokých, stredných a nízkych výstrahách.
Výstrahy
Záver
V tomto tutoriáli sme videli, čo je ZAP, ako funguje ZAP, inštalácia a nastavenie proxy ZAP. Rôzne typy procesov aktívneho skenovania, ukážka autentifikácie ZAP, správa relácií a používateľov a základné terminológie. V mojom ďalšom návode vysvetlím útok Ajax spider, použitie fuzzerov, vynútené prehliadanie stránok.
A ak ste použili proxy server na útok Zed a máte nejaké zaujímavé tipy na zdieľanie, zdieľajte ich v komentároch nižšie.
Referencie:
Odporúčané čítanie
- Praktický prehľad nástroja na správu testov PractiTest
- Recenzia nástroja TestLodge na správu testov
- Výukový program TestComplete: Komplexná príručka nástroja na testovanie grafického používateľského rozhrania pre začiatočníkov
- Backlog Tool Tracking Tool Hands-on Review Tutorial
- Výukový program Bugzilla: Výukový program pre nástroj na správu chýb
- Ako testovať výkonnosť webových stránok pomocou nástroja SmartMeter.io: Výukový program pre praktické kontroly
- Výukový program pre testovanie prístupnosti WAVE
- Praktická kontrola nástroja na správu testov qTest