Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP
Przeskanują Państwo aplikacje internetowe pod kątem typowych podatności za pomocą aktywnego skanera Nikto i OWASP ZAP.
Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP to bezpłatna lekcja Cyber Security Academy na CoddyKit. To lekcja 3 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cyber Security Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.
Powierzchnia ataku aplikacji internetowej
Aplikacje internetowe udostępniają złożoną powierzchnię ataku: parametry URL, pola formularzy, pliki cookie, nagłówki, przesyłanie plików i interfejsy API. Automatyczne skanery systematycznie sondują wszystkie te elementy pod kątem typowych podatności.
Podstawy Nikto
Nikto to uruchamiany z wiersza poleceń skaner serwerów WWW, który sprawdza niebezpieczne pliki, nieaktualne oprogramowanie, niezabezpieczone nagłówki i znane CVE. Jest szybki, prosty i głośny — nie jest narzędziem ukrytym.
nikto -h http://target.com
# Key options:
# -h target host
# -p port (default 80)
# -ssl for HTTPS
# -Tuning to filter check types
# -o output file, -Format formatInterpretowanie wyników Nikto
Nikto poprzedza wykrycia znakiem +. Należy zwrócić uwagę na: ujawnione interfejsy administracyjne, listowanie katalogów, brakujące nagłówki bezpieczeństwa, nieaktualne wersje serwera oraz potencjalnie niebezpieczne pliki, takie jak /phpinfo.php.
+ Server: Apache/2.4.49
+ /admin/: Admin login page found
+ /phpinfo.php: PHP info exposed
+ X-Frame-Options header missing
+ Allowed HTTP Methods: GET, POST, PUT, DELETEWprowadzenie do OWASP ZAP
OWASP ZAP (Zed Attack Proxy) to wyposażony w pełny zestaw funkcji skaner bezpieczeństwa aplikacji internetowych z interfejsem graficznym i API. Działa jako proxy, spider i aktywny skaner, dzięki czemu nadaje się zarówno do testów ręcznych, jak i automatycznych.
Konfiguracja proxy ZAP
Należy skonfigurować przeglądarkę tak, aby używała ZAP jako proxy (localhost:8080). ZAP przechwytuje cały ruch i tworzy mapę witryny. Ta pasywna faza zbiera informacje bez wysyłania ładunków ataku.
# Start ZAP
zap.sh
# Or headless CLI
zap.sh -daemon -port 8080
# Set browser proxy:
# HTTP: 127.0.0.1:8080Spider ZAP
Spider przeszukuje aplikację, podążając za odsyłaczami i akcjami formularzy. Spider AJAX obsługuje aplikacje jednostronicowe intensywnie wykorzystujące JavaScript. Oba narzędzia tworzą kompletną mapę witryny na potrzeby aktywnego skanowania.
# CLI spider
zap-cli spider http://target.com
# AJAX spider for SPAs
# Use GUI: Tools > AJAX SpiderAktywny skaner ZAP
Aktywny skaner wysyła ładunki ataku, takie jak SQL injection, XSS i path traversal, do każdego wykrytego wejścia. Poziomy ryzyka to: High, Medium, Low i Informational.
zap-cli active-scan --scanners all http://target.com
# Or via API
curl "http://localhost:8080/JSON/ascan/action/scan/?url=http://target.com"Odczytywanie alertów ZAP
ZAP grupuje wykrycia w alerty. Każdy alert zawiera: poziom ryzyka, poziom pewności, adres URL, którego dotyczy problem, użyty ładunek ataku, dowody z odpowiedzi oraz zalecane usunięcie problemu. Wysoki poziom pewności oznacza mniej fałszywych wyników.
ZAP w potokach CI/CD
ZAP udostępnia obraz Docker do automatycznego skanowania w potokach. Skrypt zap-baseline.py wykonuje skanowanie pasywne odpowiednie dla CI, a zap-full-scan.py wykonuje skanowanie aktywne.
# Docker baseline scan (passive only)
docker run -t zaproxy/zap-stable \
zap-baseline.py -t http://target.com
# Full active scan
docker run -t zaproxy/zap-stable \
zap-full-scan.py -t http://target.comPorównanie Nikto i ZAP
Nikto: prosty, szybki, uruchamiany z wiersza poleceń, najlepszy do szybkich kontroli i problemów na poziomie serwera. ZAP: kompleksowy, oparty na proxy, obsługuje złożone aplikacje i lepiej nadaje się do wykrywania podatności na poziomie aplikacji oraz integracji z CI.
Zakres i upoważnienie
Należy skanować wyłącznie systemy będące własnością użytkownika lub takie, do których testowania ma on pisemne upoważnienie. Skanowanie bez upoważnienia może naruszać przepisy prawa (CFAA, Computer Misuse Act) i warunki korzystania z usług, nawet jeśli nie jest zamierzone wyrządzenie szkody.
Szybkie sprawdzenie
Co odróżnia aktywny skaner ZAP od skanowania pasywnego?
Podsumowanie: narzędzia do skanowania WWW
Nikto w kilka sekund dostarcza szybkie wyniki dotyczące poziomu serwera. ZAP zapewnia pogłębione skanowanie na poziomie aplikacji z przechwytywaniem przez proxy, spideringiem i aktywnymi atakami. Oba narzędzia wymagają upoważnienia. W dojrzałych potokach należy automatyzować bazowe skanowania ZAP przy każdym wdrożeniu, aby wykrywać regresje, zanim trafią do produkcji.
Często zadawane pytania
Czy lekcja „Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP” jest bezpłatna?
Tak — pełny tekst „Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cyber Security Academy, przejdź na CoddyKit PRO. Kurs Cyber Security Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP”?
Przeskanują Państwo aplikacje internetowe pod kątem typowych podatności za pomocą aktywnego skanera Nikto i OWASP ZAP. Ćwiczysz Cyber Security Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cyber Security Academy?
Nie wymagamy żadnego doświadczenia. Cyber Security Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 3 z 4.
Ile czasu zajmuje lekcja „Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cyber Security Academy?
Tak. Każda lekcja Cyber Security Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- CVE, CWE i ocena CVSS
- Skanowanie za pomocą Nessus lub OpenVAS
- Skanowanie aplikacji internetowych za pomocą Nikto i OWASP ZAP
- Priorytetyzacja i usuwanie podatności