
Outil de sécurité pour la reconnaissance et la collecte d'informations sur un site web. (python 3.x)

Outil de sécurité pour la reconnaissance et la collecte d'informations sur un site web. (python 3.x)
- Ajout de la fonction proxy
- Redéfinition des priorités/tâches
- Débogage des résultats des sous-domaines de certificat
- Affichage du numéro de contournement actuel pendant le scan ("CB:")
- Easter egg pour Noël :)
- Option -nfs (not first step) pour passer les premières étapes de reconnaissance
- Google CSE avant le scan
- Création du WIKI
- Détection de divulgation potentielle de chemin dans la page HTML
- Détection de répertoire caché potentiel
(pour plus de détails, voir CHANGELOG.md)
- git clone https://github.com/c0dejump/HawkScan.git && sudo python3 HawkScan/setup.py install
- pip(3) install -r requirements.txt
- python3 -m pip install -r requirements.txt
P1 est le plus important
[WIP] Exclusion multiple comme : --exclude 403,1337b [P1] [En cours] (voir Exemples)
[WIP] Routage anonyme via un proxy (liste de proxies http/s) [P1] [En cours]
[WIP] Reconstruire le rapport de scan [P1]
[WIP] Remplacer HExHTTP "header information" avant le scan
usage: hawkscan.py [-h] [-u URL] [-f FILE_URL] [-t THREAD] [--exclude EXCLUDE [EXCLUDE ...]] [--auto] [--update] [-w WORDLIST] [-b [BACKUP ...]] [-p PREFIX] [-H HEADER_] [-a USER_AGENT] [--redirect] [--auth AUTH] [--timesleep TS] [--proxie PROXIE] [-r] [-s SUBDOMAINS] [--js] [--nfs] [--ffs] [--notify] [-o OUTPUT] [-of OUTPUT_TYPE]
> General:
-u URL URL to scan [required]
-f FILE_URL file with multiple URLs to scan
-t THREAD Number of threads to use for URL Fuzzing. Default: 30
--exclude EXCLUDE [EXCLUDE ...] Exclude page, response code, response size. (Exemples: --exclude 500,337b)
--auto Automatic threads depending response to website. Max: 30
--update For automatic update
--lightmode For a just simple fuzzing 1 request per second & a new session for each request
> Wordlist Settings:
-w WORDLIST Wordlist used for Fuzzing the desired webite. Default: dichawk.txt
-b Adding prefix/suffix backup extensions during the scan. (Exemples: exemple.com/~ex/, exemple.com/ex.php.bak...) /!\ beware, take more longer
-p PREFIX Add prefix in wordlist to scan
> Request Settings:
-H HEADER_ Modify header. (Exemple: -H "cookie: test")
-a USER_AGENT Choice user-agent. Default: Random
--redirect For scan with redirect response (301/302)
--auth AUTH HTTP authentification. (Exemples: --auth admin:admin)
--timesleep TS To define a timesleep/rate-limit if app is unstable during scan.
> Tips:
-r Recursive dir/files
-s SUBDOMAINS Subdomain tester
--js For try to found keys, token, sensitive endpoints... in the javascript page
--nfs Not the first step of scan during the first running (waf, vhosts, wayback etc...)
--ffs Force the first step of scan during the first running (waf, vhosts, wayback etc...)
--notify For receveid notify when the scan finished (only work on linux)
> Export Settings:
-o OUTPUT Output to site_scan.txt (default in website directory)
-of OUTPUT_TYPE Output file format. Available formats: json, csv, txt
//Basic
python hawkscan.py -u https://www.exemple.com/
//With specific dico
python hawkscan.py -u https://www.exemple.com/ -w dico_extra.txt
//with 30 threads
python hawkscan.py -u https://www.exemple.com/ -t 30
//With backup files scan
python hawkscan.py -u https://www.exemple.com/ -b
//With an exclude page
python hawkscan.py -u https://www.exemple.com/ --exclude profile.php
//With an exclude response code
python hawkscan.py -u https://www.exemple.com/ --exclude 403
//With an exclude bytes number
python hawkscan.py -u https://www.exemple.com/ --exclude 1337b
//With two excludes type
python hawkscan.py -u https://www.exemple.com/ --exclude 1337b,403
Layno (https://github.com/Clayno/) [Aide technique]
Sanguinarius (https://twitter.com/sanguinarius_Bt) [Aide technique]
Jamb0n69 (https://twitter.com/jamb0n69) [Aide technique]
Cyber_Ph4ntoM (https://twitter.com/__PH4NTOM__) [Testeur bêta et graphiste du logo]
https://www.paypal.me/c0dejump
Ou si vous voulez m'offrir un café :)
Ce script utilise "WafW00f" pour détecter le WAF lors de la première étape (https://github.com/EnableSecurity/wafw00f)
Ce script utilise "Sublist3r" pour scanner les sous-domaines (https://github.com/aboul3la/Sublist3r)