reconFTW: Recon-vezénylés domaintől a megállapításokig
Hogyan szervezi a six2dez/reconFTW a subdomain enumot, a port scanninget és a Nucleit egy célpont ellen — beállítás, konfiguráció, triázs, és mikor érdemes kihagyni.
OSINT-eszközök mélyreható bemutatása
Kinek: Biztonsági szakemberek
Húsz recon eszköz kézi láncolása egy többórás session során megoldott probléma — a kérdés az, hogy melyik orkesztrációs keretrendszerre bízod rá a munkát. A six2dez/reconFTW 2025 elejére 7 700+ GitHub-csillagot gyűjtött, és aktívan karbantartott projekt. Ez ésszerű kiindulóalap a bizalomhoz. A következőkben azt vesszük végig, hogyan működik valójában, hol van a helye, és hol nincs.
Mi a reconFTW?
A reconFTW egy Bash-keretrendszer, amely válogatott, harmadik féltől származó eszközöket futtat egy célpont domain ellen. Nem helyettesíti ezeket az eszközöket — sorba rendezi őket, az eredményt egy kiszámítható könyvtárstruktúrába normalizálja, és opcionálisan befejezési értesítéseket küld Slack-, Discord- vagy Telegram-csatornákra. A teljes pipeline egyetlen reconftw.cfg fájlon keresztül konfigurálható; a modulok az alapszkript érintése nélkül kapcsolhatók be és ki.
A pipeline az alábbiakat fedi le:
- Subdomain enumeration — passzív (certificate transparency, DNS-adatkészletek) és aktív (brute force, permutáció)
- DNS-elemzés — névfeloldás, wildcard-detektálás, zónatranszfer-vizsgálat
- Web-probing — élő HTTP/HTTPS-azonosítás a feltárt hosztok körében
- Portszkenning — teljes portos és célzott szkennelés élő hosztokon
- Tartalomfeltárás — könyvtár- és fájlfelsorolás
- Képernyőkép-készítés — webes szolgáltatások vizuális ujjlenyomat-vétele
- Sebezhetőség-szkennelés — Nuclei-sablonok élő célpontok ellen
- Google dorking és OSINT — passzív hírszerzés nyilvános forrásokból
- JavaScript-elemzés — végpontok és titkos adatok kinyerése JS-fájlokból
- GitHub dorking — nyilvános repók átvizsgálása kiszivárgott hitelesítési adatok vagy konfigurációs állományok után
A telepítés során feltelepített függőségek közé tartozik többek között az Amass, a Subfinder, a httpx, a Nuclei, az ffuf, a naabu és a dnsx. Ez a lista egyszerre jelenti a reconFTW legfőbb működési korlátját és legfőbb működési előnyét.
Hol illeszkedik be egy Recon Munkafolyamatba
Képzelj el egy felderítést három rétegben: passzív OSINT (nincs kapcsolat a célponttal, csak nyilvános adatok), aktív felsorolás (DNS-lekérdezések, port scanek, HTTP-probing), és sebezhetőség-azonosítás (template scanning, fuzzing). A reconFTW mindhármat lefedi. Pontosan ebben rejlik az értéke.
Egy külső pentest során a reconFTW a kezdeti hatókör-meghatározás és az exploitálás közé illeszkedik. Add meg a gyökértartományt, hagyd futni, majd triázsd a strukturált kimenetet — először a Nuclei-megállapításokat és az élő hostokat — hogy felépíts egy prioritizált célpont-listát a manuális munkához.
Bug bounty esetén széles hatókörű programokban bizonyítja értékét. A Nuclei integráció automatikusan megjelöli a könnyen elérhető CVE-ket és konfigurációs hibákat, ami időt szabadít fel az összeláncolt és logikai alapú sebezhetőségekre, amelyeket az automatizált eszközök nem kapnak el.
Támadási felület monitorozásához a reconFTW ütemezetten futtatható egy rögzített domainlista ellen, hogy új subdomaineket vagy újonnan exponált szolgáltatásokat derítsen fel. Mindazonáltal a dedikált ASM platformok jobban kezelik a riasztást és a historikus trendkövetést ennél a specifikus felhasználási esetnél — a reconFTW nem futásról futásra való diff-elésre lett tervezve.
reconFTW vs. Recon-ng vs. Spiderfoot
A Recon-ng egy moduláris, konzol-vezérelt keretrendszer, amely tisztán illeszkedik az OSINT API-khoz. Strukturált, elemző által irányított vizsgálatokhoz ez a megfelelő eszköz, ha explicit vezérlést szeretnél minden modul felett. Nem vezényel aktív szkennereket — mint a Nuclei vagy a naabu —, hatóköre a hírszerzésnél megáll.
A Spiderfoot webes felületet és erős passzív OSINT lefedettséget kínál, különösen az IP-k, domainek, e-mailek és ASN-ek közötti kapcsolati gráfok felépítéséhez. A Recon-ng-hez hasonlóan nem arra tervezték, hogy a reconFTW által igényelt aktív szkennelési ökoszisztémát futtassa.
| Kritérium | reconFTW | Recon-ng | Spiderfoot |
|---|---|---|---|
| Telepítési komplexitás | Magas (sok függőség) | Alacsony | Alacsony |
| Passzív OSINT mélység | Közepes | Magas | Magas |
| Aktív szkennelés | Erős | Minimális | Minimális |
| Sérülékenység-azonosítás | Erős (Nuclei) | Nincs | Nincs |
| Testreszabhatóság | Konfigurációs fájl | Modul szintű | Modul szintű |
| Legjobb erre | Bug bounty, pentestek | OSINT vizsgálatok | Entitás-feltérképezés |
A reconFTW akkor a nyerő választás, ha végponttól végpontig terjedő lefedettségre van szükséged egészen a sérülékenység-azonosításig egyetlen futásban, a célpont hatóköre széles, és VPS-en dolgozol, ahol egy hosszan futó folyamat elfogadható.
Mellőzd, ha könnyű passzív keresés elegendő, ha a hálózati vezérlők blokkolják az aktív szkennelést, ha a munkafolyamatod csapatmunkához felületet vagy API-t igényel, illetve ha a megbízatás audit-szintű naplózást követel meg.
Futtatás előtt
Engedélyezés. A reconFTW aktív szkennelést végez — DNS brute force, port szkennelés, HTTP-próba, Nuclei sebezhetőség-ellenőrzések. Explicit írásos engedély nélkül futtatni a legtöbb joghatóságban törvénytelen, és sérti minden jelentős bug bounty platform feltételeit. Minden egyes futtatás előtt erősítsd meg a hatókört.
Erőforrás-igény. Egy nagy domainnel szemben végzett teljes futtatás több órát vesz igénybe, és jelentős kimenő forgalmat generál. Futtasd dedikált VPS-en. A projekt README-je kifejezetten felhívja a figyelmet arra, hogy teljes futtatási mód kis sávszélességű kapcsolatokon nem ajánlott.
Értesítések. Konfigurálj egy Slack-, Discord- vagy Telegram-webhookot a reconftw.cfg fájlban, mielőtt hosszú futtatásba kezdesz. Órákon át terminált bámulni felesleges teher.
Reprodukálható telepítés Ubuntu 22.04 rendszeren
Az alábbi parancsok mind a reconFTW repository hivatalos telepítési dokumentációjából származnak.
1. lépés — A repository klónozása
git clone https://github.com/six2dez/reconftw.git
cd reconftw
2. lépés — A telepítő futtatása
./install.sh
A telepítő az összes függőséget a ~/go/bin és a kapcsolódó elérési utakra tölti le és fordítja le. Egy 2 magos / 4 GB RAM-os VPS-en a hálózati sebességtől függően 5–15 percet számíts rá. Indítsd el, aztán a konfiguráción dolgozhatsz közben.
3. lépés — Az eszköz konfigurálása
cp reconftw.cfg.sample reconftw.cfg
nano reconftw.cfg
Az első futtatás előtt érdemes átnézni ezeket az értékeket:
NOTIFY— állítsdtrue-ra, és add meg a webhook URL-tDEEP— állítsdfalse-re a gyorsabb első futáshoz- API-kulcsok a Shodan, SecurityTrails és Chaos szolgáltatásokhoz — a passzív enumeration minősége érdemben javul, ha ezeket kitöltöd
4. lépés — Hatókörbe zárt tesztelés
Passzív módú füsttesztre egy engedélyezett domain ellen:
./reconftw.sh -d example.com -p
A -p flag kihagyja az aktív szkennelési modulokat. A kimenet a ~/reconftw/Recon/example.com/ könyvtárba kerül.
Teljes futtatáshoz (végrehajtás előtt győződj meg az engedélyezésről):
./reconftw.sh -d example.com -r
Add hozzá a -s kapcsolót, hogy a hatókört a célpont domainjére és közvetlen subdomainjire korlátozzd — ez megakadályozza az agresszív kiterjesztést wildcard hatókörök esetén.
5. lépés — A kimenet triázsolása
A reconFTW kiszámítható könyvtárstruktúrába ír:
~/reconftw/Recon/example.com/
├── subdomains/ # Enumerated subdomain lists
├── webs/ # Live web hosts
├── nuclei/ # Vulnerability scan results
├── screenshots/ # Web screenshots
├── ports/ # Port scan data
└── osint/ # Passive intelligence
Kezdd a nuclei/ fájllal — a megállapítások súlyosság szerint vannak kategorizálva. Vesd össze a webs/ és ports/ fájlokkal, hogy prioritizált célpontlistát állíts össze a manuális utánkövetéshez. Az automatizált megállapításokat ne tekintsd végleges igazságnak; triázs-sorként kezeld őket.
Erősségek és őszinte korlátok
Ahol megállja a helyét:
- Érett, a közösség által bevált eszközkészlet egyetlen paranccsal vezérelt összehangolása
- Aktív karbantartás, reszponzív hibakövetővel
- A moduláris konfiguráció lehetővé teszi a zajos vagy lassú modulok letiltását megbízásonként
- A strukturált kimenet zökkenőmentesen illeszkedik a downstream munkafolyamatokba — a subdomain lista egyedi Nuclei pipeline-ba való betöltése például egyszerű dolog
Ahol elmarad a várakozástól:
- A függőségek szétterjedése megnehezíti a reprodukálható környezetek kialakítását konténerizáció nélkül; nincs gyártói Docker image, a közösségi image-ek nem hivatalosak
- Egy függőség csendes meghibásodása rontja a kimenet minőségét nyilvánvaló jelzés nélkül — érdemes az install után ellenőrizni a kulcsfontosságú eszközök verzióit
- Nem alacsony intenzitású, lassú felmérésekre tervezték; a lefedettségre optimalizál, nem az észlelés elkerülésére
Ubuntu-telepítéseken már láttam, hogy a függőségi lánc megszakad, amikor Go verzióeltérések miatt a naabu vagy a dnsx hibásan fordult le. A kimeneti könyvtárak ugyan feltöltődnek, de a port- és DNS-adatok hiányosak. Az install után futtasd a naabu -version és dnsx -version parancsokat, hogy megbizonyosodj a binárisok működőképességéről, mielőtt éles megbízásba kezdenél.
Integrációs minták meglévő pipeline-okhoz
Ha már fut egy egyedi recon pipeline-od, a reconFTW konfigurációs fájlja egyszerűvé teszi az egyes modulcsoportok elkülönítését. A SUBDOMAINS_ACTIVE=true és HTTP_PROBE=true beállításával, miközben minden mást letiltasz, a reconFTW egy subdomain-ből élő hosztokat feloldó eszközzé válik — hasznos, ha a passzív forráslefedettsége kell a teljes szkennelési stack nélkül.
Csapatkörnyezetben mutasd a kimeneti könyvtárat egy megosztott NFS csatolási pontra, vagy szinkronizáld egy S3-kompatibilis bucketbe egy futás utáni szkript segítségével. Ez a megállapításokat azonnal elérhetővé teszi anélkül, hogy SSH-hozzáférés kellene a szkennelési hoszthoz.
A reconFTW által összehangolt eszközök tágabb kontextusához: a ProjectDiscovery Nuclei dokumentációja a sablonalapu szkennelést és a súlyossági besorolás értelmezését tárgyalja, ami közvetlenül alkalmazható a reconFTW nuclei-kimenetének olvasásához. Az Amass felhasználói útmutató a DNS-enumeration módszertant mutatja be, amely a subdomain-felfedezés jelentős részét hajtja.
Az olvasás utáni első konkrét lépés: indíts egy friss Ubuntu 22.04 VPS-t, futtasd a telepítőt, és irányítsd a reconFTW-t egy engedélyezett bug bounty hatókörbe tartozó domainre a -p kapcsolóval (csak passzív). Ellenőrizd a subdomain-kimenetet azzal szemben, amit egy manuális Subfinder- vagy Amass-futtatásból kapnál. Ha a számok összehasonlíthatók, a telepítés megfelelően működik, és van egy működő alapvonalad a hatókörbe vett aktív futtatásokhoz.