(whatweb, wappalyzer, nuclei, httpx, gau, waybackurls, burp suite, dalfox, arjun)
Enumeracja aplikacyjna (Webowa)
Szukanie ukrytych katalogów, struktur, plików, ukrytych endpointów, identyfikacja technologii, przygotowanie do exploitacji (np. XSS, SQLi, IDOR).
nikto – skanowanie aplikacji webowych pod kątem znanych błędów i podatności.
dirb – brute-force katalogów i plików. Proste, lekkie, lokalne.
gobuster – szybkie brute-force katalogów/plików (HTTP, DNS). Szybszy, wielowątkowy.
ffuf – szybki fuzzing webowy (ścieżki, pliki, parametry, nagłówki). Mega szybki, wsparcie fuzzing.
ldapsearch – eksploracja katalogów LDAP (Enumeracja sieciowa/aplikacyjnna zależnie od kontekstu)
Rozszerzenie:
whatweb, wappalyzer, httprobe – fingerprinting technologii web.
httpx – szybki skaner żywych hostów (często używany w reconie bug bounty).
feroxbuster – alternatywa dla ffuf/gobuster (w Rust, bardzo szybka).
waybackurls, gau – ekstrakcja archiwalnych endpointów z archive.org.
dalfox, kiterunner, arjun – zaawansowany fuzzing endpointów, parametrów, XSS itd.
burpsuite (i CLI: burp-rest-api, autorize, bypasswaf) – analiza manualna i półautomatyczna.
nuclei – potężne narzędzie do szablonowego skanowania podatności.
jaeles – alternatywa do nuclei.
Dodatkowo:
sqlmap – automatyczne wykrywanie i eksploatacja podatności SQL Injection (obsługa GET/POST/headers/cookies). Potrafi enumerować bazy, tabele, kolumny, dane. Wbudowane bypassy WAF.
sqlmap -u "http://target.com/page.php?id=1" --dbs
Nikto
Nikto to open-source'owy skaner podatności aplikacji webowych. Służy do wykrywania luk, błędnych konfiguracji i przestarzałych komponentów na serwerach webowych. Jego głowne cechy to:
- Wykrywa ponad 6700 podatności – m.in. błędy konfiguracji, niebezpieczne pliki, stare wersje oprogramowania.
- Szybkie skanowanie i raportowanie – szczegółowe wyniki w kilka minut.
- Możliwość konfiguracji skanów – wybór modułów, katalogów, user-agentów, itp.
Unikaj skanowania środowisk produkcyjnych bez pozwolenia: Nikto jest narzędziem inwazyjnym, które generuje dużo ruchu. Upewnij się, że masz zgodę, by nie wywołać zakłóceń w sieci lub alertów detekcji.
Wykorzystuj wyniki skanów do naprawy problemów: Regularnie aktualizuj oprogramowanie, wdrażaj rekomendowane nagłówki bezpieczeństwa i ogranicz dostęp do katalogów na podstawie wyników Nikto.
Podstawowa składnia
nikto -h <host> [opcje]
Najczęściej używane opcje Nikto
-h <host> Adres IP, domena lub URL serwera docelowego
-p <port> Typy testów do wykonania
-Tuning <opcja> Typy testów do wykonania (np. 123b, 0 dla wszystkich)
-Display <opcja> Kontrola tego, co ma być wyświetlane (np. V dla podatności)
-Format <typ> Format zapisu wyników: txt, csv, html, json, xml, nbe
-o <plik> Zapis wyników skanowania do pliku
-Pause <sekundy> Opóźnienie między żądaniami, np. -Pause 3
-useragent <UA> Ustawienie własnego User-Agent
-timeout <sekundy> Limit czasu oczekiwania na odpowiedź HTTP
-ssl Wymuszenie użycia HTTPS
-nossl Wyłączenie SSL, nawet jeśli port wskazuje HTTPS
-no404 Pomija wykrywanie niestandardowych stron 404
-Plugins <lista> Wykorzystanie tylko wybranych pluginów (np. headers, ssl)
-evasion <typ> Techniki omijania IDS/IPS (np. -evasion 1)
-vhost <host> Wymuszenie nagłówka Host (dla Virtual Host)
-id <użytkownik:hasło> HTTP Basic Auth – uwierzytelnianie
-mutate <typ> Mutacje testów – niestandardowe zachowanie skanera
-useproxy Użycie proxy określonego w pliku konfiguracyjnym
-update Aktualizacja bazy podatności Nikto
-list-plugins Wyświetla wszystkie dostępne pluginy
-Help Wyświetlenie pomocy i listy opcji
-Version Wersja Nikto
-output Zapisuje wynik skanowania do pliku
-C Sprawdza podatności związane z HTTP (np. brak nagłówków bezpieczeństwa)
Skanowanie pod kątem konkretnych podatności
Nikto pozwala skanować wybrane typy podatności dzięki opcji -Tuning. Kody Tuning umożliwiają określenie, na czym ma się skupić skan. Przykładowo tuning code 4 skupia się na testach związanych z wykrywaniem potencjalnie niebezpiecznych punktów do uploadu plików – np. /uploads, /images, /files.
Skanowanie pod kątem podatności związanych z uploadem plików
nikto -h <target-domain> -Tuning 4
Tuning code 5 uruchamia testy mające na celu wykrycie podatności typu Command Injection, XST (Cross Site Tracing), oraz innych związanych z możliwością wstrzyknięcia nieautoryzowanego kodu.
Skanowanie pod kątem podatności typu Injection
nikto -h <target-domain> -Tuning 4
Tuning – lista kodów
0 Upload plików
1 Ciekawe pliki / Pliki widoczne w logach
2 Błędna konfiguracja / Pliki domyślne
3 Ujawnianie informacji
4 Wstrzykiwanie (XSS / Script / HTML)
5 Zdalne pobieranie plików (np. webshells)
Użycie Nikto z Burp Suite
Możesz przekierować ruch Nikto przez Burp Suite za pomocą proxy, aby przechwytywać i analizować żądania HTTP w czasie rzeczywistym:
nikto -h -useproxy http://127.0.0.1:8080
Polecenie przekierowuje cały ruch Nikto przez Burp Suite działający lokalnie na 127.0.0.1:8080. Umożliwia to dokładną analizę każdego żądania HTTP/HTTPS w zakładce Proxy > HTTP history. Możliwa jest interakcja Nikto z Burp Suite — każde żądanie skanera jest przechwytywane i może zostać dokładnie przeanalizowane lub zmodyfikowane.
Przykłady użycia
-
Skanowanie podstawowe:
nikto -h http://192.168.0.1 -
Skanowanie z opóźnieniem 3 sekundy między żądaniami:
nikto -h http://192.168.0.1 -Pause 3 -
Skanowanie HTTPS na porcie 8443 z zapisem do pliku HTML:
nikto -h 192.168.0.1 -p 8443 -ssl -Format htm -o raport.html -
Skanowanie z użyciem określonego User-Agent:
nikto -h target.com -useragent "Mozilla/5.0 PentestBot" -
Skanowanie z HTTP Basic Auth:
nikto -h target.com -id admin:password123
Przykłady testów
- Wykrywanie podatności HTTP oraz eksport wyników
Zadanie: Przeprowadzenie skanowania aplikacji webowej z wykorzystaniem Nikto, z określonym limitem czasu na odpowiedź serwera oraz zapisem wyników do pliku. W ramach testu należy również uwzględnić wszystkie podatności związane z konfiguracją HTTP.*Skanowanie HTTP z timeoutem 10 sekund, zapisem do pliku oraz uruchomieniem wszystkich testów związanych z nagłówkami i konfiguracją HTTP (-C all).bash
nikto -h http://example.com -output example_scan.txt -timeout 10 -C all
- Ukrywanie skanu przez modyfikację nagłówka User-Agent
Zadanie: Przeprowadzenie skanowania Nikto z podszyciem się pod ruch przeglądarki Google Chrome na Windows 10 w celu uniknięcia wykrycia przez systemy WAF/IDS.*Zmiana domyślnego nagłówka User-Agent Nikto na taki, jaki generuje prawdziwa przeglądarka. Pozwala to na ukrycie ruchu skanera wśród zwykłego ruchu HTTP i ominięcie prostych reguł bezpieczeństwa. To świetny sposób, by symulować ruch prawdziwej przeglądarki (np. Google Chrome na Windows 10) i uniknąć wykrycia przez podstawowe systemy monitorującebash
nikto -h -useragent "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"
- Intercepting Nikto traffic via Burp Suite
Zadanie: Przeprowadzenie skanowania Nikto z użyciem lokalnego proxy Burp Suite w celu przechwycenia i analizy żądań HTTP wysyłanych do aplikacji webowej.*Burp Suite musi być uruchomiony i nasłuchiwać na porcie 8080. Pozwala to monitorować i analizować każde żądanie HTTP/HTTPS wysyłane przez Nikto.bash
nikto -h http://target.local -useproxy http://127.0.0.1:8080
Dirb
Dirb to narzędzie służące do brute-force’owego odkrywania ukrytych katalogów i plików w aplikacjach webowych. Wykorzystuje słowniki (wordlisty - które są wbudowane lub możliwość użycia własnych), aby automatycznie generować i wysyłać żądania HTTP do zasobów na serwerze. Jest bardzo przydatne w fazie rekonesansu podczas testów penetracyjnych oraz CTF-ów. Zastosowanie DIRB w pentestach:
- Odkrywanie ukrytych paneli administracyjnych (/admin/, /panel/).
- Wyszukiwanie zapomnianych plików (backup.bak, db.sql, index.old.php).
- Rekonesans serwisów, gdzie nie ma publicznych linków ani mapy strony.
- Walidacja błędnej konfiguracji plików .htaccess, dostępnych zasobów .git, .env, itp.

Dirb command
dirb http://example.com Podstawowy skan HTTPS z domyślną wordlistą. Używa domyślnej listy /usr/share/dirb/wordlists/common.txt. W praktyce nie używaj jedynie domyślnej wordlisty. Najlepsze efekty dają słowniki z SecLists -> https://github.com/danielmiessler/SecLists
dirb http://example.com /path/to/custom_wordlist.txt Skan z własną wordlistą
dirb http://example.com/hidden/ Skanowanie konkretnej ścieżki
dirb http://example.com -o wynik.txt Zapis wyników do pliku
dirb http://example.com -p http://127.0.0.1:8080 Użycie proxy (np. Burp Suite)
dirb http://example.com -X .php -N 403 Ignorowanie kodu odpowiedzi (np. 403). Nie zawsze 403 = brak dostępu. W niektórych konfiguracjach katalogi 403 istnieją — tylko wymagają tokenu/auth.
Gobuster
Gobuster to szybkie, wielowątkowe narzędzie do fuzzingu zasobów webowych i DNS. W przeciwieństwie do dirb, działa znacznie szybciej, ponieważ opiera się na żądaniach HTTP bez renderowania. Zostało napisane w języku Go, dlatego działa błyskawicznie i świetnie nadaje się do dużych skanów. To narzędzie do brutalnego skanowania katalogów i plików na serwerach webowych. Wykorzystuje listę słów do odkrywania ukrytych katalogów i plików poprzez wysyłanie wielu zapytań HTTP.
- Wymaga do swojego działania słowników. Wykorzystamy do tego celu SecLists. Są one domyślnie zainstalowane w Kali Linux, jednak na wszelki wypadek podajemy dwie metody instalacji:
- sudo apt install seclists #instaluje do /usr/share/seclists
- git clone https://github.com/danielmiessler/SecLists.git
Przykłady list:
/usr/share/seclists/Discovery/Web-Content/raft-small-directories.txt - katalogi.
/usr/share/seclists/Discovery/Web-Content/raft-small-files.txt - pliki.
/usr/share/seclists/Discovery/DNS/fierce-hostlist.txt - nazwy wirtualnych hostów.
/usr/share/seclists/Discovery/DNS/subdomains-top1million-5000.txt - subdomeny.
/usr/share/seclists/Passwords/darkweb2017-top100.txt - hasła.