Einführung
In diesem Lab erlernen Sie die Grundlagen der Aufklärung (Reconnaissance) unter Kali Linux, wobei der Schwerpunkt auf Netzwerk-Scanning und DNS-Abfragetechniken liegt. Diese praktische Erfahrung führt Sie durch die Identifizierung offener Ports und Dienste auf einem Zielsystem mit nmap, einem leistungsstarken Netzwerk-Scanner, sowie durch das Sammeln von DNS-Informationen mit dnsrecon. Das Lab ist für Anfänger konzipiert und bietet Schritt-für-Schritt-Anleitungen in einer sicheren LabEx-VM-Umgebung, die auf einem unabhängigen Cloud-Host läuft. Sie führen Port-Scans mit nmap durch, listen Dienste mithilfe von Skripten auf, fragen DNS-Einträge ab und speichern Ihre Ergebnisse zur Analyse. Sobald Sie das Terminal öffnen, werden Sie automatisch mit der Shell des Kali-Linux-Containers verbunden und können sofort mit der Praxis beginnen, ohne den Container manuell starten oder betreten zu müssen.
Installieren und Ausführen eines grundlegenden Nmap-Scans
In diesem ersten Schritt lernen Sie, wie Sie nmap, ein leistungsstarkes Werkzeug für das Netzwerk-Scanning, installieren und verwenden, um offene Ports auf einem Zielsystem zu identifizieren. Port-Scanning ist eine grundlegende Fähigkeit bei der Aufklärung, die Ihnen hilft zu entdecken, welche Dienste auf einer Maschine laufen, und potenziell Schwachstellen aufzudecken. Dieser Schritt ist für Anfänger konzipiert, und wir führen Sie durch jedes Detail.
Wenn Sie das Terminal in der LabEx-VM-Umgebung öffnen, werden Sie automatisch mit der Shell des Kali-Linux-Containers verbunden. Sie müssen den Container nicht manuell starten oder die Shell betreten; die Umgebung ist bereits für Sie eingerichtet.
Bevor wir beginnen, lassen Sie uns verstehen, was nmap tut. nmap (kurz für Network Mapper) ist ein Tool, das verwendet wird, um Hosts und Dienste in einem Netzwerk zu entdecken, indem Pakete gesendet und Antworten analysiert werden. Offene Ports deuten oft auf laufende Dienste wie Webserver oder SSH hin, die als Einstiegspunkte für weitere Analysen dienen können.
Lassen Sie uns nun nmap installieren und einen grundlegenden Scan durchführen. Befolgen Sie diese Anweisungen sorgfältig:
Aktualisieren Sie zunächst die Paketliste, um sicherzustellen, dass Sie die neueste Version von
nmapinstallieren können. Geben Sie den folgenden Befehl im Terminal ein und drücken Sie die Eingabetaste:apt updateDieser Befehl aktualisiert die Liste der verfügbaren Pakete. Es kann einige Sekunden dauern, bis der Vorgang abgeschlossen ist, und Sie sehen eine Ausgabe, die den Aktualisierungsprozess anzeigt.
Installieren Sie als Nächstes
nmap, indem Sie den folgenden Befehl eingeben und die Eingabetaste drücken:apt install -y nmapDas Flag
-ybestätigt die Installation automatisch, ohne dass Sie dazu aufgefordert werden. Warten Sie, bis die Installation abgeschlossen ist; dies sollte nur kurze Zeit in Anspruch nehmen. Sie sehen eine Ausgabe, die den Fortschritt der Installation anzeigt.Sobald
nmapinstalliert ist, führen wir einen grundlegenden Scan auflocalhost(Ihrem eigenen Container, IP-Adresse127.0.0.1) durch, was ein sicheres Ziel für Übungszwecke ist. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:nmap localhostDieser Befehl scannt die gängigsten Ports auf
localhost. Nach wenigen Sekunden sehen Sie eine Ausgabe ähnlich der folgenden (die tatsächliche Ausgabe kann variieren):Starting Nmap 7.91 ( https://nmap.org ) at ... Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http ... Nmap done: 1 IP address (1 host up) scanned in 0.05 secondsIn dieser Ausgabe bestätigt
Host is up, dass das Ziel erreichbar ist. Die Tabelle listet offene Ports, deren Status (openbedeutet zugänglich) und den zugehörigen Dienst (wiehttpauf Port80) auf. Diese Informationen helfen Ihnen zu verstehen, welche Dienste auf dem System ausgeführt werden.
Dieser Schritt hat Sie in die Installation und Verwendung von nmap für grundlegendes Port-Scanning eingeführt. Sie haben den ersten Schritt der Aufklärung getan, indem Sie offene Ports auf einem sicheren Ziel identifiziert haben. Im nächsten Schritt werden wir darauf aufbauen, indem wir die Scan-Ergebnisse zur weiteren Analyse speichern. Stellen Sie sicher, dass Sie mit der Ausführung des nmap-Befehls vertraut sind, bevor Sie fortfahren.
Speichern von Nmap-Scan-Ergebnissen in einer Datei
Nachdem Sie nun einen grundlegenden Scan mit nmap durchgeführt haben, lernen wir, wie Sie die Ausgabe Ihres Scans zur späteren Verwendung in einer Datei speichern können. Das Speichern von Ergebnissen ist eine wesentliche Fähigkeit bei der Aufklärung, da Sie so Ihre Erkenntnisse dokumentieren und später analysieren können, ohne Scans erneut ausführen zu müssen. Dieser Schritt baut direkt auf dem vorherigen auf; stellen Sie daher sicher, dass Sie den grundlegenden nmap-Scan abgeschlossen haben, bevor Sie fortfahren.
Die Ausgabeumleitung (Output Redirection) unter Linux ermöglicht es Ihnen, die Ergebnisse eines Befehls in einer Datei zu speichern, anstatt sie im Terminal anzuzeigen. Dies geschieht mit dem Symbol >, das die Ausgabe in eine angegebene Datei schreibt und diese überschreibt, falls sie bereits existiert. Wir speichern die Ergebnisse im Verzeichnis /root innerhalb des Kali-Linux-Containers, was Ihr Standard-Arbeitsbereich ist.
Befolgen Sie diese Anweisungen, um Ihre nmap-Scan-Ergebnisse zu speichern:
Führen Sie einen weiteren
nmap-Scan auflocalhostdurch und leiten Sie die Ausgabe in eine Datei namensnmap_scan.txtim Verzeichnis/rootum. Geben Sie den folgenden Befehl im Terminal ein und drücken Sie die Eingabetaste:nmap localhost > /root/nmap_scan.txtDas Symbol
>leitet die Ausgabe des Befehlsnmap localhostin die Datei/root/nmap_scan.txtum. Sie werden die Scan-Ergebnisse nicht im Terminal sehen, da sie in der Datei gespeichert werden. Warten Sie einige Sekunden, bis der Scan abgeschlossen ist.Um zu bestätigen, dass die Ausgabe erfolgreich gespeichert wurde, zeigen Sie den Inhalt der Datei an, indem Sie den folgenden Befehl eingeben und die Eingabetaste drücken:
cat /root/nmap_scan.txtSie sollten eine Ausgabe ähnlich der folgenden sehen (die tatsächliche Ausgabe kann variieren):
Starting Nmap 7.91 ( https://nmap.org ) at ... Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Not shown: 997 closed ports PORT STATE SERVICE 80/tcp open http ... Nmap done: 1 IP address (1 host up) scanned in 0.05 secondsDies bestätigt, dass die Scan-Ergebnisse erfolgreich in
/root/nmap_scan.txtgespeichert wurden. Das Speichern von Ausgaben in Dateien ist eine praktische Methode, um den Überblick über Ihre Erkenntnisse während der Aufklärungsaufgaben zu behalten.
In diesem Schritt haben Sie gelernt, wie Sie nmap-Ausgaben zur Dokumentation in eine Datei umleiten. Diese Fähigkeit wird nützlich sein, wenn wir im nächsten Schritt zu fortgeschritteneren Scanning-Techniken übergehen. Stellen Sie sicher, dass Sie die gespeicherten Ergebnisse in der Datei sehen können, bevor Sie fortfahren.
Auflisten von Diensten mit Nmap-Skripten
Aufbauend auf Ihren grundlegenden Scanning-Fähigkeiten führt dieser Schritt die Dienst-Enumeration (Service Enumeration) mithilfe von nmap-Skripten ein, um detaillierte Informationen über die auf offenen Ports laufenden Dienste zu sammeln. Die Dienst-Enumeration ist ein kritischer Teil der Aufklärung, da sie hilft, spezifische Versionen von Diensten zu identifizieren, die möglicherweise bekannte Schwachstellen aufweisen. Dieser Schritt setzt voraus, dass nmap installiert ist und Sie die vorherigen Scans abgeschlossen haben.
Die Dienst-Enumeration geht über das bloße Finden offener Ports hinaus; sie zielt darauf ab, die genaue Software und Version zu identifizieren, die auf diesen Ports läuft. nmap bietet eine Skript-Engine namens NSE (Nmap Scripting Engine), die vorgefertigte Skripte zur Erkennung von Dienstdetails und potenziellen Problemen enthält. Wir verwenden in diesem Schritt das Flag -sV für die Versionserkennung.
Lassen Sie uns die Dienste auf localhost mithilfe der folgenden Anweisungen auflisten:
Führen Sie einen
nmap-Scan mit Versionserkennung auflocalhostdurch. Geben Sie den folgenden Befehl im Terminal ein und drücken Sie die Eingabetaste:nmap -sV localhostDas Flag
-sVweistnmapan, offene Ports auf detaillierte Dienst- und Versionsinformationen zu untersuchen. Warten Sie, bis der Scan abgeschlossen ist; dies kann einige Sekunden länger dauern als der grundlegende Scan. Sie sollten eine Ausgabe ähnlich der folgenden sehen (die tatsächliche Ausgabe kann variieren):Starting Nmap 7.91 ( https://nmap.org ) at ... Nmap scan report for localhost (127.0.0.1) Host is up (0.00010s latency). Not shown: 997 closed ports PORT STATE SERVICE VERSION 80/tcp open http Apache httpd 2.4.41 ((Ubuntu)) ... Service detection performed. Please report any incorrect results at https://nmap.org/submit/ . Nmap done: 1 IP address (1 host up) scanned in 0.10 secondsIn dieser Ausgabe können Sie die Version des Dienstes sehen, der auf Port
80läuft, wie z. B.Apache httpd 2.4.41. Diese Information ist wertvoll, da spezifische Versionen bekannte Schwachstellen aufweisen können, die weiter erforscht werden können.Speichern Sie die Ergebnisse dieses Versionserkennungs-Scans in einer Datei namens
service_scan.txtim Verzeichnis/root. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:nmap -sV localhost > /root/service_scan.txtWie zuvor leitet das Symbol
>die Ausgabe in die angegebene Datei um. Sie werden die Ergebnisse nicht im Terminal sehen, da sie direkt in/root/service_scan.txtgespeichert werden.Bestätigen Sie, dass die Ausgabe gespeichert wurde, indem Sie den Dateiinhalt anzeigen. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:
cat /root/service_scan.txtSie sollten dieselbe detaillierte Ausgabe wie oben sehen, die nun zur späteren Verwendung in der Datei gespeichert ist.
Dieser Schritt hat Ihnen gezeigt, wie Sie nmap für die Dienst-Enumeration verwenden, was tiefere Einblicke in die auf einem Ziel laufenden Dienste bietet. Im nächsten Schritt werden wir die DNS-Aufklärung mit einem anderen Tool erkunden. Stellen Sie sicher, dass Sie verstehen, wie man Versionserkennungs-Scans ausführt und die Ausgabe speichert, bevor Sie fortfahren.
Installieren und Abfragen von DNS mit dnsrecon
In diesem Schritt verlagern wir den Fokus auf die DNS-Aufklärung mithilfe von dnsrecon, einem Tool zum Sammeln von DNS-Informationen über eine Domain. Die DNS-Enumeration hilft dabei, Subdomains, Mailserver und andere Infrastrukturdetails zu identifizieren, die für das Verständnis der Online-Präsenz eines Ziels entscheidend sind. Dieser Schritt ist für Anfänger konzipiert und setzt voraus, dass Sie in der Shell des Kali-Linux-Containers arbeiten.
DNS (Domain Name System) übersetzt Domainnamen wie example.com in IP-Adressen, die Computer für die Kommunikation verwenden. DNS-Einträge enthalten Informationen wie IP-Adressen für Hosts (A-Records), Mailserver (MX-Records) und mehr. dnsrecon ist ein Tool, das diese Einträge abfragt, um Details über die Konfiguration einer Domain aufzudecken. Für dieses Lab verwenden wir example.com als sicheres Ziel für Übungszwecke.
Befolgen Sie diese Anweisungen, um dnsrecon zu installieren und zu verwenden:
Aktualisieren Sie die Paketliste, um sicherzustellen, dass Sie die neueste Version von
dnsreconinstallieren können. Geben Sie den folgenden Befehl im Terminal ein und drücken Sie die Eingabetaste:apt updateDies aktualisiert die Paketliste. Warten Sie, bis der Vorgang abgeschlossen ist; Sie sehen eine Ausgabe, die den Fortschritt der Aktualisierung anzeigt.
Installieren Sie
dnsrecon, indem Sie den folgenden Befehl eingeben und die Eingabetaste drücken:apt install -y dnsreconDas Flag
-ybestätigt die Installation automatisch. Warten Sie, bis die Installation abgeschlossen ist; dies sollte nur wenige Sekunden dauern. Sie sehen eine Ausgabe, die den Fortschritt der Installation anzeigt.Sobald die Installation abgeschlossen ist, führen Sie eine grundlegende DNS-Enumeration auf
example.comdurch. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:dnsrecon -d example.comDie Option
-dgibt die abzufragende Domain an. Nach der Ausführung des Befehls sehen Sie eine Ausgabe ähnlich der folgenden (die tatsächliche Ausgabe kann variieren):[*] Performing General Enumeration of Domain: example.com [*] DNSSEC is not configured for example.com [*] SOA ns.icann.org 199.4.138.53 [*] NS ns.icann.org 199.4.138.53 [*] A example.com 93.184.216.34 [*] AAAA example.com 2606:2800:220:1:248:1893:25c8:1946 [*] MX example.com 0 . [*] TXT example.com "v=spf1 -all" [*] Enumeration Complete.Diese Ausgabe zeigt verschiedene DNS-Einträge für
example.comund bietet Einblicke in deren Konfiguration:- SOA (Start of Authority): Enthält administrative Informationen über die Zone.
- NS (Name Server): Listet die für die Domain autoritativen Server auf.
- A (Address): Ordnet den Domainnamen einer IPv4-Adresse zu.
- AAAA (IPv6 Address): Ordnet den Domainnamen einer IPv6-Adresse zu.
- MX (Mail Exchanger): Gibt die Mailserver an, die für den Empfang von E-Mails für die Domain verantwortlich sind.
- TXT (Text): Enthält beliebigen Text, der häufig für Verifizierungszwecke wie SPF (Sender Policy Framework) verwendet wird, was hier angezeigt wird (
v=spf1 -all).
Speichern Sie die DNS-Enumerationsergebnisse in einer Datei namens
dns_results.txtim Verzeichnis/root. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:dnsrecon -d example.com > /root/dns_results.txt 2>&1Das Symbol
>leitet die Ausgabe in die angegebene Datei um, und2>&1erfasst Standardfehler in derselben Datei.dnsreconkann Scan-Details in den Standardfehlerstrom ausgeben; das Speichern beider Ausgabeströme stellt sicher, dass/root/dns_results.txtdie vollständigen Ergebnisse enthält, anstatt eine leere Datei zu sein.Bestätigen Sie, dass die Ausgabe gespeichert wurde, indem Sie den Dateiinhalt anzeigen. Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste:
cat /root/dns_results.txtSie sollten dieselben DNS-Enumerationsergebnisse wie oben sehen, die nun in der Datei gespeichert sind.
Dieser Schritt hat Sie in die DNS-Aufklärung mit dnsrecon eingeführt und gezeigt, wie man kritische Domaininformationen sammelt. Im nächsten Schritt werden wir alle Ihre Erkenntnisse in einer einzigen Zusammenfassungsdatei kombinieren. Stellen Sie sicher, dass Sie die gespeicherten DNS-Ergebnisse sehen können, bevor Sie fortfahren.
Zusammenfassung
In diesem Lab haben Sie grundlegende Aufklärungstechniken unter Verwendung von Kali-Linux-Tools erlernt, um Informationen über ein Zielsystem zu sammeln. Sie begannen mit der Installation und Verwendung von nmap, um einen grundlegenden Port-Scan auf einem sicheren lokalen Ziel (localhost) durchzuführen und offene Ports sowie zugehörige Dienste wie den Apache-Webserver zu identifizieren. Anschließend haben Sie diese Ergebnisse zur Dokumentation in einer Datei gespeichert. Danach haben Sie die Dienst-Enumeration mit nmap-Skripten erkundet, um detaillierte Versionsinformationen aufzudecken, gefolgt von einer DNS-Aufklärung mit dnsrecon, um Domain-Einträge für example.com abzufragen. Diese grundlegenden Fähigkeiten im Bereich Netzwerk-Scanning und Informationsbeschaffung sind entscheidend für Penetrationstests und Netzwerksicherheitsaudits.


