
Сканер на основе плагинов, помогающий специалистам по безопасности выявлять проблемы в нескольких CMS, в основном Drupal и Silverstripe.
Сканер на основе плагинов, помогающий специалистам по безопасности выявлять проблемы с несколькими CMS.
Использование droopescan для атаки на цели без предварительного взаимного согласия незаконно. Ответственность за соблюдение всех применимых местных, государственных и федеральных законов лежит на конечном пользователе. Разработчики не несут ответственности и не отвечают за любое неправильное использование или ущерб, причиненный этой программой. Обратите внимание, что хотя droopescan выводит наиболее вероятную версию CMS, установленную на удаленном хосте, любое сопоставление номеров версий с уязвимостями должно выполняться пользователем вручную.
Поддерживаемые CMS:
Частичная функциональность для:
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)
Полный список опций можно получить, выполнив:
droopescan --help
droopescan scan --help
Потому что droopescan:
Установка проста с помощью pip:
apt-get install python-pip
pip install droopescan
Установка вручную выполняется следующим образом:
git clone https://github.com/droope/droopescan.git
cd droopescan
pip install -r requirements.txt
./droopescan scan --help
Ветка master соответствует последнему релизу (тому, что в pypi). Ветка разработки нестабильна, и все запросы на слияние должны быть направлены на неё.
Установка пакета BlackArch (поддерживается третьей стороной):
sudo pacman -S droopescan
Вы можете собрать Docker-образ и запускать droopescan из Docker:
git clone https://github.com/droope/droopescan.git
cd droopescan
docker build -t droope/droopescan .
# отображение справки
docker run --rm droope/droopescan
# пример сканирования сайта на Drupal
docker run --rm droope/droopescan scan drupal -u https://drupal.example.com
Droopescan стремится быть максимально точным по умолчанию, не перегружая целевой сервер из-за чрезмерного количества одновременных запросов. Поэтому по умолчанию выполняется большое количество запросов с четырьмя потоками; измените эти параметры с помощью аргументов --number и --threads соответственно.
Этот инструмент может выполнять четыре типа проверок. По умолчанию выполняются все проверки, но вы можете указать один из следующих флагов с помощью флага -e или --enumerate:
Вы можете указать конкретный хост для сканирования, передав параметр -u или --url:
droopescan scan drupal -u example.org
Вы также можете опустить аргумент drupal. Это запустит «идентификацию CMS» следующим образом:
droopescan scan -u example.org
Несколько URL могут быть отсканированы с помощью параметра -U или --url-file. Этот параметр должен указывать на файл, содержащий список URL.
droopescan scan drupal -U list_of_urls.txt
Параметр drupal также может быть опущен в этом примере. Для каждого сайта будет выполнено несколько GET-запросов для идентификации CMS, и если сайт признаётся поддерживаемой CMS, он сканируется и добавляется в выходной список. Это может быть полезно, например, для запуска droopescan на всех сайтах вашей организации.
droopescan scan -U list_of_urls.txt
В блоке кода ниже приведён пример списка URL, по одному на строку:
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/
Также допускается файл, содержащий URL и значение для переопределения заголовка Host по умолчанию, разделённые табуляцией или пробелами. Это удобно при сканировании большого диапазона хостов, когда вы хотите избежать лишних DNS-запросов. Для пояснения ниже приведён пример:
192.168.1.1 example.org
http://192.168.1.1/ example.org
http://192.168.1.2/drupal/ example.org
Вполне соблазнительно проверить, работает ли сканер для конкретной CMS, сканируя официальный сайт (например, wordpress.org для WordPress), но официальные сайты редко работают со стандартными установками своих CMS или делают нетрадиционные вещи. Например, wordpress.org работает с самой последней версией WordPress, которая не будет идентифицирована как WordPress с помощью droopescan, поскольку контрольные суммы не совпадают ни с одной известной версией WordPress.
Приложение полностью поддерживает файлы .netrc и переменные окружения http_proxy.