
Asynchrones HTTP-Content-Discovery-Tool mit automatischer Kalibrierung, rekursivem Scannen und Berichterstellung zum Aufspüren versteckter Webverzeichnisse und -dateien.
Schon ein weiteres Tool zur Inhaltsentdeckung, geschrieben in Python.
Was dieses Tool von anderen unterscheidet:
Beispielberichte finden Sie hier
https://morph3.blog/crawpy/example.html
https://morph3.blog/crawpy/example.txt
git clone https://github.com/morph3/crawpy
pip3 install -r requirements.txt
or
python3 -m pip install -r requirements.txt
morph3 ➜ crawpy/ [main✗] λ python3 crawpy.py --help
usage: crawpy.py [-h] [-u URL] [-w WORDLIST] [-t THREADS] [-rc RECURSIVE_CODES] [-rp RECURSIVE_PATHS] [-rd RECURSIVE_DEPTH] [-e EXTENSIONS] [-to TIMEOUT] [-follow] [-ac] [-fc FILTER_CODE] [-fs FILTER_SIZE] [-fw FILTER_WORD] [-fl FILTER_LINE] [-k] [-m MAX_RETRY]
[-H HEADERS] [-o OUTPUT_FILE] [-gr] [-l URL_LIST] [-lt LIST_THREADS] [-s] [-X HTTP_METHOD] [-p PROXY_SERVER]
optionale Argumente:
-h, --help show this help message and exit
-u URL, --url URL URL
-w WORDLIST, --wordlist WORDLIST
Wörterliste
-t THREADS, --threads THREADS
Größe des Semaphor-Pools
-rc RECURSIVE_CODES, --recursive-codes RECURSIVE_CODES
Rekursive Codes für rekursives Scannen, Beispiel: 301,302,307
-rp RECURSIVE_PATHS, --recursive-paths RECURSIVE_PATHS
Rekursive Pfade für rekursives Scannen, beachte: Nur die angegebenen rekursiven Pfade werden anfangs gescannt, Beispiel: admin,support,js,backup
-rd RECURSIVE_DEPTH, --recursive-depth RECURSIVE_DEPTH
Rekursive Scantiefe, Beispiel: 2
-e EXTENSIONS, --extension EXTENSIONS
Erweiterungen am Ende hinzufügen. Trenne sie mit Kommas, Beispiel: -x .php,.html,.txt
-to TIMEOUT, --timeout TIMEOUT
Timeouts, ich empfehle diese Option nicht zu verwenden, da sie derzeit viele Fehler verursacht, deren Ursache ich nicht lösen konnte
-follow, --follow-redirects
Weiterleitungen folgen
-ac, --auto-calibrate
Filtereinstellungen automatisch kalibrieren
-fc FILTER_CODE, --filter-code FILTER_CODE
Statuscode filtern
-fs FILTER_SIZE, --filter-size FILTER_SIZE
Größe filtern
-fw FILTER_WORD, --filter-word FILTER_WORD
Wörter filtern
-fl FILTER_LINE, --filter-line FILTER_LINE
Zeilen filtern
-k, --ignore-ssl Nicht vertrauenswürdiges SSL-Zertifikat ignorieren
-m MAX_RETRY, --max-retry MAX_RETRY
Maximale Wiederholungen
-H HEADERS, --headers HEADERS
Header, du kannst das Flag mehrfach setzen. Zum Beispiel: -H "X-Forwarded-For: 127.0.0.1", -H "Host: foobar"
-o OUTPUT_FILE, --output OUTPUT_FILE
Ausgabeordner
-gr, --generate-report
Wenn crawpy einen Bericht generieren soll, Standardpfad ist crawpy/reports/<url>.txt
-l URL_LIST, --list URL_LIST
Nimmt eine Liste von URLs als Eingabe und führt crawpy mittels Multiprocessing aus -l ./urls.txt
-lt LIST_THREADS, --list-threads LIST_THREADS
Anzahl der Threads für paralleles Ausführen von crawpy bei Verwendung einer URL-Liste
-s, --silent Crawpy keine Ausgabe erzeugen lassen
-X HTTP_METHOD, --http-method HTTP_METHOD
HTTP-Anforderungsmethode
-p PROXY_SERVER, --proxy PROXY_SERVER
Proxy-Server, z.B.: 'http://127.0.0.1:8080'
python3 crawpy.py -u https://facebook.com/FUZZ -w ./common.txt -k -ac -e .php,.html
python3 crawpy.py -u https://google.com/FUZZ -w ./common.txt -k -fw 9,83 -rc 301,302 -rd 2 -ac
python3 crawpy.py -u https://morph3sec.com/FUZZ -w ./common.txt -e .php,.html -t 20 -ac -k
python3 crawpy.py -u https://google.com/FUZZ -w ./common.txt -ac -gr
python3 crawpy.py -u https://google.com/FUZZ -w ./common.txt -ac -gr -o /tmp/test.txt
sudo python3 crawpy.py -l urls.txt -lt 20 -gr -w ./common.txt -t 20 -o custom_reports -k -ac -s
python3 crawpy.py -u https://google.com/FUZZ -w ./common.txt -ac -gr -rd 1 -rc 302,301 -rp admin,backup,support -k