CVE-2024-12087
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Wysokie ryzykoPercentyl 80 - wyżej niż 80% wszystkich znanych CVE
Streszczenie
W rsync wykryto podatność polegającą na przechodzeniu poza katalog docelowy (path traversal). Problem występuje przy użyciu opcji `--inc-recursive`, która jest domyślnie włączona dla wielu klientów i może być wymuszona przez serwer. Brak odpowiedniej weryfikacji dowiązań symbolicznych w połączeniu z kontrolą deduplikacji na poziomie list plików umożliwia serwerowi zapis plików poza zamierzonym katalogiem docelowym klienta.
Ocena ryzyka
Złośliwy serwer rsync może nadpisać lub umieścić złośliwe pliki w dowolnych lokalizacjach na kliencie, których nazwy odpowiadają istniejącym katalogom/ścieżkom. Może to prowadzić do przejęcia kontroli nad systemem klienta lub instalacji złośliwego oprogramowania.
Rekomendacja
Zaleca się natychmiastową aktualizację rsync do wersji, w której załatano tę podatność. Do czasu aktualizacji należy unikać używania opcji `--inc-recursive` oraz łączenia się z niezaufanymi serwerami rsync.
Inne podatności w rsync
Zobacz wszystkie- CVE-2014-2855Wysokie
Funkcja check_secret w rsync 3.1.0 i wcześniejszych wersjach pozwala zdalnym atakującym na wywołanie odmowy usługi poprzez użycie nazwy użytkownika, która nie istnieje w pliku z sekretami, co prowadzi do nieskończonej pętli i zużycia CPU.
- CVE-2026-53791Krytyczne
Demon rsync przed wersją 3.5.0 zawiera podatność na fałszowanie adresu IP, która pozwala nieuwierzytelnionym zdalnym atakującym ominąć kontrolę dostępu opartą na adresie IP poprzez wysłanie spreparowanego nagłówka PROXY protocol ze sfałszowanym adresem źródłowym. Atakujący, którzy mogą połączyć się bezpośrednio z demonem rsync, mogą wstrzyknąć sfałszowany źródłowy adres IP w nagłówku PROXY protocol, aby ominąć reguły hosts allow/deny, uzyskując nieautoryzowany dostęp, który w przeciwnym razie byłby zablokowany na podstawie ich rzeczywistego adresu źródłowego.
- CVE-2024-12084Krytyczne
W demonie rsync odkryto podatność przepełnienia bufora sterty spowodowaną nieprawidłowym obsługiwaniem długości sum kontrolnych (s2length) kontrolowanych przez atakującego. Gdy MAX_DIGEST_LEN przekracza stałą SUM_LENGTH (16 bajtów), atakujący może zapisać dane poza granicami bufora sum2.
- CVE-2024-12088Średnie
W rsync wykryto usterkę polegającą na nieprawidłowym sprawdzaniu przez klienta, czy cel dowiązania symbolicznego wysłanego z serwera nie zawiera innego dowiązania symbolicznego. Używając opcji `--safe-links`, może to prowadzić do podatności na przechodzenie poza katalog, umożliwiając zapis pliku poza zamierzonym katalogiem.
- CVE-2024-12085Wysokie
W rsync wykryto podatność umożliwiającą manipulację długością sumy kontrolnej (s2length) podczas porównywania sum plików. Atakujący może wykorzystać ten błąd do porównania sumy kontrolnej z niezainicjalizowaną pamięcią i wycieku jednego bajtu danych ze stosu.
- CVE-2017-17434Krytyczne
Demon w rsync w wersjach 3.1.2 oraz 3.1.3-development przed 2017-12-03 nie sprawdza nazw plików w strukturze danych daemon_filter_list oraz nie stosuje mechanizmu ochrony sanitize_paths do ścieżek w ciągach 'xname follows'. To pozwala zdalnym atakującym na obejście zamierzonych ograniczeń dostępu.
- CVE-2017-15994Krytyczne
Rsync w wersji 3.1.3-development przed 24 października 2017 roku niewłaściwie obsługuje archaiczne sumy kontrolne, co ułatwia zdalnym atakującym obejście zamierzonych ograniczeń dostępu.
- CVE-2026-70464Wysokie
rsync daemon w wersjach od 2.0.0 do przed 3.5.0 zawiera podatność na odmowę usługi, która pozwala nieuwierzytelnionym zdalnym atakującym wyczerpać sloty połączeń demona poprzez wstrzymanie procesu uzgadniania przed lub po wyborze modułu, bez wyzwalania limitu czasu I/O. Atakujący mogą otworzyć wiele równoczesnych połączeń i przesyłać dane w minimalnym tempie, aby uniknąć limitu czasu, lub całkowicie zatrzymać się przed wyborem modułu, gdzie limit czasu nie obowiązuje, konsumując wszystkie dostępne sloty połączeń i blokując dostęp legalnym klientom.
- CVE-2026-70463Wysokie
rsync w wersjach od 3.1.0 do przed 3.5.0 zawiera podatność na obejście autoryzacji w parsowaniu dyrektywy auth users. Parser auth users używa tylko przecinków do tokenizacji listy użytkowników, co niepoprawnie obsługuje wpisy w formie @Group Name, gdzie nazwa grupy zawiera spację. Spacja w nazwie grupy powoduje podział wpisu na granicy spacji, odrzucając regułę odmowy związaną z grupą. Uwierzytelniony użytkownik, którego nazwa użytkownika lub członkostwo w grupie byłoby odrzucone przez wpis @Group Name, może połączyć się z ograniczonym modułem, ponieważ reguła odmowy jest cicho odrzucana podczas parsowania.
- CVE-2026-70462Średnie
rsync w wersjach od 3.1.0 do przed 3.5.0 zawiera podatność na przepełnienie liczby całkowitej ze znakiem w implementacji limitu czasu I/O. Atakujący może wysłać wiadomości MSG_IO_TIMEOUT z wartościami niedodatnimi, co powoduje zawinięcie zmiennej limitu czasu i trwałe wyłączenie limitów czasu połączeń, umożliwiając utrzymywanie bezczynnych połączeń i wyczerpanie zasobów.
Oryginalny opis (angielski, źródło NVD)
A path traversal vulnerability exists in rsync. It stems from behavior enabled by the `--inc-recursive` option, a default-enabled option for many client options and can be enabled by the server even if not explicitly enabled by the client. When using the `--inc-recursive` option, a lack of proper symlink verification coupled with deduplication checks occurring on a per-file-list basis could allow a server to write files outside of the client's intended destination directory. A malicious server could write malicious files to arbitrary locations named after valid directories/paths on the client.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

