← Prehľad cvičení · Predchádzajúce cvičenie · Nasledujúce cvičenie
Vyhodnotiť nálezy skenovania zraniteľností a navrhnúť ich nápravu.
Alternatívna topológia pre Cisco
V tomto cvičení budete pracovať s nástrojmi, ktoré slúžia na skenovanie zraniteľnosti. V prvej úlohe si predstavíme nástroj owasp-zap, ktorý slúži na zisťovanie webových zraniteľnosti. Tento nástroj použijeme na zraniteľnú webovú aplikáciu **Mutillidae. **Ako ďalší nástroj použijete webový skener **nikto. **Následne použijete nástroj nmap a skript vuln, ktorý slúži na skenovanie zraniteľnosti. Pomocou skriptu vuln zistíte zraniteľnosti na zariadení **Metasploit **a v ďalšom cvičení využijete zraniteľnosti, ktoré ste našli.
V druhej časti cvičenia budete v pozícií bezpečnostného analytika, kde vašou úlohou bude analyzovať skenovanie a s nimi spojené útoky vykonané v prvej časti, zistiť o útokoch a skenovaní informácie, a napokon výsledky vedieť vyhodnocovať. Pracovať budete na zariadení Security Onion a s jeho nástrojmi, **snort **a zeek, ktoré už s predošlých cvičení poznáte, ale aj s novými nástrojmi ako **sguil **a kibana. V samotnom závere sa pozriete na prevenciu niektorých zraniteľností zariadenia Metasploitable.
Počas Cvičenie 1 - Základná konfigurácia a práca so zariadeniami ste nakonfigurovali zariadenie SecurityOnion-Realtime pre sledovanie prevádzky na rozhraní eth0. Toto sledovanie je riešené zapnutými nástrojmi Snort a Zeek na rozhraní eth0 (sensor seconion-eth0) pričom tieto nástroje ďalej spracúvajú ďalšie nástroje ako Sguil a Kibana.
Topológia v GNS3 alebo virtuálne zariadenia vo VirtualBox-e
Úspešne nakonfigurovaný sosetup pre zariadenie SecurityOnion-Realtime (konfigurované počas 1. cvičenia Konfigurovanie siete zariadenia SecurityOnion-Realtime
Názov |
Meno |
Heslo |
Kali Linux * |
<kali user> |
<kali password> |
Metasploitable |
msfadmin |
msfadmin |
SecurityOnion-Realtime * |
<securityonion user> |
<securityonion password> |
SecurityOnion-Cyberops |
analyst |
cyberops |
OpenWRT |
root |
|
OpenvSwitch |
root |
|
GVM |
admin |
admin |
Cisco 2691 |
(bez mena) |
(bez hesla) |
* - zariadenie má používateľa a heslo ktorého vytvoril študent počas cvičenia 1 v časti Zmena username
Troubleshooting problémov s eth0:
Ak narazíte na problémy s port mirroringom medzi SecurityOnion-Realtime a Metasploitable, alebo vám nefunguje port eth0 prejdite si znova tieto kroky z prvého cvičenia:
Nakoľko následovná časť môže byť časovo náročnejšia so slabším PC, ak pracujete lokálne a máte možnosť navýšenia zdrojov pre jednotlivé VMs(cpu,ram), navýšte ich v rámci možností na zariadeniach SecurityOnion,Kali
V tejto časti si vyskúšate prácu so skenovacími zariadeniami owasp-zap, nikto a použijete nmap so skriptom vuln. Skenovanie budete smerovať z Kali Linux na Metaspoitable. Pred tým, ako začnete skenovať s nástrojmi nikto, nmap a owasp-zap, spustite zariadenia Metasploitable a Security Onion. Na zariadení SecurityOnion-Realtime spustite nástroj sguil. Ikona nástroja sguil sa nachádza na pracovnej ploche zariadenia. Kliknite dva krát na danú ikonu a zadajte prihlasovacie meno a heslo, ktoré ste pri Security Onion Setup-e zvolili a kliknite na „Ok“.
Následne vyberáte rozhrania pre monitorovanie, kde môžete vybrať obidva z dostupných rozhraní, ale hlavné je aby bolo vybrané seconion-eth0. Môžete teda zvoliť Select All a zapnúť sguil cez Start SGUIL.
V časti 3. budete analyzovať skenovacie útoky z pohľadu bezpečnostného analytika na jednotlivých nástrojoch, ktoré ste ešte pred skenovaním zapli.
Niektoré skeny v bodoch 1.-3. sú časovo náročnejšie, hlavne skenovanie pomocou skriptu vuln v nmap-e, a tiež skenovanie s nástrojom owasp-zap. Preto počas vykonávania týchto skenov, namiesto čakania na ich koniec, môžete prejsť na 3. časť a analyzovať priebežne ich detekciu na zariadení Security Onion.
Ak pracujete vo VirtualBox-e, skenovanie v tejto časti vykonajte aj na IP adresu pre Security Onion, nie len pre Metasploitable. A to z toho dôvodu, aby ste mohli vykonávať časť 2., analýzu detekcie skenovania s nástrojmi Security Onion-u. Taktiež zariadenia snort a zeek spustite na rozhraní, ktoré používa Security Onion ako manažovacie, aby ste mohli analyzovať útoky a skenovania voči samotnému Security Onion-u.
Pred začatím vypracovávania samotného cvika odporúčame skontrolovať funkčnosť sguil a kibany 4.11 Overenie konfigurácie sosetup**
**
Túto časť vykonávajte na zariadení Kali Linux.
Skenovanie webových zraniteľností pomocou nástroja owasp-zap
Spustime aplikáciu owasp-zap: Vľavo hore Applications -> 03 - Web Application Analysis -> zap:
ak vám tento nástroj chýba, doinštalujte si ho pomocou príkazu:
sudo apt install zaproxy
Následne dajte **Start **
Kliknite na **Automated Scan
**
**
**
Do URL adresy zadajte:
http://<IP adresa metasploitable>/mutillidae/
Pozn.: miesto <IP adresa metasploitable> vložte IP adresu Metasploitable
Dajte Attack
V prípade že vám scan v progrese crashuje VM, môže byť problém s rozšírením Cross Site Scripting - DOM Based (viete si overiť počas scanu v scan progress details).
Navigujte do tools>options>extensions>do vyhľadávacieho poľa napíšte dom>disable>ok>reštartujte program.
Výsledky skenovania môžete vidieť, keď kliknete na tlačidlo Alerts
pozn.: ak vám scan trvá príliš dlho, môžete si ho pozastaviť a pokračovať ďalej, neskôr sa k nemu vrátite.
Následne si môžete kliknúť na konkrétnu nájdenú zraniteľnosť:
Výsledok skenovania si môžete uložiť ako report:;
Vygenerujte si HTML Report
Skenovanie zraniteľnosti pomocou nástroja nikto
Otvorte terminál a zadajte príkaz: nikto -h
Vytvorte si priečinok ScanningVulnerabilities do Documents adresára vášho užívateľa ~/Documents
mkdir ~/Documents/ScanningVulnerabilities
Choďte do priečinka ~/Documents/ScanningVulnerabilities a spustite skenovanie nikto ako root s oboma prepínačmi naraz:
sudo nikto -h <IP adresa metasploitable> -output nikto_scan.txt
Pozn.: miesto <IP adresa metasploitable> vložte IP adresu Metasploitable
Výsledok skenovania sa vám uloží do súboru nikto_scan.txt
Otvorte si prehliadač na svojom počítači
Zraniteľnosti, ktoré ste našli, si však môžete pozrieť na stránke:
Taktiež pre viacej informácií o zraniteľnosti, môžete skopírovať jej referenčné OVSBD číslo a vyhľadať info na internete
Následne použite nastroj nikto a spustite skenovanie na stránku mutillidae zariadenia metasploitable a výsledok uložte do súboru nikto_scan_mutillidae.txt
nikto -h http://<IP adresa metasploitable>/mutillidae -output nikto_scan_mutillidae.txt
Pozn.: miesto <IP adresa metasploitable> vložte IP adresu Metasploitable
Skenovanie zraniteľností pomocou nástroja nmap
Otvorte si terminál a použite nástroj nmap ako root so skriptov vuln, ktorý slúži na zisťovanie zraniteľnosti a skenovanie si uložte do súboru. Použite jednotlivé argumenty, ktoré použijete naraz v jednom príkaze:
sudo nmap <IP adresa metasploitable> --script=vuln -o meno_suboru
Pozn.: miesto <IP adresa metasploitable> vložte IP adresu Metasploitable
Vo výsledku si všimnite zraniteľnosť na porte 21:
Otvorte si prehliadač na svojom PC a prejdite na stránku: CVE - Search CVE List
Vložte tam túto zraniteľnosť, ktorú ste našli na porte 21/tcp: CVE-2011-2523
Na ďalšom cvičení túto zraniteľnosť využijete pomocou nástroja metasploit
V tejto časti budete pracovať v roli bezpečnostného analytika, ktorého úlohou je, aby detegoval a zachytil neoprávnené útoky a skenovania. Budete pracovať s nástrojmi, ktoré dokážu zachytiť útoky a skenovania, a následne ich spracovať, vyhodnotiť. Nástroje, ktoré budete používať v tejto časti zahŕňajú: zeek, snort, sguil a kibana.
„Sguil (pronounced sgweel) is built by network security analysts for network security analysts. Sguil's main component is an intuitive GUI that provides access to realtime events, session data, and raw packet captures. Sguil facilitates the practice of Network Security Monitoring and event driven analysis. The Sguil client is written in tcl/tk and can be run on any operating system that supports tcl/tk (including Linux, *BSD, Solaris, MacOS, and Win32).“
„Kibana is an open source browser based visualization tool mainly used to analyze large volume of logs in the form of line graph, bar graph, pie charts, heat maps, region maps, coordinate maps, gauge, goals, timelion etc. The visualization makes it easy to predict or to see the changes in trends of errors or other significant events of the input source.“
Sguil - Analýza
Prezrite si hlásenia, ktoré vám sguil vygeneroval v rámci uskutočneného skenovania
Identifikujte hlásenia, ktoré sa týkajú skenovania z Kali Linux-u voči Metasploitable.
Podľa čoho dokážete identifikovať dané hlásenia?
Preskúmajte konkrétne hlásenie
V tomto bode si preskúmate konkrétne hlásenie vygenerované nástrojom sguil. Jedná sa o hlásenie vygenerované počas skenovania s nástrojom owasp-zap. Hlásenie sa týka webového útoku XXE (xml external entity)
Dané hlásenie bude vygenerované na základe skenovania nástrojom owas-zap, a teda je potrebné, aby tento skener bol zapnutý dostatočne dlho, najlepšie až do ukončenia jeho skenovania, aby bolo dané hlásenie vygenerované v sguil-e
Ak sa vám daný alert nevygeneruje, alebo nechcete čakať príliš dlho na dokončenie scanu, analyzujte iný alert.
V pravej dolnej časti sguil-u, zaškrtnite polia Show Packet Data a Show Rule, pre zobrazenie hlásenia podrobnejšie
Všimnite si, že IDS pravidlá zistili prítomnosť webového útoku XXE na základe toho, že žiadosti odosielané na Metaspoitable, v rámci tohto útoku, obsahujú v tele žiadosti kľúčové slová **SYSTEM **a ENTITY. Pri webovom útoku XXE sa tieto príkazy zadávajú ako súčasť škodlivého kódu
Kliknite pravým tlačidlom myši na danú hlášku v squil-e a vyberte možnosť **Transcript
**
**
**
Otvorí sa vám nové okno, v ktorom žiadosti na Metasploitable server sú modrou a odpovede sú červenou. Nájdite žiadosť v ktorej nájdete v tele príkazy **SYSTEM **a **ENTITY. **Jedná sa konkrétne o XXE webový útok, ktorý sa snaží zobraziť obsah súboru **/etc/passwd **na zariadení Metasploitable. Skúste túto žiadosť nájsť aj u seba. Skúste odpovedať, či bol daný útok úspešný alebo nie.
Podobnou logikou preskúmajte aj ďalšie vygenerované hlásenia, ktoré boli identifikované sguil-om počas skenovania zariadenia Metasploitable
Kibana - Analýza
Na pracovnej ploche sa nachádza ikona tohto nástroja, spustite nástroj. Otvorí sa vám webový prehliadač v ktorom sa vám spustí Kibana. Prihláste sa rovnakými prihlasovacími údajmi ako do sguil-u. Otvorí sa vám Dashboard, kde v ľavom **Navigation **poli si vyberte NIDS (Network Intrusion Detection System), ktorý slúži práve na zachytávanie útokov a skenovaní pre naše monitorovacie rozhranie eth0
Vpravo hore si všimnite pole NIDS – Alerts Over Time, v ktorom nájdete časovú os zobrazujúcu počet zachytených hlásení v závislosti od času. Ako analytik viete teda určiť čas útokov a skenovaní, a tiež celkový počet vygenerovaných hlásení s nimi spojenými. Váš graf sa bude líšiť od grafu na obrázku nižšie, keďže časť 1. v tomto cvičení môžete vykonávať v inom časovom intervale
Ďalej na tej istej stránke nájdete v poli NIDS Alerts - Category histogram, zobrazujúci typ hlášok a ich pomer. Keďže v našom prípade, v časti 1. v cvičení sme vykonávali hlavne skenovanie, môžeme vidieť aj na grafe, že hlášky spojené práve so skenovaním boli identifikované najviac. Ďalej prevládajú hlášky spojené s webovým serverom. Viete povedať prečo je tomu tak? Čo iné zaujímavé ste si všimli?
V poli **NIDS – Alert Summary **môžete vidieť početnosť pre jednotlivé kategórie hlásení ako aj cieľovú IP adresu a zdrojovú IP adresu. Viete teda ako bezpečnostný analytik určiť IP adresu útočníka a tiež IP adresu servera, na ktorý smeruje svoje útoky, a na základe týchto informácií môžete útočníkovu IP adresu zablokovať. Na základe vašich pozorovaní z výstupu v tomto poli Alert Summary, ktoré kategórie hlásení dominujú a prečo? Pozrite sa aj na ďalšie hlášky a ich početnosti.
V dolnej časti nájdete NIDS – Alerts v ktorej nájdete samotné hlásenia zobrazené od najskorších.
Kliknite na trojuholník nachádzajúci sa na ľavej strane vedľa času vášho hlásenie, ktoré je na najvyššom mieste. Takto si otvoríte vaše hlásenie a dozviete sa o ňom podrobnejšie informácie, ako napríklad: názov hlásenia, kategóriu, klasifikáciu, typ eventu a správu hlásenia. Aké informácie ste sa dozvedeli z vášho konkrétneho hlásenia?
Podobne ako útočník, aj analytik môže použiť rovnaké nástroje, pre vyhľadanie sieťových zraniteľností. Analytik môže následne prijať opatrenia, ktorými bude predchádzať zneužitiu týchto zraniteľností.
Zvoľte postup na odstránenie zraniteľnosti:
Otvorte konzolu zariadenia Metasploitable
Zablokujte otvorený port
Ak chceme zablokovať FTP prístup úplne na serveri
iptables -A INPUT -p tcp --dport 21 -j DROP
Ak chceme zablokovať len konkrétnu ip adresu
iptables -A INPUT -p tcp -s <ip address> --dport 21 -j DROP
Ak chceme zablokovať celý subnet
iptables -I INPUT -p tcp -s <ip address / netmask> --dport 21 -j DROP
Po aplikovaní pravidiel treba uložiť a resetovať iptables
/etc/init.d/iptables save
/etc/init.d/iptables restart
novšie verzie metasploitable majú iný príkaz
/sbin/iptables-save
/sbin/iptables-restore
Aké iné bezpečnostné opatrenia by bolo možné nasadiť, na mitigáciu daných zraniteľností?
V tomto cvičení sme si ukázali vulnerability scany pomocou nástrojov owasp-zap, nikto a nmap. Nasledovne sme analyzovali tieto útoky/skeny pomocou nástrojov Sguil a Kibana.
Zistenia:
Nástroje Sguil a Kibana slúžia ako grafické nástroje zobrazujúce jednotlivé dáta zo siete/zariadení slúžiace pre analytika
Vulnerability skeny slúžia pre zistenie zraniteľností zariadení/systému pričom v rukách útočníka vedia poslúžiť ako nástroj k vyhľadaniu zraniteľností
Akým spôsobom možno predísť vulnerability scanom?
Aký je rozdiel medzi HIDS a NIDS?
Je zabránenie prístupu útočníka do siete pomocou firewallu s jednoduchým pravidlom zabránenia prístupu z IP adresy (ACL) dostatočný obranný mechanizmus?
← Prehľad cvičení · Predchádzajúce cvičenie · Nasledujúce cvičenie