
Script Python propulsé par Selenium pour automatiser la recherche d'applications web vulnérables.
Script Python propulsé par Selenium pour automatiser la recherche d'applications vulnérables sur le web.
DorkNet peut prendre un seul dork ou une liste de dorks comme arguments. Après avoir passé les bons arguments en ligne de commande, le script utilisera Selenium et Geckodriver pour trouver les résultats souhaités et les sauvegarder dans un fichier texte pour un traitement ultérieur avec SQLmap ou des utilitaires similaires.
git clone https://github.com/NullArray/DorkNet.git
cd DorkNet
python dorknet.py
Les options du programme sont les suivantes.
-h, --help show this help message and exit
-d DORK, --dork DORK specify the dork you wish to use
-l LIST, --list LIST specify path to list with dorks
-v, --verbose toggle verbosity
Quelques exemples pour clarifier.
DorkNet.py -h
DorkNet.py -d inurl:show.php?id= -v
DorkNet.py -l /path/to/list.txt --verbose
Proxy
J'ai inclus la possibilité de proxifier la connexion du pilote web si vous le souhaitez. Fournissez simplement l'IP et le PORT du proxy lorsque la boîte de dialogue apparaît et le moteur de recherche sera accessible via les paramètres de proxy que vous avez fournis.
Vous aurez besoin du Geckodriver de Mozilla pour que cela fonctionne. Vous pouvez l'installer manuellement. Cependant j'ai ajouté un script shell pour automatiser le processus si vous préférez.
Pour l'utiliser, naviguez vers le répertoire DorkNet et rendez le script shell exécutable comme suit.
cd DorkNet
chmod +x gecko-setup.sh
# Execute the shell script with the below command.
sudo ./gecko-setup.sh
Le script shell a une option pour installer automatiquement le reste des dépendances également, via le fichier requirements, en invoquant les commandes suivantes.
sudo -H pip install -r requirements.txt
J'ai ajouté une logique qui permet à l'utilisateur d'exécuter Geckodriver en Headless Mode, c'est-à-dire sans l'interface utilisateur traditionnelle. Ceci est utile si vous avez une liste particulièrement longue de dorks avec laquelle travailler. Dans son implémentation actuelle, la fonction responsable de la proxification de notre connexion à Google interfère avec les opérations nécessaires pour configurer les options de Geckodriver afin d'activer le mode sans tête. Par conséquent, exécuter DorkNet avec le drapeau --nogui et un proxy activé ne fonctionnera pas comme prévu.
Cependant, les utilisateurs qui souhaitent tout de même exécuter le programme en mode sans tête le peuvent. J'ai ajouté tout le code pertinent au dépôt. Pour l'instant il est simplement commenté. Supprimez les commentaires et cela devrait fonctionner sans problème. Consultez l'historique des commits ici pour voir les lignes concernées.
Maintenant si vous voulez vraiment proxifier votre connexion alors que --nogui est activé, vous pouvez démarrer DorkNet avec ProxyChains comme ceci ;
proxychains python dorknet.py -l /path/to/dorks.list --nogui --verbose
Si vous n'avez pas ProxyChains, suivez simplement le lien ci-dessus ou utilisez votre gestionnaire de paquets pour l'installer. Merci.
DorkNet est inclus dans la distribution de test d'intrusion BlackArch Linux sous Outils WebApp & Automation. En tant que tel, il est pré-installé avec la distribution. Référez-vous au fichier PKGBUILD approprié dans son dépôt respectif pour plus de détails.
En utilisant Selenium et Geckodriver, DorkNet est efficace pour émuler un navigateur normal. De cette manière, le programme est capable d'éviter les captchas la plupart du temps. Cependant, à certaines occasions, Google en lance un quand même. Il arrive parfois la même chose lorsqu'on recherche manuellement des chaînes qui ressemblent à un dork. Si vous en rencontrez un, vous pouvez simplement remplir le captcha dans le Geckodriver et DorkNet continuera son fonctionnement normal.