Nmap berättar att en webbserver finns. Nikto berättar vad som är fel med den. Det är ett av de äldsta open source-verktygen inom websäkerhet — och fortfarande standardvalet för "snabb första titt" på en webbtjänst.
testphp.vulnweb.com (Acunetix officiella demo), juice-shop.herokuapp.com, OWASP Juice Shop i en lokal Docker-container, eller din egen test-webbserver.
01Vad Nikto egentligen är
Nikto är ett kommandoradsverktyg som testar en webbserver mot en databas på ~7000 kända problem. Det är inte smart — det är som en checklista som körs igenom snabbt. Men checklistan är gigantisk och täcker:
- Server-versioner som är kända för sårbarheter
- Default-filer som inte borde vara online (
/phpinfo.php,/test.html,/admin/,/.git/) - Default-konton på vanliga produkter (Tomcat manager, phpMyAdmin)
- Felkonfigurerade headers (missar CSP, X-Frame-Options, etc.)
- Kända CGI-skript med dokumenterade sårbarheter
Nikto har funnits sedan 2001 — om något verktyg är "battle-tested" så är det det här.
02Installation
Linux:
sudo apt install nikto
nikto -Version
Nikto v2.5.0
macOS:
brew install nikto
Windows: Nikto är ett Perl-script. Du behöver först installera Strawberry Perl från strawberryperl.com, sedan klona repot:
git clone https://github.com/sullo/nikto cd nikto/program perl nikto.pl -h http://example.com
03Ditt första scan
testphp.vulnweb.com drivs av Acunetix som ett offentligt övningsmål — du har deras tillstånd att skanna det:
nikto -h http://testphp.vulnweb.com - Nikto v2.5.0 + Target IP: 18.192.172.30 + Target Hostname: testphp.vulnweb.com + Target Port: 80 + Start Time: 2026-05-21 14:22:10 + Server: nginx/1.19.0 + /: The anti-clickjacking X-Frame-Options header is not present. + /: The X-Content-Type-Options header is not set. + Server may leak inodes via ETags, header found with file / + Cookie login created without the httponly flag. + /admin/: This might be interesting. + /search.php?test=query: XSS could be detected in search field. + /login.php: Admin login page/section found. + 7964 requests: 0 error(s) and 24 item(s) reported + End Time: 2026-05-21 14:27:43 (333 seconds)
Vad utdatan säger:
- Server: nginx/1.19.0 — vilken webbserver, vilken version (kan slås upp mot CVE-databaser)
- X-Frame-Options not present — sajten kan klistras in i en iframe = klickjacking-risk
- Cookie without httponly — JavaScript kan läsa cookien = XSS-attacker blir farligare
- /admin/ might be interesting — det finns en admin-sida som inte borde vara publik
- XSS could be detected — sökrutan ekar input utan filter
04Vanliga flaggor
-h — host att skanna (URL eller IP)
-p — port (default 80)
-ssl — tvinga HTTPS
-Tuning — vilka typer av tester (1=interesting files, 2=misconfiguration, 9=SQLi, x=alla utom)
-output — spara till fil (HTML, CSV, XML, txt)
-id — basic auth om sajten kräver det (användare:lösenord)
# HTTPS-scan med rapport som HTML nikto -h https://din-test.local -ssl -output rapport.html # bara intressanta filer + misconfig (snabbare) nikto -h http://10.0.0.5 -Tuning 12 # skanna en specifik port nikto -h 10.0.0.5 -p 8080
05Vad du gör med resultatet
Nikto är bullrigt och rapporterar mycket. Inte allt är farligt. Sortera så här:
- Hög prio: öppna admin-paneler, kända sårbara versioner, exponerade
.git/.env/backup.zip-filer - Mellan: saknade security headers (X-Frame-Options, CSP, HSTS), default-filer
- Låg: informationsläckage (server-version, ETag-info)
I bug bounty och pentest använder folk Nikto som en första sopkvast — sen följer man upp manuellt på det som ser intressant ut.
06Vad du lärt dig
- Nikto skannar en webbserver mot en databas på ~7000 kända problem
- Det är bullrigt — syns i webbloggar; använd bara där du har tillstånd
nikto -h http://målär hela startkommandot- Resultatet är inte slutet — det är en checklista att gå igenom manuellt
- Bra övningsmål:
testphp.vulnweb.com
Övning: skanna ett lagligt mål
1. Kör nikto -h http://testphp.vulnweb.com och vänta ut hela scanet (~5 minuter).
2. Spara output till HTML: lägg till -output testphp.html -Format htm.
3. Öppna HTML-rapporten i webbläsaren — så får du Niktos output på ett mycket lättare läsbart sätt.
4. Plocka ut 3 fynd som låter farliga, googla på dem (t.ex. "X-Frame-Options missing risk") så du förstår vad de betyder.
5. Bonus: kör Nikto mot din egen router — många routrar har webbadmin på http://192.168.1.1 och du kommer få ut intressant info om vad den exponerar mot dig.