FTP-Enumeration und anonymer Zugriff

NmapBeginner
Jetzt üben

Einführung

Willkommen zu diesem praktischen Lab über Netzwerkerkennung und die Ausnutzung von File Transfer Protokollen. Im Bereich der Cybersicherheit ist der erste Schritt zur Bewertung der Sicherheit eines Systems das Verständnis, welche Dienste es dem Netzwerk preisgibt. Dieser Prozess wird als Enumeration bezeichnet.

In diesem Lab simulieren Sie die Anfangsphasen eines Penetrationstests. Sie beginnen mit der Bestätigung der Konnektivität zu einem Zielrechner. Anschließend verwenden Sie nmap, ein leistungsstarkes Netzwerk-Scanning-Tool, um offene Ports zu entdecken und laufende Dienste zu identifizieren. Schließlich werden Sie einen falsch konfigurierten FTP-Dienst ausnutzen, der anonymen Zugriff erlaubt, um eine versteckte Flagge abzurufen. Diese Übung vermittelt Ihnen grundlegende Fähigkeiten in der Netzwerkerkundung und Ausnutzung.

Nach Abschluss werden Sie verstehen, wie Sie:

  • Die Netzwerkkonnektivität mit ping überprüfen.
  • Nach offenen Ports und Diensten mit nmap scannen.
  • Eine Verbindung zu einem FTP-Dienst mit anonymem Zugriff herstellen.
  • Eine gängige Fehlkonfiguration ausnutzen, um auf Dateien zuzugreifen.

Lassen Sie uns beginnen.

Konnektivität zum Ziel mit Ping überprüfen

In diesem Schritt beginnen Sie die Erkundungsphase, indem Sie die Konnektivität zum Zielsystem überprüfen. Der Befehl ping ist ein grundlegendes Netzwerk-Dienstprogramm, das verwendet wird, um zu testen, ob ein Host in einem IP-Netzwerk erreichbar ist. Er sendet ICMP Echo Request-Pakete an das Ziel und wartet auf ICMP Echo Reply-Pakete.

Ihre Umgebung wurde mit einem Zielsystem vorkonfiguriert, das über den Hostnamen target erreichbar ist.

Führen Sie den folgenden Befehl im Terminal aus, um vier Pakete an das target zu senden und zu bestätigen, dass es online ist:

ping -c 4 target

Sie sollten eine Ausgabe ähnlich der folgenden sehen, die anzeigt, dass das Ziel antwortet und die Verbindung stabil ist. Die genaue IP-Adresse und die Zeitwerte können variieren.

PING target (172.17.0.2) 56(84) bytes of data.
64 bytes from target (172.17.0.2): icmp_seq=1 ttl=64 time=0.086 ms
64 bytes from target (172.17.0.2): icmp_seq=2 ttl=64 time=0.064 ms
64 bytes from target (172.17.0.2): icmp_seq=3 ttl=64 time=0.063 ms
64 bytes from target (172.17.0.2): icmp_seq=4 ttl=64 time=0.064 ms

--- target ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3069ms
rtt min/avg/max/mdev = 0.063/0.069/0.086/0.010 ms

Sobald Sie die erfolgreichen Antworten sehen, können Sie sicher sein, dass Ihre Maschine mit dem Ziel kommunizieren kann.

Offene Ports mit Nmap scannen

In diesem Schritt verwenden Sie nmap, um einen Port-Scan auf dem Ziel durchzuführen. Nmap (Network Mapper) ist ein unverzichtbares Werkzeug für die Netzwerkerkennung und Sicherheitsprüfung. Durch das Scannen nach offenen Ports können Sie identifizieren, welche Dienste auf dem Ziel laufen, was ein entscheidender Schritt zur Identifizierung potenzieller Schwachstellen ist.

Führen Sie den folgenden Befehl in Ihrem Terminal aus, um nach offenen Ports zu scannen und Dienstversionen zu erkennen:

nmap -sV target

Nmap wird nun die target-Maschine mit aktivierter Versionserkennung scannen. Nach einigen Momenten wird ein Bericht über seine Ergebnisse angezeigt. Die Ausgabe sollte in etwa so aussehen:

Starting Nmap 7.80 ( https://nmap.org ) at 2025-09-15 10:00 CST
Nmap scan report for target (172.17.0.2)
Host is up (0.00011s latency).
Not shown: 999 closed ports
PORT   STATE SERVICE VERSION
21/tcp open  ftp     vsftpd 3.0.5
Service Info: OS: Unix

Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 0.32 seconds

Beobachten Sie die Ausgabe sorgfältig. Nmap hat festgestellt, dass Port 21/tcp open ist und den ftp-Dienst mit der Version vsftpd 3.0.5 ausführt. Dies ist unser Einstiegspunkt für den nächsten Schritt.

Verbindung zum Ziel über FTP herstellen

In diesem Schritt versuchen Sie, eine Verbindung zum geöffneten FTP-Port herzustellen, den Sie entdeckt haben. FTP (File Transfer Protocol) ist ein standardmäßiges Kommunikationsprotokoll, das zum Übertragen von Computerdateien zwischen einem Server und einem Client verwendet wird. Seine Hauptschwachstelle besteht darin, dass es falsch konfiguriert sein kann, um anonymen Zugriff ohne ordnungsgemäße Authentifizierung zu ermöglichen. Wir werden eine häufige Fehlkonfiguration ausnutzen, die anonyme Anmeldungen erlaubt.

Führen Sie den Befehl ftp aus, um eine Verbindung zum target herzustellen:

ftp target

Sie werden mit dem FTP-Dienst verbunden und aufgefordert, einen Benutzernamen einzugeben.

Connected to target.
220 (vsFTPd 3.0.5)
Name (target:labex):

Das System fragt nach einer Anmeldung. Eine häufige Fehlkonfiguration bei FTP-Diensten erlaubt anonymen Zugriff. Geben Sie anonymous an der Anmeldeaufforderung ein und drücken Sie Enter. Da der Dienst so konfiguriert ist, dass er anonymen Zugriff ohne Passwort erlaubt, können Sie erneut Enter drücken, wenn Sie zur Eingabe eines Passworts aufgefordert werden.

Name (target:labex): anonymous
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>

Wenn erfolgreich, werden Sie angemeldet und erhalten eine FTP-Eingabeaufforderung (ftp>). Dies zeigt an, dass Sie Zugriff auf den FTP-Dienst erhalten haben.

ftp>

Sie sind nun mit dem FTP-Dienst verbunden und können mit dem Dateisystem des Remote-Systems interagieren.

Zielsystem erkunden und Flagge finden

In diesem Schritt, nachdem Sie erfolgreich Zugriff auf den FTP-Dienst erhalten haben, ist Ihre letzte Aufgabe, die verfügbaren Dateien zu erkunden und die Flagge herunterzuladen. Dies simuliert die Post-Exploitation-Phase, in der ein Angreifer nach sensiblen Informationen sucht.

Sie sind derzeit mit dem FTP-Dienst verbunden. Verwenden Sie den Befehl ls, um die Dateien und Verzeichnisse am aktuellen Remote-Speicherort aufzulisten.

ftp > ls

Sie sollten eine Liste von Dateien sehen. Suchen Sie nach einer Datei namens flag.txt.

ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r--    1 0        0              42 Sep 15 11:30 flag.txt
226 Directory send OK.
ftp>

Nachdem Sie die Datei gefunden haben, verwenden Sie den Befehl get, um sie auf Ihren lokalen Rechner herunterzuladen. Dies überträgt die Datei vom Remote-Server in Ihr aktuelles lokales Verzeichnis.

ftp > get flag.txt

Die Datei wird heruntergeladen und Sie sollten Statusmeldungen zur Übertragung sehen.

ftp> get flag.txt
local: flag.txt remote: flag.txt
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for flag.txt (42 bytes).
226 Transfer complete.
42 bytes received in 0.00 secs (17.6 kB/s)
ftp>

Beenden Sie nun die FTP-Sitzung und zeigen Sie den Inhalt der heruntergeladenen Datei an.

ftp > exit

Verwenden Sie den Befehl cat, um den Inhalt der heruntergeladenen Datei flag.txt anzuzeigen.

cat flag.txt

Das Terminal zeigt den Hash-Wert der Flagge an.

labex{d3adb33f_p0rt_sc4nn1ng_m4st3ry}

Herzlichen Glückwunsch! Sie haben die Flagge erfolgreich vom Zielsystem ermittelt, darauf zugegriffen und sie abgerufen. Kopieren Sie den Flag-Wert, um das Lab abzuschließen.

Zusammenfassung

In diesem Lab haben Sie einen grundlegenden Penetrationstest-Workflow von der Aufklärung bis zum Erhalt des Zugangs abgeschlossen. Sie haben gelernt, wie Sie:

  • ping verwenden, um zu bestätigen, dass ein Ziel online und erreichbar ist.
  • nmap -sV einsetzen, um einen Port-Scan durchzuführen und offene Ports sowie die darauf laufenden Dienste zu identifizieren.
  • Einen falsch konfigurierten FTP-Dienst mit anonymem Zugriff identifizieren und eine Verbindung herstellen.
  • Eine häufige Fehlkonfiguration ausnutzen, um auf Dateien auf einem Remote-System zuzugreifen.
  • FTP-Befehle verwenden, um Dateien vom Remote-Server aufzulisten und herunterzuladen.

Diese Übung unterstreicht die Bedeutung von Grundlagen der Netzwerksicherheit. FTP-Dienste sollten ordnungsgemäß mit Authentifizierung und Zugriffskontrollen konfiguriert werden. Anonymer Zugriff sollte deaktiviert werden, es sei denn, er ist ausdrücklich erforderlich, und alle Dateiübertragungsdienste sollten sichere Protokolle wie SFTP oder FTPS verwenden. Indem Sie verstehen, wie Angreifer vorgehen, sind Sie besser gerüstet, Ihre eigenen Systeme zu verteidigen.