Nikto: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
 
(9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
=Erklärung=
=Erklärung=
*Nikto Web Scanner ist ein Webserver-Scanner,
*Nikto ist ein Scanner für Webserver.
*Er testet  Webserver auf gefährliche Dateien/CGIs
*Er prüft auf gefährliche Dateien, CGI-Skripte und veraltete Serversoftware.
*Sowie veraltete Serversoftware und andere Probleme testet.  
*Auch Fehlkonfigurationen und weitere sicherheitsrelevante Probleme werden erkannt.
*Er führt auch generische und servertypspezifische Prüfungen durch.  
*Nikto führt generische und servertypspezifische Prüfungen durch.
*Außerdem erfasst und gibt alle empfangenen Cookies aus.
*Außerdem werden gesetzte Cookies protokolliert und ausgegeben.


=Installation=
=Installation=
Zeile 10: Zeile 10:


=Anwendung=
=Anwendung=
*nikto -h opfer.secure.local -p 80
==Ohne SSL==
<pre>
*nikto -h victim -p 80
- Nikto v2.1.6
==Mit SSL==
---------------------------------------------------------------------------
*nikto --ssl -h victim -p 443
+ Target IP:          10.0.10.104
+ Target Hostname:    opfer.secure.local
+ Target Port:        80
+ Start Time:        2021-08-04 15:35:03 (GMT2)
---------------------------------------------------------------------------
+ Server: Apache/2.4.7 (Ubuntu)
+ The anti-clickjacking X-Frame-Options header is not present.
+ The X-XSS-Protection header is not defined. This header can hint to the user agent to protect against some forms of XSS
+ The X-Content-Type-Options header is not set. This could allow the user agent to render the content of the site in a different fashion to the MIME type
+ No CGI Directories found (use '-C all' to force check all possible dirs)
+ Apache/2.4.7 appears to be outdated (current is at least Apache/2.4.37). Apache 2.2.34 is the EOL for the 2.x branch.
+ Server may leak inodes via ETags, header found with file /, inode: 1d4, size: 5c81e4a62d19e, mtime: gzip
+ Cookie PHPSESSID created without the httponly flag
+ Retrieved x-powered-by header: PHP/5.5.9-1ubuntu4.29
+ Allowed HTTP Methods: GET, HEAD, POST, OPTIONS
+ /test.php: Output from the phpinfo() function was found.
+ /config.php: PHP Config file may contain database IDs and passwords.
+ OSVDB-3233: /test.php: PHP is installed, and a test script which runs phpinfo() was found. This gives a lot of system information.
+ OSVDB-3233: /icons/README: Apache default file found.
+ /login.php: Admin login page/section found.
+ OSVDB-3092: /test.php: This might be interesting...
+ 7863 requests: 0 error(s) and 14 item(s) reported on remote host
+ End Time:          2021-08-04 15:35:50 (GMT2) (47 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested
</pre>


=Weiteres=
=Weiteres=
*-h = target host
*-h = Zielhost
*-p = port
*-p = Zielport
*-l = List all available plugins
*-l = Alle verfügbaren Plugins auflisten
*-F = Format (z.B. HTML, TXT, XML)
*-F = Ausgabeformat (z. B. HTML, TXT, XML)
*-o = Write output to this file (z.B. webscan.html)
*-o = Ausgabedatei (z. B. webscan.html)
*-s = Force ssl mode on port
*-s = SSL-Modus auf beliebigem Port erzwingen
*nikto -h opfer.secure.local -p 80 -o opfer.html -F HTML
*nikto -h opfer.secure.local -p 80 -o opfer.html -F HTML


=Bericht in HTML Format=
=Zusätzliche Optionen und Tipps=
[[Datei:nikto-html.png]]
*nikto -h victim.secure.local -Tuning 123b
**Mit dem Parameter '''-Tuning''' lässt sich steuern, welche Testtypen ausgeführt werden sollen.
**Beispiel: '''1''' = Dateien, '''2''' = Verzeichnisse, '''3''' = Standarddateien, '''b''' = Fehlerhafte Anfragen
 
*nikto -h opfer.secure.local -useragent "Mozilla/5.0"
**Der User-Agent kann angepasst werden, um weniger aufzufallen oder als legitimer Browser erkannt zu werden.
 
*nikto -h victim.secure.local -timeout 10
**Setzt ein Timeout (z. B. bei langsamen Verbindungen oder IDS/IPS-Verhalten)
 
*nikto -h victim.secure.local -useproxy http://127.0.0.1:8080
**Nutzung eines Proxys, z. B. für BurpSuite oder anonymisierte Tests
 
=Anwendungsbeispiel für automatisierte Umgebung=
*nikto -h victim.secure.local -output opfer.xml -Format xml
**Empfohlen für Weiterverarbeitung mit Tools wie [[Faraday]], [[Dradis]] oder Parsern
**XML eignet sich für Skriptauswertung und SIEM-Integration
 
=Grenzen von Nikto=
*Keine Exploits – nur passive Tests und Checks auf bekannte Probleme
*Kein Login oder Session-Handling (kein Test von geschützten Bereichen)
*Nicht für moderne Webanwendungen mit JavaScript-Logik geeignet
*Kann von WAFs/IDS erkannt und blockiert werden
 
=Alternativen und Ergänzungen=
*[[WhatWeb]] für Technologie-Erkennung
*[[DirBuster]] für gezieltes Verzeichnis-Fuzzing
*[[BurpSuite]] oder [[OWASP ZAP]] für interaktive Webanalyse und komplexe Angriffe
 
=Bericht in XML Format=
*[[Nikto xml für faraday]]
=Aufgaben=
*Scanne das opfer.secure.local
*Bewerte den Scan

Aktuelle Version vom 10. August 2025, 15:43 Uhr

Erklärung

  • Nikto ist ein Scanner für Webserver.
  • Er prüft auf gefährliche Dateien, CGI-Skripte und veraltete Serversoftware.
  • Auch Fehlkonfigurationen und weitere sicherheitsrelevante Probleme werden erkannt.
  • Nikto führt generische und servertypspezifische Prüfungen durch.
  • Außerdem werden gesetzte Cookies protokolliert und ausgegeben.

Installation

  • apt install nikto

Anwendung

Ohne SSL

  • nikto -h victim -p 80

Mit SSL

  • nikto --ssl -h victim -p 443

Weiteres

  • -h = Zielhost
  • -p = Zielport
  • -l = Alle verfügbaren Plugins auflisten
  • -F = Ausgabeformat (z. B. HTML, TXT, XML)
  • -o = Ausgabedatei (z. B. webscan.html)
  • -s = SSL-Modus auf beliebigem Port erzwingen
  • nikto -h opfer.secure.local -p 80 -o opfer.html -F HTML

Zusätzliche Optionen und Tipps

  • nikto -h victim.secure.local -Tuning 123b
    • Mit dem Parameter -Tuning lässt sich steuern, welche Testtypen ausgeführt werden sollen.
    • Beispiel: 1 = Dateien, 2 = Verzeichnisse, 3 = Standarddateien, b = Fehlerhafte Anfragen
  • nikto -h opfer.secure.local -useragent "Mozilla/5.0"
    • Der User-Agent kann angepasst werden, um weniger aufzufallen oder als legitimer Browser erkannt zu werden.
  • nikto -h victim.secure.local -timeout 10
    • Setzt ein Timeout (z. B. bei langsamen Verbindungen oder IDS/IPS-Verhalten)
  • nikto -h victim.secure.local -useproxy http://127.0.0.1:8080
    • Nutzung eines Proxys, z. B. für BurpSuite oder anonymisierte Tests

Anwendungsbeispiel für automatisierte Umgebung

  • nikto -h victim.secure.local -output opfer.xml -Format xml
    • Empfohlen für Weiterverarbeitung mit Tools wie Faraday, Dradis oder Parsern
    • XML eignet sich für Skriptauswertung und SIEM-Integration

Grenzen von Nikto

  • Keine Exploits – nur passive Tests und Checks auf bekannte Probleme
  • Kein Login oder Session-Handling (kein Test von geschützten Bereichen)
  • Nicht für moderne Webanwendungen mit JavaScript-Logik geeignet
  • Kann von WAFs/IDS erkannt und blockiert werden

Alternativen und Ergänzungen

Bericht in XML Format

Aufgaben

  • Scanne das opfer.secure.local
  • Bewerte den Scan