
Selenium-betriebenes Python-Skript zum Automatisieren der Suche nach angreifbaren Webanwendungen.
Selenium-basiertes Python-Skript zur Automatisierung der Websuche nach verwundbaren Anwendungen.
DorkNet kann einen einzelnen Dork oder eine Liste von Dorks als Argumente übernehmen. Nachdem die entsprechenden Befehlszeilenargumente übergeben wurden, verwendet das Skript Selenium und Geckodriver, um die gewünschten Ergebnisse zu finden und sie in einer Textdatei für die weitere Verarbeitung mit SQLmap oder ähnlichen Dienstprogrammen zu speichern.
git clone https://github.com/NullArray/DorkNet.git
cd DorkNet
python dorknet.py
Die Optionen für das Programm sind wie folgt.
-h, --help Zeigt diese Hilfemeldung an und beendet das Programm
-d DORK, --dork DORK Gibt den zu verwendenden Dork an
-l LIST, --list LIST Gibt den Pfad zur Liste mit Dorks an
-v, --verbose Schaltet die Ausführlichkeit um
Einige Beispiele zur Verdeutlichung.
DorkNet.py -h
DorkNet.py -d inurl:show.php?id= -v
DorkNet.py -l /path/to/list.txt --verbose
Proxyeinrichtung
Ich habe die Möglichkeit integriert, die Verbindung des Webtreibers bei Bedarf über einen Proxy zu leiten. Geben Sie einfach die Proxy-IP und den PORT ein, wenn der Dialog erscheint, und die Suchmaschine wird über die von Ihnen angegebenen Proxy-Einstellungen aufgerufen.
Sie benötigen das Mozilla Geckodriver, damit dies funktioniert. Sie können es manuell installieren. Ich habe jedoch ein Shell-Skript hinzugefügt, um den Vorgang zu automatisieren, falls Sie das bevorzugen.
Um es zu verwenden, navigieren Sie zum DorkNet-Verzeichnis und machen Sie das Shell-Skript ausführbar, wie folgt.
cd DorkNet
chmod +x gecko-setup.sh
# Führen Sie das Shell-Skript mit dem folgenden Befehl aus.
sudo ./gecko-setup.sh
Das Shell-Skript hat außerdem die Möglichkeit, den Rest der Abhängigkeiten automatisch über die Requirements-Datei zu installieren, indem die folgenden Befehle aufgerufen werden.
sudo -H pip install -r requirements.txt
Ich habe eine Logik hinzugefügt, die es dem Benutzer ermöglicht, Geckodriver im Headless Mode auszuführen, das heißt ohne die traditionelle Benutzeroberfläche. Dies ist nützlich, wenn Sie eine besonders lange Liste von Dorks verarbeiten möchten. In der aktuellen Implementierung stört die Funktion, die für das Proxying unserer Verbindung zu Google zuständig ist, die Vorgänge, die zum Setzen der Geckodriver-Optionen erforderlich sind, um den Headless-Modus zu aktivieren. Daher wird das Ausführen von DorkNet mit der --nogui-Flagge und aktiviertem Proxy nicht wie vorgesehen funktionieren.
Benutzer, die das Programm dennoch im Headless-Modus ausführen möchten, können dies jedoch tun. Ich habe den gesamten relevanten Code in das Repository übertragen. Vorerst wurde er nur auskommentiert. Entfernen Sie die Kommentare, und es sollte ohne Probleme funktionieren. Sehen Sie sich die Commit-Historie hier an, um die betroffenen Zeilen zu sehen.
Falls Sie Ihre Verbindung wirklich proxieren möchten, während --nogui gesetzt ist, können Sie DorkNet mit ProxyChains wie folgt starten:
proxychains python dorknet.py -l /path/to/dorks.list --nogui --verbose
Wenn Sie ProxyChains nicht haben, folgen Sie einfach dem obigen Link oder verwenden Sie Ihren Paketmanager, um es zu installieren. Vielen Dank.
DorkNet ist in der BlackArch Linux PenTesting-Distribution unter WebApp Tools & Automation enthalten. Daher ist es in der Distribution vorinstalliert. Für Details siehe die entsprechende PKGBUILD-Datei im entsprechenden Repository.
Durch die Verwendung von Selenium und Geckodriver ist DorkNet effektiv darin, einen normalen Browser zu emulieren. Auf diese Weise kann das Programm die Captchas meistens vermeiden. In seltenen Fällen zeigt Google jedoch trotzdem eines an. Das passiert manchmal auch, wenn man manuell nach Zeichenfolgen sucht, die wie ein Dork aussehen. Sollten Sie auf eines stoßen, können Sie das Captcha im Geckodriver einfach ausfüllen, und DorkNet wird seinen normalen Betrieb fortsetzen.