tom@home.htb:~$

Blog o HTB

27 October 2020

Dirsearch

Úvod a kontext

dirsearch je v tomto projektu praktický hlavně ve chvíli, kdy už je známý správný host, vhost nebo cesta a je potřeba rychle zjistit, co dalšího na webu existuje. Není to nástroj na pochopení celé aplikace. Je to nástroj na objevování vstupních bodů, vedlejších cest a zapomenutých souborů.

Na Magicu ukáže upload.php a tím rovnou naznačí, že aplikace umí upload a za ním drží login. Na Previsi odhalí accounts.php, files.php nebo download.php, tedy cesty, které na první pohled nejsou z webu vidět. Na Cerealu pomůže na vedlejším hostu source.cereal.htb najít /.git, což pak úplně změní směr útoku. To je jeho praktická role: nepřináší exploit, ale vytáhne na povrch věci, které se dál dají číst nebo zneužít.

Co dirsearch v praxi řeší

dirsearch je content discovery nástroj. Prakticky odpovídá na otázky:

Jeho hodnota neleží v samotném množství nalezených cest, ale v tom, že rychle odfiltruje ty, které stojí za další analýzu.

Nejčastější scénáře využití v tomto projektu

Nalezení relevantní funkce aplikace

Na Magicu je první praktický výsledek velmi přímočarý. Zvenku jsou jen Apache a SSH, takže dává smysl systematicky projít web a hledat něco, co nese reálný dopad:

./dirsearch/dirsearch.py -u http://$IP -e php -x 403 -r

Výstup ukáže:

/upload.php  ->  login.php

To je velmi cenná informace už sama o sobě:

Tady dirsearch neřeší exploit. Jen přesně označí funkci, která má vysokou návratnost dalšího času. Širší kontext upload řetězců je i v článku Nebezpečné uploady: polygloty, WAR deploy a plugin upload.

Odhalení neveřejných, ale funkčních cest

Na Previsi je web na první pohled jen přihlašovací formulář. dirsearch ale rychle ukáže, že aplikace má další cesty:

./dirsearch/dirsearch.py -u http://$IP -e php -x 403 -r
/accounts.php
/config.php
/download.php
/files.php

To je prakticky zásadní rozdíl proti situaci, kdy by se útočník zastavil u login stránky. Najednou je zřejmé, že aplikace má:

Právě to z ní dělá mnohem bohatší cíl, než naznačuje samotné UI.

Odhalení vývojových artefaktů nebo vedlejšího hostu

Na Cerealu samotný hlavní web nevrací skoro nic, ale vedlejší host source.cereal.htb už ano. dirsearch tam najde mimo jiné /.git/logs/HEAD:

./dirsearch/dirsearch.py -u https://cereal.htb/ -e php -x 403 -r
./dirsearch/dirsearch.py -u https://source.cereal.htb/ -e php -x 403 -r

To je typický okamžik, kdy se enumerace mění v rozhodnutí:

Tento pattern úzce souvisí i s článkem Otevřený .git, zálohy a vývojové artefakty jako první foothold.

Objevování vedlejších administrativních a servisních cest

Na Admireru, Jarvisi, Bashed, BountyHunteru nebo Buckettu dirsearch opakovaně slouží ke stejnému typu práce:

Právě v tom je jeho praktická síla. Neříká “tady je exploit”, ale rychle označí, která větev webu má pro útočníka největší návratnost.

Kdy je dirsearch nejlepší volba

Největší smysl dává tehdy, když:

V těchto situacích je rychlý a velmi levný. Hlavně ale dává strukturu dalšímu webovému průzkumu.

Co dirsearch neumí vyřešit za vás

dirsearch:

Na Magicu je užitečný proto, že upload.php okamžitě mění pracovní hypotézu. Na Previsi proto, že odhalí neveřejné cesty. Na Cerealu proto, že najde vývojový artefakt. Bez čtení kontextu by byl jeho výstup jen seznam URL.

Nejčastější chyby při použití

Záměna za úplnou webovou enumeraci

dirsearch řeší obsahové cesty. Neřeší automaticky:

Mechanické čtení výstupu bez prioritizace

V praxi má větší hodnotu jeden:

než desítky statických assetů. Úspěch tedy neleží v počtu nalezených odpovědí, ale ve správném výběru.

Použití proti špatnému cíli

Pokud ještě není jisté, který vhost je relevantní, bývá důležitější nejdřív vyřešit host discovery nebo fingerprinting. dirsearch má největší cenu až ve chvíli, kdy je zřejmé, že prochází správný povrch.

Nejčastější praktické scénáře

Potřebuji najít login, upload nebo admin cestu

To je Magic, Jarvis nebo Bashed.

Potřebuji zjistit, zda aplikace skrývá další neveřejné cesty

To je Previse.

Potřebuji ověřit, zda vedlejší host neobsahuje vývojové artefakty

To je Cereal.

Související články v projektu

Co si odnést do praxe

Další Související Články V Projektu

HTB Stroje

Techniky

Nástroje

tags: nastroje - web - enumeration - content-discovery - directories - files