Droopescan wsparcie w skanach aplikacji Drupalowych to kolejna odsłona wpisów o narzędziach – wspierających Waszą pracę przy tematyce Security.
Wprowadzenie
Drupal to jedna z najbardziej rozbudowanych platform CMS, wykorzystywana do tworzenia stron internetowych, blogów, portali informacyjnych czy nawet systemów e-commerce. Dzięki otwartemu kodowi źródłowemu Drupal oferuje elastyczność, ale jego modularna struktura oznacza, że może być również celem ataków hakerskich. Aby przeciwdziałać takim zagrożeniom, warto korzystać z narzędzi do audytu bezpieczeństwa, takich jak Droopescan.
Opis narzędzia
Droopescan to narzędzie open-source napisane w Pythonie, które umożliwia skanowanie aplikacji opartych na popularnych CMS-ach, takich jak Drupal, SilverStripe, Joomla czy WordPress. Jednak jego głównym przeznaczeniem jest analiza Drupala. Narzędzie jest używane przez pentesterów, administratorów systemów oraz ekspertów ds. bezpieczeństwa.
Pamiętać, należy, że w przypadku innych CMS aniżeli Drupal istnieją pewne ograniczenia:
- SilverStripe, Joomla, WordPress: Możliwości są ograniczone do bardziej podstawowej analizy, np. identyfikacji wersji lub prostego wykrywania luk bezpieczeństwa, jeśli są one zgodne z formatem danych narzędzia.
Przez co należy podkreślić, że Droopescan nie jest uniwersalnym narzędziem do audytu wszystkich CMS-ów i w przypadku systemów innych niż Drupal jego funkcjonalność może być ograniczona. Jeśli potrzebujesz szczegółowej analizy dla takich platform jak Joomla czy WordPress, lepiej sięgnąć po dedykowane narzędzia, np.:
- WPScan dla WordPressa.
- JoomScan dla Joomla.
O dwóch w/wym. narzędziach będzie w kolejnych wpisach.
Kluczowe cechy narzędzia:
- Skanowanie specyficzne dla Drupala i innych CMS-ów
- Dedykowane wsparcie dla Drupala oraz kompatybilność z innymi systemami zarządzania treścią, takimi jak Joomla, WordPress czy SilverStripe.
- Identyfikacja wersji CMS
- Precyzyjnie określa wersję Drupala używaną na stronie, co umożliwia sprawdzenie podatności w bazie CVE.
- Wykrywanie modułów i motywów
- Skanuje zainstalowane moduły i motywy, ujawniając ich potencjalne podatności.
- Analiza podatności (Vulnerability Analysis)
- Sprawdza znane podatności dla wykrytych wersji CMS, modułów i motywów, opierając się na publicznych bazach podatności.
- Szybkość i efektywność
- Optymalizowane pod kątem szybkości skanowania nawet dużych witryn.
- Obsługa anonimowego skanowania przez proxy
- Możliwość użycia proxy do ukrycia adresu IP użytkownika podczas skanowania.
- Eksport wyników
- Raporty można zapisać w formatach takich jak TXT, co ułatwia ich późniejszą analizę i raportowanie.
- Otwartoźródłowość
- Dostępne jako darmowe oprogramowanie typu open-source, z możliwością dostosowania kodu do własnych potrzeb.
- Wsparcie dla podstawowych i zaawansowanych użytkowników
- Proste komendy dla początkujących oraz zaawansowane opcje konfiguracyjne dla ekspertów.
- Regularne aktualizacje
- Twórcy narzędzia i społeczność użytkowników stale aktualizują Droopescan, dodając nowe funkcje i podatności do bazy
Instalacja
Aby zainstalować Droopescana, należy wykonać kilka prostych kroków:
- Zainstaluj Pythona i pip (jeśli jeszcze ich nie masz):
- Na systemie Debian/Ubuntu:
- Na systemie RedHat/CentOS/Fedora:
- Na systemie Windows:
- Pobierz najnowszą wersję Pythona ze strony Python.org i zainstaluj, zaznaczając opcję „Add Python to PATH”.
- Pobierz kod Droopescan: Możesz pobrać narzędzie bezpośrednio z GitHub:
- Przejdź do katalogu Droopescan: Po sklonowaniu repozytorium przejdź do folderu:
- Zainstaluj wymagane zależności: Droopescan wymaga kilku dodatkowych pakietów Python. Zainstaluj je za pomocą polecenia:
Po wykonaniu tych kroków Droopescan jest gotowy do użycia.
Podstawowe i zaawansowane polecenia Droopescan
Droopescan może być użyty w różnych scenariuszach testów bezpieczeństwa. Oto kilka przykładów, jak uruchomić narzędzie oraz jakie wyniki można uzyskać.
Droopescan oferuje szeroki zakres funkcji, które można dostosować do potrzeb użytkownika. Oto bardziej szczegółowy przegląd komend i przykładów ich zastosowań.
1. Podstawowe polecenia
- Skanowanie podstawowe:
To najprostsza komenda, która uruchamia pełne skanowanie strony. Wynikiem będzie zestaw informacji o wersji Drupala, modułach i motywach.
- Sprawdzanie wersji Drupala:
W wyniku tej komendy otrzymasz wersję Drupala, co pozwoli określić, czy strona jest podatna na znane luki.
2. Zaawansowane polecenia
- Analiza zainstalowanych modułów:
Dzięki tej opcji Droopescan wyszuka wszystkie publicznie dostępne moduły i sprawdzi, czy są znane ich podatności.
- Identyfikacja motywów:
Możesz dowiedzieć się, jakie motywy są używane na stronie.
- Skanowanie za pomocą proxy: Jeśli chcesz zachować anonimowość podczas skanowania, możesz użyć proxy:
- Specyficzne wyszukiwanie podatności: Możesz także skoncentrować się na wybranych podatnościach:
Jakie informacje możemy uzyskać dzięki Droopescan?
Droopescan dostarcza szeroki wachlarz danych. Oto kilka przykładów:
1. Identyfikacja wersji Drupala:
Na przykład, jeśli wersja Drupala to 8.9.20, a narzędzie wskaże, że istnieje luka typu RCE (Remote Code Execution), możesz od razu zaktualizować system.
2. Zainstalowane moduły i ich podatności:
Jeśli na stronie zidentyfikowano moduł 'Views’ w wersji 3.x, Droopescan może wskazać znane luki, takie jak SQL Injection.
3. Motywy i ich słabości:
Droopescan może wykryć, czy zainstalowany motyw ma niezałatane luki.
4. Publiczne katalogi i pliki konfiguracyjne:
Narzędzie często wykrywa nieodpowiednio zabezpieczone katalogi, takie jak '/sites/default/files’, które mogą ujawniać wrażliwe dane.
Integracja z gitlab-ci.yml
Aby uruchomić narzędzie na gitlabie aby uruchamiać skany szybko bez konieczności przygotowywania środowiska, wystarczy stworzenie skryptu:
stages:
- scan
drupal_scanner:
stage: scan
tags:
- your-runner-name
image: python:3.8
script:
- pip install --upgrade pip
- pip install droopescan
- droopescan scan drupal -u https://example.org | tee scan_log.txt
artifacts:
paths:
- scan_log.txt
Szkolenie
Jeżeli interesuje Cię mocno temat narzędzi dla QA do wsparcia tematów bezpieczeństwa, zajrzyj na naszą ofertę szkolenia wprowadzenia do testów bezpieczeństwa dla QA.
Zapisz się już teraz wraz z kodem LI-10 (-10%)
Podsumowanie
Droopescan to niezwykle przydatne narzędzie w arsenale pracy przy bezpieczeństwie aplikacji Drupalowych. Artykuł Droopescan wsparcie w skanach aplikacji Drupalowych to kolejny wpis na temat Security na serwisie dlaTesterow.PL. Narzędzie dzięki prostocie obsługi i możliwości integracji z innymi narzędziami jak np. z Gitlabem,