CeWL
Úvod a kontext
CeWL je v tomto projektu praktický hlavně jako nástroj na tvorbu malého, cíleného wordlistu z konkrétního webu. Není to cracker a není to brute force engine. Je to způsob, jak vzít slovník, názvy, brand a terminologii cílové organizace a proměnit je v kandidátní hesla nebo cesty.
Na Nibbles z textu webu vytvoří krátký slovník, který pak pomůže gobusteru objevit nibbleblog. Na Blunderu pomůže postavit heslovou hypotézu kolem uživatele fergus. Na Fuse vytváří slovník z firemního webu, ze kterého pak vzniknou první platné credential kombinace. To je jeho praktická role: nehádat náhodná hesla, ale vytěžit lokální jazyk cíle.
Co CeWL v praxi řeší
CeWL prochází web a skládá z něj vlastní slovník. Prakticky odpovídá na otázky:
- jaká slova, jména, názvy produktů nebo značek se na cíli opakují,
- které z nich stojí za použití v password hypotéze,
- a kdy dává smysl použít lokální slovník místo generického
rockyou.
Jeho síla není v objemu. Je v relevanci. Krátký slovník odvozený z konkrétního webu bývá v mnoha řetězcích cennější než velký obecný wordlist.
Nejčastější scénáře využití v tomto projektu
Vytvoření malého webového slovníku pro content discovery
Na Nibbles je první praktický use case velmi čistý. Web nevydá skoro nic, ale z jeho obsahu lze CeWL použít jako výrobník krátkého lokálního slovníku:
cewl -v --with-numbers http://$IP > /tmp/$IP-dict.txt
gobuster dir -u http://$IP/ -w /tmp/$IP-dict.txt -t 40 -x php
Výsledkem je nalezení nibbleblog.
To je důležitý pattern:
CeWLsám nic neobjevil,- ale vytvořil slovník, který lépe odpovídá konkrétnímu webu,
- a tím zlevnil další content discovery.
Právě proto je dobré ho vnímat spíš jako přípravný nástroj než jako samostatný útokový krok. Navazující praktickou enumeraci rozebírám i v článku Gobuster.
Heslová hypotéza odvozená z lokálního jazyka cíle
Na Blunderu už nejde o cesty, ale o hesla. Uživatelské jméno fergus je známé z todo.txt, a právě text webu dodá přes CeWL lokální termíny, které dávají smysl pro slovníkový pokus.
Tady je důležité, že CeWL neřeší brute force obecně. Řeší:
- jak vytěžit brand a jazyk cíle,
- jak z něj udělat krátký a relevantní slovník,
- a jak snížit závislost na obecných wordlistech.
Firemní branding jako zdroj prvního hesla
Na Fuse je tato logika ještě viditelnější. Web PaperCutu poskytne dost výrazné firemní názvy a CeWL z nich vytvoří slovník:
cewl -d 5 -m 3 -w Fuse-wordlist.txt http://fuse.fabricorp.local/papercut/logs/html/index.htm --with-numbers
Z toho pak vznikne jednoduchá naming convention a první platné účty tlavel a bhult s heslem Fabricorp01.
To je přesně okamžik, kdy lokální slovník poráží generický přístup. Útok nestojí na tom, že by uživatel použil úplně náhodné slabé heslo. Stojí na tom, že heslo vychází z názvu organizace a běžného interního patternu.
Kdy je CeWL nejlepší volba
Největší smysl dává tehdy, když:
- cílový web obsahuje dost textu, brandingu nebo jmen,
- potřebujete krátký, lokálně relevantní slovník,
- a další krok závisí na heslech, názvech cest nebo jednoduchých termínech odvozených z cíle.
V takové chvíli je často hodnotnější než sahat rovnou po velkém obecném wordlistu.
Co CeWL neumí vyřešit za vás
CeWL:
- sám neprolomí heslo,
- sám nenajde cestu,
- a neřekne, která slova z webu mají skutečně vysokou hodnotu.
Na Nibbles musí navázat gobuster. Na Blunderu další login pokus. Na Fuse ověření proti SMB. CeWL vytváří materiál, ne finální přístup.
Nejčastější chyby při použití
Záměna za univerzální wordlist řešení
CeWL má smysl právě proto, že je úzký a lokální. Pokud web neobsahuje dost relevantního textu, může být výstup slabý a obecný.
Použití bez navazující hypotézy
Samotný slovník nestačí. Je potřeba vědět, jestli ho chci použít pro:
- cesty,
- hesla,
- nebo naming convention.
Bez toho vznikne jen další soubor plný slov bez směru.
Ignorování brandingu jako bezpečnostní stopy
Právě firemní názvy, slogany, oddělení nebo jména produktů bývají v praxi velmi cenné. CeWL je užitečný právě proto, že je umí rychle vytěžit.
Nejčastější praktické scénáře
Potřebuji lokální slovník pro content discovery
To je Nibbles.
Potřebuji lokální slovník pro credential hypotézu
Potřebuji převést obsah cílového webu do konkrétního pracovního materiálu
To je obecně nejcennější role CeWLu v těchto rozborech.
Související články v projektu
- Rozbory: Nibbles, Blunder, Fuse
- Nástroje: Gobuster, Hydra
- Techniky: Password reuse a rozpad hranic mezi aplikací, SSH, WinRM a admin nástroji, Kerberos útoky z nulového přístupu
Co si odnést do praxe
CeWLje nejpraktičtější jako výrobník krátkého a lokálně relevantního slovníku z konkrétního webu.- Největší hodnotu má tam, kde generický wordlist nestačí nebo je zbytečně široký.
- Sám o sobě útok neuzavírá. Skutečná hodnota vzniká až tehdy, když vytvořený slovník poslouží další konkrétní hypotéze.
Další Související Články V Projektu
HTB Stroje
Techniky
- kid/jku a vzdálené načítání klíčů
- OAuth a zneužití autorizačního toku
- NoSQL injection v loginu a extrakce přes `$regex` / `$ne`