Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
OpenVAS – darmowy skaner podatności
Wstęp
Jednym z etapów realizacji testów penetracyjnych jest wyszukiwanie oraz analizowanie podatności skanowanej maszyny. Oczywiście moglibyśmy zrobić to własnoręcznie, sprawdzając po kolei wszystkie otwarte porty, a następnie testować na nich znane nam podatności. Jednak przez kilka następnych miesięcy raczej nie znaleźlibyśmy wtedy czasu dla nikogo i niczego innego.
Warto więc poznawać narzędzia, które wykonują za nas większość tej żmudnej pracy. Dobrym ich przykładem są skanery podatności: programy, których celem jest sprawdzanie poziomu zagrożenia i enumeracja podatności systemów komputerowych oraz sieci z wykorzystaniem bazy specjalnie przygotowanych testów.
Niniejszy artykuł poświęcę frameworkowi OpenVAS, ale warto też wspomnieć o alternatywach. Jedną z nich jest Nessus dostępny w dwóch wariantach (darmowym oraz płatnym). Różnica pomiędzy nimi polega na feedach, które subskrybujemy, oraz licencji do użytku komercyjnego.
Wróćmy jednak do tematu głównego, czyli do OpenVASa.
OpenVAS…
… to w pełni darmowy oraz łatwo dostępny framework pełniący rolę skanera podatności. Poniższa ilustracja w całości ukazuje poszczególne serwisy oraz narzędzia wchodzące w skład skanera.
I tak dla wybrednych użytkowników OpenVAS udostępnia aż trzy różne aplikacje klienckie, zapewniające mniej lub bardziej intuicyjny interface do jego obsługi. Jeżeli więc nie jesteśmy fanem wersji webowej, możemy bez większego problemu przerzucić się na okienka lub pozostać w terminalu. Standardowo framework wykorzystuje trzy lub cztery wysokie porty w przypadku webowej aplikacji klienckiej, bazę danych SQLite do przechowywania wyników skanów i własnej konfiguracji oraz zbiór NVT (Network Vulnerability Tests), czyli bazowych feedów, w które wyposażony jest skaner zaraz po uruchomieniu i synchronizacji.
Warto nadmienić, że OpenVas posiada możliwość wykorzystywania feedów komercyjnych przygotowywanych przez fundację Greenbone. Są to testy, których głównymi zaletami są codzienne aktualizacje, pokrycie dla najczęściej używanych systemów operacyjnych i wektorów ataku. Więcej informacji na ten temat.
Pierwsze kroki
Zobaczmy teraz, jak skonfigurować i wystartować skaner oraz jak przeprowadzić pierwszy skan na platformie Kali Linux.
1. Uruchom konsole w trybie root. Wpisz ‘openvas’ oraz wykorzystaj uzupełnienie ‘tabem’, aby zobaczyć, co zaproponuje Ci system. Wynik powinien wyglądać mniej więcej tak jak na obrazku poniżej.
2. Skonfiguruj OpenVASa za pomocą polecenia ‘openvas-setup’, zastosuj się do poleceń wyświetlonych przez konfigurator i ustaw hasło dla admin usera (całość może trochę potrwać, jeżeli jest wykonywana po raz pierwszy). Polecenie ‘openvas-setup’ aktualizuje NVT, wczytuje pluginy oraz restartuje wszystkie serwisy, więc w efekcie po jego wykonaniu nie musisz wykonać komendy ‘openvas-start’.
3. Jeżeli przy wykonaniu powyższego polecenia pojawiły się problemy, skorzystaj z komendy ‘openvas-check-setup’, aby sprawdzić, co spowodowało błąd i jak możesz temu zaradzić.
4. Uruchom dowolną przeglądarkę stron internetowych (Chrome, Opera itp. itd.) i odwiedź stronę https://localhost:9392. Powinien was przywitać wyjątek na temat zagrożenia wynikającego z niezaufanego certyfikatu, a następnie strona jak na obrazku poniżej.
5. Zaloguj się na konto administratora.(login: ‘admin’, hasło: ustalone przy kofiguracji). Rezultat został przedstawiony poniżej.
6. Wpisz w pole szybkiego skanu ‘localhost’ i wciśnij przycisk ‘Start Scan’, aby przekonać się, czy OpenVAS coś znajdzie w twoim komputerze.
7. Już po wykonaniu nawet jednego procenta skanu, można przeglądać jego wyniki, klikając w polu ‘Action’ ikonkę fioletowej lupy. Rezultat został przedstawiony poniżej.
8. Po ponownym kliknięciu w ikonę lupy w sekcji Action, tym razem w raportach, pojawi się zaawansowany filtr oraz szczegółowe wyniki skanu naszej maszyny.
Podsumowanie
OpenVAS automatyzuje powolną pracę, której nikt z własnej woli nie chciałby wykonywać bez pomocy odpowiednich narzędzi. Przy bardziej zaawansowanych skanach framework umożliwia sprawdzanie równoległe hostów, podatności oraz tworzenie własnych list portów i konfigurację testów NVT. Dodatkowo przedstawia wyniki w czasie rzeczywistym, co przy testach rozciągniętych w czasie jest wielkim ułatwieniem. Nie jest narzędziem idealnym, parę rzeczy można by w nim dopracować, inne poprawić, ale całkiem dobrze sprawdza się w codziennej pracy.
Bibliografia
- Przykładowe raporty z różnych skanerów podatności oraz porównanie ich działania.
- Diagram frameworku OpenVAS z oficjalnej strony.
- Diagram NVT z oficjalnej strony.
— Mateusz Stahl [mateusz.stahl<at>gmail.com]
Polecam jeszcze Armitage: http://www.fastandeasyhacking.com/ oraz Arachni: http://www.arachni-scanner.com/
Można powiedzieć, że OpenVAS jest prostym meta-skanerem, bo może wykorzystywać też inne narzędzia (m.in. nmap, nikto, o ile dobrze pamiętam to też arachni). Niewielką wadą jest praktycznie brak dokumentacji (na stronie projektu jest informacja, że poszukują skryby), ale narzędzie jest dość proste w zarządzaniu i wykorzystaniu.
Jeszcze jedną wadą jest to, że sygnatury są też OpenSource co oznacza że pewnie nie są gruntownie testowane (przypadkowy DoS), czy może łatwo dodać tam jakiś „lewy” atak. Choć po ostatnich doniesieniach, to i do komercyjnych softów można spróbować spokojnie coś takiego dodać (z drugiej strony: do straty jest znacznie więcej niż w przypadku jednak niszowego projektu OS).
Swoją drogą, polecicie skanery podatności których używacie?
Nexpose, Metasploit, CANVAS, Core Impact – to kilka przykładów już bardziej kombajnów do testów penetracyjnych. Niektóre niestety koszmarnie drogie, ale np. dające możliwość zabawy 0days czy pełnego sprzątania po pentestach.
http://www.metasploit.org/
http://www.rapid7.com/products/nexpose/vulnerability-scanning-for-reconnaissance.jsp
http://www.immunitysec.com/products-canvas.shtml
http://www.coresecurity.com/core-impact-pro
Swoją drogą nmap powoli staje się też niewielkim skanerem podatności (a dokładniej: NSE). Niedługo u nas tekst w tym temacie.
Ja mogę jeszcze dodać od siebie:
– xsser – http://xsser.sourceforge.net/
– sqlmap – http://sqlmap.org/
– Havji – http://www.itsecteam.com/products/havij-v116-advanced-sql-injection/
– OWASP ZAP – https://www.owasp.org/index.php/OWASP_Zed_Attack_Proxy_Project
Proszę o doklejenie do wcześniejszego komentarza:
– ShodanHQ – http://www.shodanhq.com/ – skanowanie usług
– http://www.bing.com – wykrywanie VHostów w Apache
Kto da więcej? ;)
Ja w temacie webu dorzucę na przykład:
http://w3af.org/
czy bardziej już specjalizowane:
http://www.cirt.net/nikto2
http://sekurak.pl/dirbuster-wykrywanie-zasobow-w-webaplikacjach/
http://www.kali.org/
PS.
oj tam oj tam ;P
To trochę jak http://www.google.com/ :P
PS
http://www.hackersforcharity.org/ghdb/
„restartuje wszystkie serwisy”? Takie do herbaty? :) Słowo „usługi” chyba lepiej pasuje.