
Ein plugin-basierter Scanner, der Sicherheitsforschern hilft, Probleme in verschiedenen CMS zu identifizieren, hauptsächlich Drupal und Silverstripe.
Ein plugin-basierter Scanner, der Sicherheitsforschern hilft, Schwachstellen in verschiedenen CMS zu identifizieren.
Die Verwendung von droopescan für Angriffe auf Ziele ohne vorherige gegenseitige Zustimmung ist illegal. Es liegt in der Verantwortung des Endbenutzers, alle geltenden lokalen, staatlichen und bundesstaatlichen Gesetze einzuhalten. Die Entwickler übernehmen keine Haftung und sind nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Programm verursacht werden. Bitte beachten Sie, dass droopescan die wahrscheinlichste installierte Version des CMS auf dem entfernten Host ausgibt; jegliche Korrelation zwischen Versionsnummern und Sicherheitslücken muss vom Benutzer manuell durchgeführt werden.
Unterstützte CMS sind:
Teilweise Funktionalität für:
computer:~/droopescan$ droopescan scan drupal -u http://example.org/ -t 32
[+] No themes found.
[+] Possible interesting urls found:
Default changelog file - https://www.example.org/CHANGELOG.txt
Default admin - https://www.example.org/user/login
[+] Possible version(s):
7.34
[+] Plugins found:
views https://www.example.org/sites/all/modules/views/
https://www.example.org/sites/all/modules/views/README.txt
https://www.example.org/sites/all/modules/views/LICENSE.txt
token https://www.example.org/sites/all/modules/token/
https://www.example.org/sites/all/modules/token/README.txt
https://www.example.org/sites/all/modules/token/LICENSE.txt
pathauto https://www.example.org/sites/all/modules/pathauto/
https://www.example.org/sites/all/modules/pathauto/README.txt
https://www.example.org/sites/all/modules/pathauto/LICENSE.txt
https://www.example.org/sites/all/modules/pathauto/API.txt
libraries https://www.example.org/sites/all/modules/libraries/
https://www.example.org/sites/all/modules/libraries/CHANGELOG.txt
https://www.example.org/sites/all/modules/libraries/README.txt
https://www.example.org/sites/all/modules/libraries/LICENSE.txt
entity https://www.example.org/sites/all/modules/entity/
https://www.example.org/sites/all/modules/entity/README.txt
https://www.example.org/sites/all/modules/entity/LICENSE.txt
google_analytics https://www.example.org/sites/all/modules/google_analytics/
https://www.example.org/sites/all/modules/google_analytics/README.txt
https://www.example.org/sites/all/modules/google_analytics/LICENSE.txt
ctools https://www.example.org/sites/all/modules/ctools/
https://www.example.org/sites/all/modules/ctools/CHANGELOG.txt
https://www.example.org/sites/all/modules/ctools/LICENSE.txt
https://www.example.org/sites/all/modules/ctools/API.txt
features https://www.example.org/sites/all/modules/features/
https://www.example.org/sites/all/modules/features/CHANGELOG.txt
https://www.example.org/sites/all/modules/features/README.txt
https://www.example.org/sites/all/modules/features/LICENSE.txt
https://www.example.org/sites/all/modules/features/API.txt
[... snip for README ...]
[+] Scan finished (0:04:59.502427 elapsed)
Eine vollständige Liste der Optionen erhalten Sie mit:
droopescan --help
droopescan scan --help
Weil droopescan:
Die Installation ist einfach mit pip:
apt-get install python-pip
pip install droopescan
Die manuelle Installation erfolgt wie folgt:
git clone https://github.com/droope/droopescan.git
cd droopescan
pip install -r requirements.txt
./droopescan scan --help
Der Master-Zweig entspricht der neuesten Version (was in pypi verfügbar ist). Der Development-Zweig ist instabil und alle Pull-Requests müssen gegen diesen erfolgen.
Installation des BlackArch-Pakets (gepflegt von Dritten):
sudo pacman -S droopescan
Sie können ein Docker-Image erstellen und droopescan aus Docker ausführen:
git clone https://github.com/droope/droopescan.git
cd droopescan
docker build -t droope/droopescan .
# Hilfe anzeigen
docker run --rm droope/droopescan
# Beispiel: Scannen einer Drupal-Seite
docker run --rm droope/droopescan scan drupal -u https://drupal.example.com
Droopescan zielt darauf ab, standardmäßig die höchste Genauigkeit zu erreichen, ohne den Zielserver durch übermäßige gleichzeitige Anfragen zu überlasten. Daher wird standardmäßig eine große Anzahl von Anfragen mit vier Threads durchgeführt; ändern Sie diese Einstellungen mit den Argumenten --number und --threads.
Dieses Tool kann vier Arten von Tests durchführen. Standardmäßig werden alle Tests ausgeführt, aber Sie können einen der folgenden mit dem Flag -e oder --enumerate angeben:
Sie können einen bestimmten Host zum Scannen angeben, indem Sie den Parameter -u oder --url übergeben:
droopescan scan drupal -u example.org
Sie können auch das Argument drupal weglassen. Dies löst eine „CMS-Identifikation“ aus, wie folgt:
droopescan scan -u example.org
Mehrere URLs können mit dem Parameter -U oder --url-file gescannt werden. Dieser Parameter sollte auf den Pfad einer Datei gesetzt werden, die eine Liste von URLs enthält.
droopescan scan drupal -U list_of_urls.txt
Das Argument drupal kann auch in diesem Beispiel weggelassen werden. Für jede Website werden mehrere GET-Anfragen zur CMS-Identifikation durchgeführt. Wenn die Website als ein unterstütztes CMS erkannt wird, wird sie gescannt und zur Ausgabeliste hinzugefügt. Dies kann z. B. nützlich sein, um droopescan über alle Websites Ihrer Organisation auszuführen.
droopescan scan -U list_of_urls.txt
Das folgende Codebeispiel enthält eine Liste von URLs, eine pro Zeile:
http://localhost/drupal/6.0/
http://localhost/drupal/6.1/
http://localhost/drupal/6.10/
http://localhost/drupal/6.11/
http://localhost/drupal/6.12/
Eine Datei mit URLs und einem Wert, der den Standard-Host-Header überschreibt, getrennt durch Tabulatoren oder Leerzeichen, ist ebenfalls für URL-Dateien geeignet. Dies ist praktisch, wenn Sie einen Scan über einen großen Bereich von Hosts durchführen und unnötige DNS-Abfragen vermeiden möchten. Zur Verdeutlichung ein Beispiel unten:
192.168.1.1 example.org
http://192.168.1.1/ example.org
http://192.168.1.2/drupal/ example.org