akademin körs anonymt — inget sparas
skapa kontonummer →
Akademin / Lektion 12 — Nikto
lektion 12 · web

Vad är Nikto?

När Nmap har hittat en öppen webbserver — vad gör du med den informationen? Nikto skannar själva webbservern efter kända säkerhetsproblem: gamla versioner, glömda admin-sidor, default-lösenord och dåliga inställningar.

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.

Bara för utbildning. Nikto bullrar — det skickar tusentals förfrågningar och syns tydligt i en webbservers loggar. Använd det aldrig mot system du inte äger eller har tillstånd att testa. Lagliga övningsmål: 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:

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:

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:

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

Ö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.

Du kan nu granska en webbserver.

Nästa lektion: Recon-ng — innan du ens vidrör målets nätverk, vad kan du samla in från publika källor? Mejladresser, anställda, subdomäner, läckta lösenord, allt.

Nästa: Recon-ng