CVE-2026-79775
ŚrednieCVSS 6.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 23 - wyżej niż 23% wszystkich znanych CVE
Streszczenie
rclone w wersjach od v1.72.0 do v1.74.4 (poprawione w v1.75.0) zawiera wiele podatności na odmowę usługi w parserze SquashFS backendu archiwum, który opiera się na zależności github.com/diskfs/go-diskfs. Parser nie sprawdza poprawności wartości superbloku i metadanych kontrolowanych przez atakującego przed ich użyciem. Atakujący, który może umieścić lub zmodyfikować obraz SquashFS w magazynie wystawionym przez zdalny :archive:, może stworzyć złośliwy obraz wywołujący panikę z powodu dzielenia przez zero (zerowy rozmiar bloku), panikę z powodu odczytu poza zakresem (przesunięcie metadanych inode poza zakres) lub pętlę CPU bez postępu (obcięty strumień metadanych). Warianty 1 i 2 kończą proces rclone i przez 'rclone serve sftp' mogą zawiesić cały serwer SFTP; wariant 3 powoduje ciągłe zużycie CPU. Parsowanie jest leniwe, więc ofiara lub zdalny klient musi odnieść się do złośliwego obiektu archiwum lub zejść do niego, aby go wyzwolić.
Ocena ryzyka
Ryzyko obejmuje przerwanie działania usług (awaria procesu rclone lub całego serwera SFTP) oraz nadmierne zużycie zasobów CPU, co może prowadzić do niedostępności usług dla użytkowników.
Rekomendacja
Zaleca się aktualizację rclone do wersji 1.75.0 lub nowszej oraz ograniczenie dostępu do zdalnych archiwów tylko dla zaufanych użytkowników.
Inne podatności w rclone
Zobacz wszystkie- CVE-2026-88044Krytyczne
rclone to program wiersza poleceń do synchronizacji plików i katalogów z różnymi dostawcami chmury. Od wersji 1.70.0 do 1.75.1 interfejs serve/start RC akceptuje ustawienia proxyOpt.AuthProxy dla poszczególnych serwerów, ale konstruktory FTP i S3 w cmd/serve/ftp/ftp.go oraz cmd/serve/s3/server.go nieprawidłowo sprawdzają globalną wartość proxy.Opt.AuthProxy. Gdy wartość globalna jest pusta, lokalny dla żądania proxy uwierzytelniające jest ignorowane: FTP przechodzi do stałego systemu plików z użytkownikiem anonymous i dowolnym hasłem, a S3 z AuthKey udostępnia stały system plików RC zamiast backendu wybranego przez proxy. Dedykowane serwery wiersza poleceń konfigurujące opcję globalną nie są dotknięte. Problem naprawiono w wersji 1.75.1.
- CVE-2026-88018Krytyczne
rclone to program wiersza poleceń do synchronizacji plików i katalogów z różnymi dostawcami chmury. Przed wersją 1.75.1 rclone serve s3 skonfigurowany z --auth-proxy, ale bez --auth-key, pozwala authPairMiddleware zarejestrować dowolny wybrany przez klienta accessKeyID z pustym ws.s3Secret. gofakes3 następnie weryfikuje sygnaturę SigV4 żądania względem tego samego pustego sekretu, podczas gdy Server.auth przekazuje identyfikator klucza dostępu jako zarówno użytkownika, jak i wartość uwierzytelniającą do proxy bez niezależnego sekretu dla tożsamości. Nieuwierzytelniony atakujący sieciowy może zatem wybrać dowolny klucz dostępu, podpisać pustym sekretem i dotrzeć do dowolnego backendu, który skrypt auth-proxy rozwiąże dla tej tożsamości. Problem naprawiono w wersji 1.75.1.
- CVE-2026-49980Krytyczne
Rclone w wersjach od 1.46.0 do 1.74.2 zawiera podatność w trybie serwera (rcd --rc-serve), która pozwala nieuwierzytelnionym żądaniom GET i HEAD na wykonywanie dowolnych poleceń systemowych. Atakujący może wykorzystać specjalnie spreparowane URL-e zawierające konfigurację zdalnego magazynu, która podczas inicjalizacji wykonuje lokalne polecenia.
- CVE-2026-41179Krytyczne
W Rclone od wersji 1.48.0 do 1.73.4 punkt końcowy RC `operations/fsinfo` jest dostępny bez wymaganego uwierzytelnienia i akceptuje kontrolowane przez atakującego dane wejściowe `fs`. Nieuwierzytelniony atakujący może wykorzystać tę podatność do wykonania dowolnego polecenia lokalnego na serwerze poprzez backend WebDAV, który uruchamia `bearer_token_command` podczas inicjalizacji.
- CVE-2026-41176Krytyczne
W Rclone, punkcie końcowym RC `options/set`, brakuje wymaganego uwierzytelnienia (`AuthRequired: true`), co pozwala na modyfikację globalnej konfiguracji środowiska wykonawczego. Nieuwierzytelniony atakujący może ustawić `rc.NoAuth=true`, wyłączając w ten sposób bramę autoryzacji dla wielu metod RC, które normalnie wymagają uwierzytelnienia, co prowadzi do nieautoryzowanego dostępu do wrażliwych funkcji administracyjnych.
- CVE-2026-93987Niskie
rclone w wersjach od 1.56.0 do 1.75.0 zawiera podatność path traversal w wtyczce wolumenów `rclone serve docker`. Funkcja newVolume() w cmd/serve/docker/volume.go oblicza punkt montowania jako filepath.Join(drv.root, name) na podstawie pola `name` z żądania Docker VolumeDriver.Create, nie sprawdzając, czy wynik pozostaje w drv.root (domyślnie /var/lib/docker-volumes/rclone), a następnie checkMountpoint() tworzy ten katalog przez file.MkdirAll przed montowaniem. Nazwa wolumenu zawierająca odpowiednio dużo komponentów `..` (np. "../../../../../../etc") pozwala wyjść poza katalog bazowy, umożliwiając osobie mogącej wysłać żądanie VolumeDriver.Create do gniazda wtyczki utworzenie katalogu i zamontowanie zdalnego systemu plików w dowolnej ścieżce hosta. Volume.restoreState() miało tę samą lukę przy wczytywaniu zapisanego stanu wolumenów. Naprawiono w 1.75.1.
- CVE-2026-93986Niskie
rclone w wersjach przed 1.75.1 nie ogranicza nazw z odpowiedzi serwera i zewnętrznych listingów do listowanego katalogu, co pozwala na sekwencje path traversal w nazwach obiektów. Atakujący może tworzyć specjalne nazwy zawierające ukośniki i odwołania do katalogu nadrzędnego, aby potencjalnie zapisywać poza katalogiem docelowym, choć obecne zabezpieczenia w backendzie lokalnym blokują faktyczne wyjście poza pliki.
- CVE-2026-88046Średnie
W rclone przed wersją 1.75.1 rdzeń nie odrzuca segmentów katalogu nadrzędnego w wartościach Object.Remote() przed przekazaniem ich do backendów docelowych przez fs/list, fs/walk, fs/sync i fs/operations. Magazyn obiektów z płaską przestrzenią kluczy może zawierać surowy segment "..", a dotknięte backendy używają path.Join(root, remote) przed neutralizacją tego segmentu, co pozwala kopiowaniu lub wysyłaniu opuścić skonfigurowany katalog główny. Luka została naprawiona w wersji 1.75.1.
- CVE-2026-88045Wysokie
rclone w wersjach od 1.75.0 do 1.75.1 w ścieżce strumieniowego multipart serwera S3 przekazuje kontrolowany przez atakującego contentLength do multipart.NewRW().Reserve przed odczytaniem treści żądania. Klient sieciowy może wielokrotnie rezerwować pamięć bez wysyłania zadeklarowanego ciała, wyczerpując pamięć procesu lub hosta albo trwale blokując obsługę żądań. Problem naprawiono w wersji 1.75.1.
- CVE-2026-88017Wysokie
W rclone od wersji 1.64.0 do 1.75.1 sterownik FTP auth-proxy przechowuje jedno zaciemnione hasło na nazwę użytkownika w globalnej mapie userPass, zamiast wiązać poświadczenia z sesją. Jeśli dwie zaakceptowane poświadczenia mają tę samą nazwę użytkownika, ale różne backendy proxy, późniejsze logowanie nadpisuje hasło i pierwsza sesja jest ponownie autoryzowana z uprawnieniami drugiego backendu, co pozwala na nieautoryzowany dostęp do operacji na plikach.
Oryginalny opis (angielski, źródło NVD)
rclone versions >= v1.72.0 and <= v1.74.4 (fixed in v1.75.0) contain multiple denial-of-service vulnerabilities in the archive backend's SquashFS parser, which relies on the github.com/diskfs/go-diskfs dependency. The parser fails to validate attacker-controlled superblock and metadata values before use. An attacker who can place or modify a SquashFS image in storage exposed through an rclone :archive: remote can craft a malicious image that triggers an integer division-by-zero panic (zero block size), an out-of-bounds slice panic (out-of-range inode metadata offset), or a non-progress CPU loop (truncated metadata stream). Variants 1 and 2 terminate the rclone process and, via 'rclone serve sftp', can crash the entire SFTP server; variant 3 causes sustained CPU consumption. Parsing is lazy, so a victim or remote client must address or descend into the malicious archive object to trigger it.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

