Podatność w Rclone (wersje 1.46.0–1.74.2) umożliwia nieuwierzytelnionemu atakującemu wykonanie dowolnych poleceń systemowych poprzez wysłanie pojedynczego żądania HTTP GET lub HEAD do interfejsu rcd z opcją --rc-serve. Podatność otrzymała ocenę CVSS 9.8 (CRITICAL), ponieważ nie wymaga żadnego uwierzytelnienia ani interakcji użytkownika.
▸ Pokaż oryginał (EN)
Rclone is a command-line program to sync files and directories to and from different cloud storage providers. From 1.46.0 until 1.74.3, rclone rcd --rc-serve accepts unauthenticated GET and HEAD requests to paths of the form: /[remote:path]/object. The remote value is parsed from the URL and passed to normal backend initialization. Inline remote configuration can set backend options that execute local commands during initialization. As a result, a single unauthenticated GET or HEAD request can execute a command as the rclone process user. This vulnerability is fixed in 1.74.3.
Gdy Rclone działa w trybie `rcd --rc-serve`, akceptuje nieuwierzytelnione żądania GET i HEAD do ścieżek w formacie `/[remote:path]/object`. Wartość `remote` jest pobierana bezpośrednio z adresu URL i przekazywana do procesu inicjalizacji backendu. Mechanizm inline remote configuration pozwala na osadzenie opcji konfiguracyjnych backendu bezpośrednio w nazwie zdalnego zasobu — niektóre z tych opcji powodują wykonanie lokalnych poleceń systemowych podczas inicjalizacji. W efekcie atakujący może wykonać dowolne polecenie w kontekście użytkownika, na którym uruchomiony jest proces Rclone, bez żadnego uwierzytelnienia (CWE-306, CWE-78).
Atakujący zdalnie i bez uwierzytelnienia może wykonać dowolne polecenie systemowe z uprawnieniami procesu Rclone, co prowadzi do pełnego przejęcia kontroli nad systemem, wycieku danych lub ich zniszczenia.
Należy zaktualizować Rclone do wersji 1.74.3 lub nowszej, w której podatność została naprawiona. Do czasu aktualizacji zaleca się unikanie uruchamiania Rclone z opcją `rcd --rc-serve` w środowiskach dostępnych z sieci lub zabezpieczenie interfejsu rcd mechanizmem uwierzytelnienia oraz ograniczenie dostępu na poziomie firewalla.
Rclone w wersjach od 1.46.0 do 1.74.2 (włącznie), uruchamiany w trybie `rcd --rc-serve`
Podatność dotyczy wyłącznie konfiguracji z aktywną opcją `--rc-serve`. Bez tej flagi interfejs rcd domyślnie nie akceptuje żądań bez uwierzytelnienia.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HRclone
APPRclone1.46 – 1.74.3 (bez)
Powiązane podatności
Rclone RC: pominięcie uwierzytelnienia przez endpoint options/set
Rclone: nieuwierzytelnione RCE przez endpoint RC operations/fsinfo
An issue was discovered in Rclone before 1.53.3. Due to the use of a weak random number generator, the passwor...
In Rclone 1.42, use of "rclone sync" to migrate data between two Google Cloud Storage buckets might allow atta...