Scannen Sie Ihren Webserver auf Sicherheitslücken und Fehlkonfigurationen – KOSTENLOS mit dem Nikto Scanner

97% der von Trustwave getesteten Anwendungen wiesen eine oder mehrere Schwachstellen auf.

trustwave-vulnerable-applications

Und 14% der untersuchten Eindringlinge waren auf eine Fehlkonfiguration zurückzuführen. Eine Fehlkonfiguration kann zu ernsthaften Risiken führen.

trustwave-factors

Es gibt eine Reihe von Online-Schwachstellen-Scannern, mit denen Sie Ihre Webanwendungen im Internet testen können. Wenn Sie jedoch Intranet-Anwendungen oder interne Anwendungen testen möchten, können Sie den Nikto Web Scanner verwenden.

Nikto ist ein Open-Source-Scanner und Sie können ihn mit jedem Webserver (Apache, Nginx, IHS, OHS, Litespeed usw.) verwenden. Das klingt nach einem perfekten internen Tool zum Scannen von Webservern. Es ist in der Lage, nach über 6700 Elementen zu scannen, um Fehlkonfigurationen, riskante Dateien usw. aufzuspüren, und einige der Funktionen umfassen;

  • Sie können den Bericht in HTML, XML oder CSV speichern
  • Es unterstützt SSL
  • Scannen Sie mehrere Ports des Servers
  • Finden Sie Subdomains
  • Apache-Benutzeraufzählung
  • Prüft auf veraltete Komponenten
  • Parkende Websites erkennen

Lassen Sie uns mit der Installation und der Verwendung dieses Tools beginnen.

Es gibt viele Möglichkeiten, Nikto zu verwenden.

  • Verwendung von Kali Linux
  • Docker-Container
  • Verwenden Sie die Binärdatei auf einer UNIX-basierten Distribution oder unter Windows.

Hinweis: Bei der Durchführung des Scans werden viele Anfragen an Ihren Webserver gestellt. Sie nehmen das Risiko in Kauf und führen den Scan nur auf Ihren Servern durch.

Verwendung von Nikto unter Kali Linux

Da es in Kali integriert ist, brauchen Sie nichts zu installieren.

  • Melden Sie sich bei Kali Linux an
  • Gehen Sie zu Anwendungen >> Schwachstellenanalyse und klicken Sie auf nikto

kali-linux-nitko

Es öffnet sich ein Terminal, in dem Sie den Scan gegen Ihren Webserver ausführen können. Es gibt mehrere Syntaxen, mit denen Sie den Scan ausführen können. Am schnellsten geht es jedoch wie folgt.

# nikto -h $webserverurl

Vergessen Sie nicht, $webserverurl durch die tatsächliche IP oder den FQDN Ihres Webservers zu ersetzen.

root@Chandan:~# nikto -h thewebchecker.com
- Nikto v2.1.6
---------------------------------------------------------------------------
  Ziel-IP: 128.199.222.244
  Ziel-Hostname: thewebchecker.com
  Ziel-Port: 80
  Startzeit: 2016-08-22 06:33:13 (GMT8)
---------------------------------------------------------------------------
  Server: Apache/2.4.18 (Ubuntu)
  Server leckt Inodes über ETags, Header gefunden mit Datei /, Felder: 0x2c39 0x53a938fc104ed
  Der Anti-Clickjacking-Header X-Frame-Options ist nicht vorhanden.
  Der X-XSS-Protection Header ist nicht definiert. Dieser Header kann dem Benutzer-Agenten einen Hinweis geben, wie er sich gegen einige Formen von XSS schützen kann
  Der X-Content-Type-Options Header ist nicht gesetzt. Dies könnte es dem Benutzer-Agenten ermöglichen, den Inhalt der Website in einer vom MIME-Typ abweichenden Weise darzustellen
  Keine CGI-Verzeichnisse gefunden (verwenden Sie '-C all', um alle möglichen Verzeichnisse zu überprüfen)
  Erlaubte HTTP-Methoden: GET, HEAD, POST, OPTIONEN
  Ungewöhnliche Kopfzeile 'x-ob_mode' gefunden, mit Inhalt: 1
  OSVDB-3092: /manual/: Webserver-Handbuch gefunden.
  OSVDB-3268: /manual/images/: Verzeichnisindizierung gefunden.
  OSVDB-3233: /icons/README: Apache-Standarddatei gefunden.
  /phpmyadmin/: phpMyAdmin Verzeichnis gefunden
  7596 Anfragen: 0 Fehler und 10 Elemente auf dem entfernten Host gemeldet
  Endzeit: 2016-08-22 06:54:44 (GMT8) (1291 Sekunden)
---------------------------------------------------------------------------
  1 Host(s) getestet

Wie Sie sehen können, bezieht sich der obige Scan auf die Standardkonfiguration von Apache 2.4, und es gibt viele Punkte, die beachtet werden müssen.

  • Clickjacking-Angriff
  • MIME-Typ Sicherheit

Sie können meinen Apache Security & Hardening Guide zu Rate ziehen, um diese Probleme zu beheben.

Verwendung von Nikto unter CentOS

  • Melden Sie sich bei CentOS oder einem anderen Linux-basierten Betriebssystem an
  • Laden Sie die neueste Version von Github mit wget herunter
wget https://github.com/sullo/nikto/archive/master.zip .
  • Extrahieren Sie mit dem Befehl unzip
unzip master.zip
  • Es wird ein neuer Ordner namens “nikto-master” erstellt
  • Gehen Sie innerhalb des Ordners nikto-master > program
cd nikto-master/programm
  • Führen Sie nikto.pl mit der Zieldomäne aus

Nach der Installation führen Sie nikto aus und es sollte alles in Ordnung sein. Dieses Mal führe ich einen Scan gegen den Nginx-Webserver durch, um zu sehen, wie er funktioniert.

./nikto.pl -h $IPADDRESSE
[root@lab program]# ./nikto.pl -h XX.XX.137.171
- Nikto v2.1.6
---------------------------------------------------------------------------
  Ziel-IP: XX.XX.137.171
  Ziel-Hostname: XX.XX.137.171
  Ziel-Port: 80
  Startzeit: 2020-06-07 07:39:40 (GMT0)
---------------------------------------------------------------------------
  Server: nginx/1.14.1
  Der Anti-Clickjacking-Header X-Frame-Options ist nicht vorhanden.
  Der X-XSS-Protection-Header ist nicht definiert. Dieser Header kann dem Benutzer-Agenten Hinweise zum Schutz vor einigen Formen von XSS geben
  Der X-Content-Type-Options Header ist nicht gesetzt. Dies könnte es dem Benutzer-Agenten ermöglichen, den Inhalt der Website in einer vom MIME-Typ abweichenden Weise darzustellen
  Keine CGI-Verzeichnisse gefunden (verwenden Sie '-C all', um alle möglichen Verzeichnisse zu überprüfen)
  /httpd.conf: Apache httpd.conf Konfigurationsdatei
  /httpd.conf.bak: Apache httpd.conf-Konfigurationsdatei
  8075 Anfragen: 0 Fehler und 5 Elemente auf dem entfernten Host gemeldet
  Endzeit: 2020-06-07 07:39:50 (GMT0) (10 Sekunden)
---------------------------------------------------------------------------
  1 Host(s) getestet
[root@lab program]#

Wie Sie also sehen können, ist auch die Webserver-Konfiguration von Nginx verwundbar und dieser Sicherheitsleitfaden wird Ihnen helfen, sie zu entschärfen.

Fehlersuche

Möglicherweise tritt unter CentOS der folgende Fehler auf. Wenn dies der Fall ist, können Sie ihn wie unten beschrieben beheben.

FEHLER -1

 WARNUNG: Modul JSON::PP fehlt. -Die Funktionen Savedir und Replay können nicht verwendet werden.

ODER

FEHLER: Erforderliches Modul nicht gefunden: Getopt::Long
ERROR: Erforderliches Modul nicht gefunden: Zeit::Lokal
ERROR: Erforderliches Modul nicht gefunden: Time::HiRes qw(sleep ualarm gettimeofday tv_interval)

Wenn Sie die obige Warnung erhalten, dann müssen Sie das Perl-Modul wie folgt installieren.

# yum install perl-CPAN*

oder mit DNF, wenn Sie CentOS 8 verwenden

# dnf install perl-CPAN*

FEHLER – 2

perl: Warnung: Locale setzen fehlgeschlagen.

Dazu müssen Sie das Gebietsschema auf dem Terminal exportieren, wie hier erklärt.

export LC_CTYPE=de_US.UTF-8
export LC_ALL=de_US.UTF-8

FEHLER – 3

Bignum.pm kann nicht in @INC gefunden werden (möglicherweise müssen Sie das Modul bignum installieren)

Sie müssen das Perl-Modul bignum installieren.

# yum install perl-bignum

oder verwenden Sie DNF, wenn CentOS 8

# dnf install perl-bignum

Fazit

Probieren Sie die Nikto-Software aus und wenn Sie mehr darüber erfahren möchten, sollten Sie sich diesen Kurs über Hacking und Penetrationstests ansehen.