Penetrační testování se v průběhu času mění. Když se tato specializace v oblasti ofenzivní bezpečnosti rozvíjela, byl zřetelný velký posun od manuálních metod k využívání různých nástrojů – a většina z nich byla open source.
Testujete svůj síťový perimetr?
Následně se samotné penetrační testování rozdělilo na několik specializací, od sítí přes webové aplikace až po sociální inženýrství a cloud.
Pro osoby vykonávající penetrační testování (pentestéři) není stanovení nejlepších nástrojů používaných ve všech oblastech snadné, protože každý pentestér může mít specifickou sadu nástrojů, která je vhodná pro konkrétní platformu.
Penetrační testování zahrnuje, v závislosti na metodologii, řadu fází včetně (avšak nejen) průzkumu, zaznamenání unikátních identifikátorů ekvivalentních otiskům prstů (tzv. fingerprinting), získávání a udržování přístupu, vyhýbání se obraně, zakrývání stop, eskalace privilegií a exfiltrace dat. A každá z nich má své vlastní specializované řešení.
Nástroje na výbornou
Než se zaměříme na konkrétní řešení pro podporu penetračního testování, je nutné připomenout fakt, že veškerou činnost okolo tohoto typu testů je nezbytné vykonávat zodpovědně.
To, že cíl existuje, ještě neznamená, že ho smíme testovat. Tyto nástroje nejsou pouhé skvělé hračky pro technické nadšence, ale jsou to v konečném důsledku svých schopností doslova skutečné zbraně.
Pokud si je tedy chcete sami zkoušet, zajistěte si pro tento účel laboratorní prostředí, nad kterým budete schopní udržet potřebnou kontrolu, nebo využijte služby jako např. DVWA (Damn Vulnerable Web Application) či Hackazon.
Ty jsou záměrně vytvořené tak, aby byly zranitelné, takže si na nich můžete otestovat svou reálnou schopnost najít známé slabiny a využít je.
Nedávno se objevilo také několik podnikových a automatizovaných nástrojů, ale ty vyžadují licence a jsou poměrně drahé.
Na základě nejširšího použití a renomé jsme vybrali níže uvedených deset open source nástrojů, které nabízejí výborné užitné vlastnosti, a to podle jejich relativní důležitosti – od těch specializovaných až po ty, které musí mít každý penetrační testér.
* Aircrack-ng
Tento úctyhodný nástroj je šampionem těžké váhy ve světě bezdrátových penetračních testů (pentestů). Aircrack-ng nabízí hned několik funkcí, přičemž se zaměřuje na oblasti zabezpečení Wi-Fi, jako je monitorování, zahájení tajných útoků, přísné testování obrany a snadné prolamování odolných klíčů WPA.
Primárním využitím nástrojů Aircrack-ng je identifikovat a využít zranitelnosti v sítích Wi-Fi, zejména se zaměřením na bezpečnostní protokoly WEP a WPA/WPA2-PSK. Funguje tak, že zachytí síťové pakety a poté použije různé algoritmy k dešifrování klíčů používaných k zabezpečení bezdrátových sítí.
Zahrnuje také Airmon-ng k přepnutí vaší bezdrátové karty do monitorovacího režimu, dále Airodump-ng k zachycování paketů a také Aireplay-ng ke generování provozu a vyvolání podmínek vhodných pro analýzu sítě a útoky.
Tento nástroj široce používají správci sítí k hodnocení bezpečnosti. Odborníci na kybernetickou bezpečnost a etičtí hackeři ho užívají k testování odolnosti bezdrátových sítí proti neoprávněnému přístupu a dalším bezpečnostním hrozbám.
· SQLmap
SQLmap je ve sféře pentestů už veteránem a v oblasti plné neustále se vyvíjejících hrozeb nejen přežívá, ale doslova prosperuje. Automatizuje proces detekce a zneužívání zranitelností SQL injection (SQLi) ve webových aplikacích.
SQLmap funguje tak, že do cílové webové aplikace zasílá různé typy požadavků a analyzuje odpovědi s cílem zjistit potenciální zranitelnosti.
Jakmile SQLmap rozpozná chybu SQL injection, lze ho použít k extrahování dat z databáze, k získání administrativního přístupu k databázi, a dokonce ke spouštění vzdálených příkazů na serveru.
Podporuje širokou řadu databází a obsahuje mnoho funkcí pro pokročilou manipulaci a přizpůsobení útoků SQL injection, což z něj činí vysoce účinný nástroj pro hodnocení bezpečnosti webových aplikací, které komunikují s databázemi.
Je sice starší, ale nenechte se tím mýlit – stále jde o významný nástroj pro penetrační testy. Nevíte proč? Protože zranitelnost prostřednictvím útoků SQL injection (SQLi) i v letošním roce trápí digitální svět, a toto je jeden z těch vzácných nástrojů, které řeší problém SQLi přímo, aniž to musíte ručně hluboce zkoumat.
· ZAP (Zed Attack Proxy)
Vítejte ve světě tajné zbraně penetračního testování webových aplikací. Nástroj ZAP, dříve známý jako OWASP ZAP, možná už nemá prestiž obecně známého jména, ale v kruzích válečníků na poli webových aplikací je ekvivalentem toho, čím je nástroj Nessus v oblasti zabezpečení sítí.
Jde o open source skener zabezpečení webových aplikací navržený tak, aby pomohl automaticky najít bezpečnostní zranitelnosti webových aplikací, když je vyvíjíte a testujete.
Tento nástroj funguje jako zachycovací proxy s umístěním mezi vaším prohlížečem a webovou aplikací, takže dokáže kontrolovat a manipulovat s provozem směřujícím na web a z něj. To umožňuje nástroji ZAP identifikovat problémy, jako je pokažené řízení přístupu, nezabezpečené konfigurace a další zranitelnosti.
Nárůst jeho popularity pramení z toho, že je uživatelsky přívětivý a efektivní jak pro začátečníky v oblasti zabezpečení aplikací, tak i pro profesionální vývojáře.
ZAP navíc poskytuje řadu nástrojů a funkcí včetně automatických skenerů, sady nástrojů pro ruční testování a různých doplňků pro rozšířenou funkčnost, což z něj činí komplexní řešení pro testování zabezpečení webových aplikací.
· Wireshark
Wireshark je známý díky své schopnosti odposlechu paketů (packet sniffing), ale je to nástroj tak všestranný a výkonný, že to skoro vypadá jako švindlování.
Wireshark představuje analyzátor síťových protokolů široce používaný k řešení problémů se sítí, pro analýzu, vývoj a vzdělávání. V reálném čase zachycuje a zobrazuje data putující tam a zpět po síti, což umožňuje zkoumat podrobné informace o síťových protokolech, datech paketů a síťovém provozu.
Wireshark uživatelům umožňuje zobrazit podrobné detaily síťových aktivit jak na mikroúrovni, tak i na makroúrovni. Používá se k diagnostice problémů se sítí, ke zkoumání problémů se zabezpečením sítě, k ladění implementací protokolů, k učení obsahu síťových protokolů, a dokonce také k vyhodnocování pravidel firewallů.
Díky svým výkonným možnostem filtrování a vyhledávání Wireshark umožňuje izolovat a analyzovat konkrétní pakety z toku síťového provozu, které by mohly být předmětem zájmu.
Díky tomu je nepostradatelným nástrojem pro správce sítí, bezpečnostní profesionály a kohokoli, kdo potřebuje porozumět toku dat v síti.
Je pravda, že v závislosti na zaměření konkrétního pentestéra nemusí být nástrojem nejdůležitějším, například při zaměření na cloud a testování webových aplikací, ale pokud jde o umění práce s jádrem sítí, tvoří Wireshark sám o sobě samostatnou a potřebnou kategorii.
· John the Ripper (Rozparovač)
John the Ripper nemusí být každodenně používaným nástrojem ze sady pro penetrační testování, ale přiznejme si to – žádný souhrn nástrojů pro penetrační testování není kompletní, pokud by v něm chyběl nástroj pro klasické umění prolamování hesel.
Nejzkušenější pentestéři se naučili spoléhat na rozsáhlé tabulky, které si postupem času vytvořili jako doplněk pro slovníkové útoky a útoky využívající tzv. duhové tabulky (rainbow tables), ale John the Ripper tuto práci dokáže zvládnout i bez toho.
Je to výkonný nástroj pro prolamování různých typů hesel, který se široce používá k testování jejich síly. Je obzvláště účinný při testování odolnosti v síťovém prostředí.
Chybu neuděláte, ani pokud používáte nástroj Hashcat. Některé certifikační testy se ptají na znalost toho, který nástroj na prolamování hesel je „nejlepší“, a uvádějí oba, ale skutečně záleží na preferencích.
· Nessus
Nessus je nástroj, který se stal téměř synonymem samotného konceptu odhalování slabých míst sítě. Je to pravděpodobně nejstahovanější, nejpoužívanější a nejuznávanější skener zranitelností všech dob.
Nessus se mimo jiné používá ke skenování zranitelností sítě, problémů s konfigurací, nedostatečných kritérií a chybějících záplat. Je to druh nástroje, který nefunguje jen na povrchu, ale sahá hlouběji a nabízí poznatky a zjištění, jež jsou současně cenné i komplexní.
Jakmile dojde k unikátní jednoznačné identifikaci systémů prostřednictvím fingerprintingu, chceme zjistit, vůči jakým typům zneužití může být daný systém zranitelný – a zde máme skvělé místo, kde začít.
Po tomto kroku lze k dokončení práce použít MEtasploit a další nástroje k ověření zneužitelnosti.
· BURP Suite
Nyní se dostáváme už ke korunovačnímu klenotu nástrojů pro penetrační testování, zejména pokud jde o svět zabezpečení webových aplikací – nástroj BURP Suite je nepostradatelný pro každého, kdo se vážně zabývá složitostmi penetračního testování webových aplikací.
Je to kompletní balíček – integrovaná platforma, která vyniká ve všestrannosti i hloubce záběru. Od skenování přes důkladné procházení struktury (spidering) až po útočení a zneužívání – BURP dokáže zachytit, manipulovat, může zátěže zakódovat do podoby URL, dokáže měnit způsoby doručování a může odesílat požadavky přímo na web.
Jako bonus je k dispozici jedna z nejuznávanějších bezplatných školicích akademií, která je k dispozici pro všechny způsoby, jak lze tento nástroj využít pro mnoho situací a cílů.
· Útočné distribuce
Útočné distribuce představují operační systémy specializované na penetrační testování. Ty často fungují jako kompletní řešení, které zahrnuje co nejvíce nástrojů v jednom stažení pro každou fázi penetračního testování – od průzkumu a využití zdrojů OSINT až po exfiltraci.
Součástí jsou i okrajové funkce, jako je forenzní zkoumání, reverzní inženýrství a jednoduché nástroje pro bezpečnostní audit.
Patří mezi ně především Kali Linux, protože šikovně kategorizuje nástroje harmonicky s různými fázemi penetračního testování. Doslova si můžete vybrat etapu stylem: nabídka Start > pick phase (výběr fáze): OSINT/Exploit/Data Exfil/Forensics > výběr nástroje > a spuštění.
Mezi další útočné distribuce patří například Parrot OS, která si získává proslulost na úkor Kali zejména díky institucím jako EC-Council, jež ji schvalují z důvodu svých certifikačních modulů a zkoušek CEH.
Parrot OS oslovuje širší publikum svým uživatelsky přívětivým rozhraním a odlehčeným prostředím, které se zaměřuje na efektivitu a bezpečnost. Parrot OS proto funguje efektivněji a nemá tak velkou režii.
Je důležité poznamenat, že tento posun nespočívá v tom, zda je jedna distribuce lepší než druhá, ale o výběru a vhodnosti pro různé styly práce a preference v komunitě penetračního testování. Pentestéři by si měli najít takové nástroje, které jim vyhovují, a vytvořit si vlastní upravenou distribuci.
· Metasploit
Přestože už není jediným vládcem v království zaměřeném na zneužívání, a to díky novým vyzyvatelům, jako je např. Atomic Red Team, platí, že Metasploit i nadále v aréně penetračního testování získává respekt a vysoké uznání.
Jde o nástroj s impozantní silou ve fázi zneužití (exploit) a fázi po zneužití (post-exploit) – skutečný přítel, zvláště pro nováčky ve sféře penetračního testování.
Metasploit není samotný nástroj – je to celá sada řešení pro vývoj, testování a spouštění kódů exploitů vůči vzdáleným cílům. Metasploit není užitečný jen pro zjištění zranitelností, ale umožňuje jejich testování, zátěž a prozkoumání možností jejich zneužitelnosti ve scénářích reálného světa.
Může pro vás mít své kouzlo pro svou bezplatnost a uživatelskou přívětivost, přestože pro vás není Cobalt Strike španělskou vesnicí.
· Nmap (Network Mapper)
Nmap je nesporný šampion v oblasti průzkumu a zjišťování unikátních identit (fingerprinting), což je kritická fáze každé operace penetračního testování. Tento nástroj není jen součástí sady nástrojů pentestéra, ale je i výchozím bodem téměř každého bezpečnostního dobrodružství.
Nmap je neuvěřitelná kombinace výkonného nástroje pro objevování sítě a pečlivého bezpečnostního auditora. Odhalí každé malé tajemství od otevřených portů a běžících služeb až po verze systémů a chybějící záplaty.
Není divu, že je ve stejné vážnosti jak u správců sítí, tak i u správců systémů pro svou všestrannost a hloubku. To, co skutečně Nmap vyvyšuje, je jeho ohromující přizpůsobitelnost.
Jeho skeny můžete přizpůsobit tak, aby byly tak široké nebo přesné, jak potřebujete. Zřídka se používá všeobjímající otevřené skenování, protože je jasné, že je to z hlediska množství dat podobné jako otevřít kohout požární hadice připojené k hydrantu.
Místo toho je lepší zvolit chirurgický přístup a zaměřit se na konkrétní aspekty, jako jsou filtrované porty nebo verze OS – a to Nmap zvládá naprosto perfektně.
Pro pentestéry je Nmap prvním krokem aktivního kontaktu se systémem po pasivním průzkumném tanečku, a obvykle to stále probíhá nepozorovaně – je totiž pravděpodobné, že vás při práci nástroje Nmap žádný systém detekce narušení neoznačí.
Tento příspěvek vyšel v Security Worldu 1/2024.
Security World si můžete koupit i jako klasický časopis, buď v klasické tištěné formě nebo v elektronické verzi. Věnujeme se bezpečnosti počítačových systémů, ochraně dat, informací a soukromí. Jsme jediný titul na českém a slovenském trhu, který oslovuje širokou čtenářskou obec – od ředitelů firem, přes odborníky na bezpečnost po koncové uživatele. Naším cílem je poskytnout ucelený přehled o bezpečnostních hrozbách a zejména o tom, proč a jak se jim bránit, případně proč respektovat a dodržovat nařízení IT manažerů ve firmách.