Opublikowano wersję narzędzia do synchronizacji plików Rsync 3.4.0, w której usunięto sześć podatności. Kombinacja podatności CVE-2024-12084 i CVE-2024-12085 pozwala na zdalne wykonanie kodu na serwerze przez klienta. Do przeprowadzenia ataku wystarczy anonimowe połączenie z serwerem Rsync z dostępem tylko do odczytu. Na przykład atak może być przeprowadzony na lustrzane odbicia różnych dystrybucji oraz projektów, które umożliwiają pobieranie zestawów za pomocą Rsync. Problem dotyczy również różnych aplikacji do synchronizacji plików i tworzenia kopii zapasowych, które używają Rsync jako backendu, takich jak Rclone, DeltaCopy i ChronoSync.
Ponadto, wykorzystując podatność na serwerze atakujący może przeprowadzić atak na klientów łączących się z serwerem i uzyskać możliwość odczytu lub zapisu dowolnych plików w ich systemie, w zależności od uprawnień procesu rsync. Na przykład, poprzez stworzenie złośliwych rsync-serwerów można zorganizować pobranie kluczy SSH lub wykonać kod, nadpisując takie pliki jak ~/ .bashrc i ~/ .popt.
Aby ułatwić sprawdzenie aktualizacji serwerów do nowej wersji Rsync, numer protokołu w wydaniu Rsync 3.4.0 został podniesiony do 32. Informacje o aktualizacjach w dystrybucjach można znaleźć na następujących stronach: Debian, Ubuntu, RHEL, SUSE/openSUSE, Fedora, Arch, FreeBSD.
Zidentyfikowane luki:
- CVE-2024-12084 — zapisywanie poza przydzielonym buforem poprzez przesłanie nieprawidłowej sumy kontrolnej, której rozmiar przekracza 16 bajtów.
- CVE-2024-12085 — wyciek zawartości nieinicjalizowanych danych ze stosu (po jednym bajcie na raz) podczas wykonywania operacji porównawczych sum kontrolnych nieprawidłowego rozmiaru.
- CVE-2024-12086 — uzyskanie dostępu serwera do zawartości dowolnych plików z systemu klienta poprzez generowanie przez serwer nieprawidłowych tokenów komunikacyjnych oraz sum kontrolnych podczas kopiowania plików z klienta na serwer (określenie zawartości bajt po bajcie przez odgadywanie sumy kontrolnej).
- CVE-2024-12087 — przekroczenie podstawowego katalogu przy użyciu opcji „—inc-recursive” (domyślnie włączonej dla wielu flag). Luka w zabezpieczeniach wynika z braku odpowiedniej weryfikacji dowiązań symbolicznych i umożliwia zapis plików poza wskazanym przez klienta katalogiem docelowym. Serwer kontrolowany przez atakującego może wykorzystać tę lukę do ataku na system podłączonego klienta.
- CVE-2024-12088 — niepoprawna weryfikacja dowiązań symbolicznych wskazujących na inne dowiązania symboliczne przy użyciu opcji „—safe-links”. Problem ten daje możliwość wyjścia poza podstawowy katalog i zapisania danych w dowolnym pliku w systemie, o ile pozwalają na to uprawnienia.
- CVE-2024-12747 — stan wyścigu podczas pracy z dowiązaniami symbolicznymi, pozwalający użytkownikowi na podniesienie swoich uprawnień i uzyskanie dostępu do uprzywilejowanych plików na serwerze.
Źródło: opennet.ru
