Pavasara atlaide –€10 visiem moduļu kursiem Apskatīt →
Programmas Mācību ceļš Sertifikācija Dibinātājs Uzņēmumiem Simulatori Blogs
← Atpakaļ uz blogu
Blogs

Nikto pamati iesācējiem — tīmekļa serveru skenēšana ar vienu komandu

2026. gada 5. marts · 8 min lasīšana · Madars Balodis

Ja Nmap atbild uz jautājumu “kas tīklā ir pieejams?”, tad Nikto atbild uz nākamo: “kādas problēmas ir šajā tīmekļa serverī?” Tas ir viens no pirmajiem rīkiem, ko kiberdrošības speciālisti palaiž pret tīmekļa serveri, un labi, ka tas ir brīvi pieejams ikvienam, kurš vēlas saprast, kā tīmekļa drošības pārbaude izskatās praksē.

Šajā rakstā apgūsi Nikto no pirmās instalācijas līdz jēgpilnai izvades lasīšanai.

Kas ir Nikto?

Nikto ir atvērtā pirmkoda tīmekļa serveru drošības skeneris, ko 2001. gadā izstrādāja Kriss Sulo (Chris Sullo). Šobrīd projekts tiek uzturēts vietnē GitHub un aktīvi izmantots iespiešanās testēšanā, CTF sacensībās un tīmekļa drošības auditos.

Nikto automātiski pārbauda tīmekļa serveri pret datubāzi ar vairāk nekā 6 700 potenciāli bīstamiem failiem un konfigurācijām, tostarp:

  • Novecojušu serveru programmatūru — Apache, Nginx, IIS versijas ar zināmām ievainojamībām
  • Bīstamus failus un direktorijus — atstāti testēšanas faili, atklātas admin paneļa adreses, atklāti .git repozitoriji
  • Nepareizas HTTP galvenes — trūkstošas drošības galvenes, kas atvieglo uzbrukumus
  • Noklusējuma konfigurācijas — standarta paroles, noklusējuma pieteikšanās lapas, diagnostikas lapas
  • Sīkdatņu problēmas — sīkdatnes bez HttpOnly vai Secure karodziņiem

Nikto nav “stealth” rīks — tas necentīsies paslēpties. Tas ir ātrs, trokšņains un paredzēts situācijām, kad tev ir atļauja skenēt mērķi.


Pirms sāc — juridisks brīdinājums

Tas pats noteikums, kas attiecas uz Nmap, attiecas uz Nikto — un uz jebkuru drošības skenēšanas rīku.

Nikto skenēšana pret serveri bez īpašnieka atļaujas Latvijā ir pretlikumīga. Krimināllikuma 241. pants paredz atbildību par neautorizētu piekļuvi datorsistēmām un datortīkliem. Pat tad, ja tu tikai “paskaties”, nekas nemainās — skenēšana bez atļaujas ir pārkāpums.

Likumīgi skenēt drīkst tikai:

  • Sev piederošus serverus un vietnes
  • Uzņēmuma infrastruktūru ar rakstisku vadības atļauju
  • Speciāli drošības mācībām paredzētas platformas (TryHackMe, HackTheBox)
  • Lokāli uzstādītas mācību vides (DVWA, Metasploitable, WebGoat)

Visi piemēri šajā rakstā tiek vērsti pret lokālu mācību vidi vai tev pašam piederošiem resursiem. Ja tev tādas nav — šī raksta beigās ir norādīts, kā to ātri izveidot.


Uzstādīšana

Linux (Debian / Ubuntu)

sudo apt update && sudo apt install nikto

Linux (Fedora / RHEL / AlmaLinux)

sudo dnf install nikto

macOS

Nepieciešams Homebrew:

brew install nikto

Windows

Nikto ir rakstīts Perl valodā, tāpēc Windows gadījumā nepieciešams vispirms uzstādīt Strawberry Perl vai izmantot WSL (Windows Subsystem for Linux). Iesācējiem ieteicamākais variants ir WSL ar Ubuntu — uzstādīšana notiek tāpat kā uz Linux.

Alternatīva: izmanto gatavu virtuālo mašīnu ar Kali Linux, kurā Nikto jau ir iekļauts pēc noklusējuma.

Pārbaudi uzstādīšanu:

nikto -Version

Kā Nikto darbojas?

Nikto sūta HTTP un HTTPS pieprasījumus pret norādīto serveri un salīdzina atbildes ar savu iekšējo datubāzi. Tā darbību var iedomāties kā automātisku pārbaudītāju, kas:

  1. Lūdz serveri atvērt tūkstošiem dažādu URL
  2. Analizē servera atbildes — statusa kodus, saturu, HTTP galvenes
  3. Salīdzina ar zināmiem bīstamiem failiem un konfigurācijām
  4. Ziņo par katru aizdomīgu atradumu

Atšķirībā no Nmap, Nikto strādā HTTP/HTTPS protokola līmenī — tas “redz” to pašu, ko serverim redzētu jebkurš pārlūkprogrammas lietotājs vai uzbrucējs.


Pirmā skenēšana

Vienkāršākā Nikto komanda — norādi mērķa serveri ar -h (no angļu host):

nikto -h http://192.168.1.100

Vai arī ar domēna vārdu:

nikto -h http://localhost

Tipiska izvade izskatās šādi:

- Nikto v2.1.6
---------------------------------------------------------------------------
+ Target IP:          192.168.1.100
+ Target Hostname:    192.168.1.100
+ Target Port:        80
+ Start Time:         2026-03-05 10:14:22 (GMT+2)
---------------------------------------------------------------------------
+ Server: Apache/2.4.29 (Ubuntu)
+ Server may leak inodes via ETags, header found with file /, inode: 2aa6, size: 1a4, mtime: Mon Mar  2 10:00:00 2026
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined.
+ The X-Content-Type-Options header is not set.
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ OSVDB-3233: /icons/README: Apache default file found.
+ OSVDB-3268: /test/: Directory indexing found.
+ /phpmyadmin/: phpMyAdmin directory found
+ 8135 requests: 0 error(s) and 7 item(s) reported
+ End Time: 2026-03-05 10:16:44 (GMT+2) (142 seconds)

Ko redzam?

  • Servera versija: Apache 2.4.29 — vecāka versija ar zināmām ievainojamībām
  • Trūkst trīs svarīgas drošības HTTP galvenes
  • Atrasts phpMyAdmin direktorijs — datubāzes pārvaldības panelis, kas nedrīkstētu būt publiski pieejams
  • Pieejams testēšanas katalogs ar failu sarakstu

Katrs šāds atradums praksē nozīmē darbu drošības speciālistam — jāsaprot risks un jānovērš problēma.


Galvenie parametri

Mērķa norādīšana (-h)

# IP adrese
nikto -h 192.168.1.100

# Domēna vārds
nikto -h example.local

# Pilna URL ar ceļu
nikto -h http://192.168.1.100/webapp/

Porta norādīšana (-p)

Pēc noklusējuma Nikto skenē 80. portu. Ja serveris klausās citā portā:

# Nestandarta HTTP ports
nikto -h 192.168.1.100 -p 8080

# Vairāki porti uzreiz
nikto -h 192.168.1.100 -p 80,8080,8443

HTTPS skenēšana (-ssl)

Ja mērķis izmanto HTTPS:

nikto -h 192.168.1.100 -ssl

Vai norādi https:// tieši URL:

nikto -h https://192.168.1.100

Skenēšanas apjoma vadība (-Tuning)

Nikto ļauj izvēlēties, ko tieši pārbaudīt. Šis ir noderīgi, ja vajag ātru pārbaudi vai konkrētu kategoriju:

ParametrsKo pārbauda
-Tuning 1Interesanti faili un atrasti direktoriji
-Tuning 2Noklusējuma faili
-Tuning 3Informācijas atklāšana
-Tuning 4Ievadīšanas ievainojamības (XSS, SQLi sākotnējā pārbaude)
-Tuning 6Nedrošas HTTP metodes
-Tuning 9SQL injekcija
-Tuning xViss iepriekšminētais (pilna skenēšana)

Piemērs — pārbaudīt tikai HTTP galvenes un informācijas atklāšanu:

nikto -h 192.168.1.100 -Tuning 3

Autentifikācija (-id)

Ja serverim nepieciešama pamata HTTP autentifikācija:

nikto -h 192.168.1.100 -id lietotajs:parole

Pielāgots User-Agent (-useragent)

Nikto pēc noklusējuma identificē sevi kā skeneri. Dažās mācību vidēs noderīgi nomainīt:

nikto -h 192.168.1.100 -useragent "Mozilla/5.0 (Windows NT 10.0; Win64; x64)"

Izvades saglabāšana

Nikto atbalsta vairākus izvades formātus ziņojumu sagatavošanai:

# Teksta formāts (cilvēkam lasāms)
nikto -h 192.168.1.100 -o rezultats.txt -Format txt

# HTML ziņojums (ērti skatīt pārlūkprogrammā)
nikto -h 192.168.1.100 -o rezultats.html -Format htm

# XML formāts (integrācijai ar citiem rīkiem)
nikto -h 192.168.1.100 -o rezultats.xml -Format xml

# CSV formāts (analīzei izklājlapā)
nikto -h 192.168.1.100 -o rezultats.csv -Format csv

Laba prakse nosaka, ka drošības audita laikā vienmēr jāsaglabā rezultāti — tie veido dokumentāciju atrastajām problēmām.


Kā lasīt Nikto izvadi

Nikto katru atradumu atzīmē ar prefiksu +. Dažiem atradumiem priekšā ir OSVDB numurs — tas ir references numurs no Open Source Vulnerability Database, kas palīdz atrast papildu informāciju par konkrēto problēmu.

Svarīgāko atradumu veidi:

Trūkstošas drošības galvenes — bieži pirmais saraksts jebkurā skenēšanā:

+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-Content-Type-Options header is not set.
+ The X-XSS-Protection header is not defined.

Šīs galvenes aizsargā pārlūkprogrammas lietotājus pret dažādiem uzbrukumu veidiem. To trūkums ne vienmēr nozīmē tiešu ievainojamību, bet gan vāju drošības konfigurāciju.

Noklusējuma vai atstāti faili — bīstamāks atradums:

+ /admin/: This might be interesting.
+ /backup/: Directory indexing found.
+ /.git/: Git repository found.

Atklāts .git direktorijs nozīmē, ka uzbrucējs var lejupielādēt visu pirmkodu. Atklāts backup/ direktorijs var saturēt vecas datubāzes kopijas ar lietotāju datiem.

Novecojuša servera versija:

+ Server: Apache/2.2.14 (Ubuntu)

Apache 2.2.x satur desmitiem zināmu ievainojamību. Šāds atradums ziņojumā nozīmē steidzamu atjaunināšanu.


Mācību vides izveide

Nikto trenēšanai nevajag skenēt reālus serverus. Šeit ir trīs labākās iespējas:

DVWA (Damn Vulnerable Web Application)

Speciāli ievainojama tīmekļa aplikācija mācībām. Var uzstādīt ar Docker:

docker run --rm -it -p 80:80 vulnerables/web-dvwa

Pēc uzstādīšanas:

nikto -h http://localhost

Metasploitable 2 vai 3

Speciāli ievainojama virtuālā mašīna, kas satur desmitiem reālu drošības problēmu. Lejupielādē kā VirtualBox vai VMware attēlu un skenē lokālajā tīklā.

TryHackMe

Pārlūkprogrammā bāzēta mācību platforma ar gatavām mērķa mašīnām. Izveido kontu, pievienojies OpenVPN tīklam un skenē norādīto IP — pilnīgi legāli un droši.


Nikto un Nmap kopā

Praksē Nikto un Nmap papildina viens otru. Tipiska secība:

1. solis — Nmap atklāj tīkla ainavu:

nmap -sV -p 80,443,8080 192.168.1.0/24

Noskaidro, kuri serveri tīklā darbojas un uz kuriem portiem.

2. solis — Nikto padziļināti pārbauda tīmekļa serverus:

nikto -h 192.168.1.105 -p 80,8080 -ssl

Uz katru atrasto tīmekļa serveri palaiž Nikto.

Šī kombinācija — tīkla skeneris + tīmekļa servera skeneris — ir pamats gandrīz katram iespiešanās testam.


Bieži lietotu komandu apkopojums

# Pamata skenēšana
nikto -h http://192.168.1.100

# HTTPS serveris
nikto -h https://192.168.1.100

# Nestandarta ports
nikto -h 192.168.1.100 -p 8080

# Pilna skenēšana ar visām kategorijām
nikto -h 192.168.1.100 -Tuning x

# Skenēšana ar rezultātu saglabāšanu HTML formātā
nikto -h 192.168.1.100 -o atskaite.html -Format htm

# Skenēšana ar autentifikāciju
nikto -h 192.168.1.100 -id admin:admin

# Vairāki porti vienlaikus
nikto -h 192.168.1.100 -p 80,443,8080,8443

# Lēnāka skenēšana (mazāk trokšņaina)
nikto -h 192.168.1.100 -Pause 1

Nikto ir rīks, kurš iesācējam bieži atver acis uz kādu svarīgu atziņu: lielākā daļa tīmekļa serveru reālajā pasaulē ir nepareizi konfigurēti. Atstāti faili, trūkstošas drošības galvenes, novecojušas programmatūras versijas — tas nav izņēmums, tas ir norma.

Mācoties lasīt un saprast Nikto izvadi, tu apgūsti to, ko drošības speciālists redz pirmajās minūtēs, aplūkojot jebkuru tīmekļa serveri.

Nākamais solis: apgūt Burp Suite — rīku, kas ļauj ne tikai atklāt problēmas, bet arī interaktīvi testēt tīmekļa aplikācijas HTTP pieprasījumu līmenī. Nikto ir automātisks skeneris, Burp Suite — manuālās analīzes instruments.

Vēlies apgūt Nikto, Burp Suite un tīmekļa drošības testēšanu strukturētā kursā ar praktisku laboratoriju vidi? Apskati mūsu Tīmekļa Drošības moduli — kompakts, praktiski orientēts kurss latviešu valodā ar reāliem uzbrukumu scenārijiem.