CRITICAL🇬🇧 English

CVE-2024-38366

RCE z uprawnieniami root w serwerze trunk.cocoapods.org

CVSS 10.0v3.1pub. 2024-07-01upd. 2024-11-21

Serwer uwierzytelniania trunk.cocoapods.org zawierał podatność umożliwiającą zdalne wykonanie kodu (RCE) z uprawnieniami root poprzez manipulację procesem walidacji adresu e-mail. Luka miała maksymalny wynik CVSS 10.0 i mogła prowadzić do przejęcia kontroli nad całą infrastrukturą oraz modyfikacji dowolnych pakietów (Podspec) w repozytorium CocoaPods.

Pokaż oryginał (EN)

trunk.cocoapods.org is the authentication server for the CoacoaPods dependency manager. The part of trunk which verifies whether a user has a real email address on signup used a rfc-822 library which executes a shell command to validate the email domain MX records validity. It works via an DNS MX. This lookup could be manipulated to also execute a command on the trunk server, effectively giving root access to the server and the infrastructure. This issue was patched server-side with commit 001cc3a430e75a16307f5fd6cdff1363ad2f40f3 in September 2023. This RCE triggered a full user-session reset, as an attacker could have used this method to write to any Podspec in trunk.

🤖 Analiza AI
Jak działa

Podczas rejestracji użytkownika serwer trunk weryfikował poprawność domeny e-mail poprzez sprawdzenie rekordów MX w DNS, korzystając z biblioteki rfc-822. Biblioteka ta wykonuje polecenie powłoki (shell command) w celu przeprowadzenia zapytania DNS. Atakujący mógł spreparować adres e-mail w taki sposób, aby wstrzyknąć dodatkowe polecenie systemowe (command injection), które zostałoby wykonane na serwerze trunk z uprawnieniami root. Atak nie wymagał uwierzytelnienia, interakcji użytkownika ani specjalnych uprawnień — wystarczające było wysłanie żądania rejestracji z odpowiednio skonstruowaną wartością pola e-mail.

Skutki

Atakujący uzyskiwał pełny dostęp root do serwera i infrastruktury CocoaPods, co umożliwiało modyfikację dowolnych plików Podspec w repozytorium, a tym samym przeprowadzenie ataku na łańcuch dostaw oprogramowania (supply chain attack) wymierzonego w aplikacje iOS i macOS korzystające z CocoaPods.

Mitygacja

Poprawka została wdrożona po stronie serwera we wrześniu 2023 roku poprzez commit 001cc3a430e75a16307f5fd6cdff1363ad2f40f3. W związku z incydentem przeprowadzono pełny reset sesji użytkowników. Administratorzy i użytkownicy powinni zapoznać się z oficjalnym komunikatem producenta pod adresem blog.cocoapods.org oraz zweryfikować integralność używanych zależności zgodnie z zaleceniami z referencji.

Kogo dotyczy

Serwer trunk.cocoapods.org — serwer uwierzytelniania menedżera zależności CocoaPods. Podatność dotyczyła wersji serwerowej działającej przed wdrożeniem poprawki (commit 001cc3a430e75a16307f5fd6cdff1363ad2f40f3).

Uwagi

Podatność została odkryta i zgłoszona przez firmę EVA Security (evasec). Poprawka serwerowa wdrożona we wrześniu 2023 roku; CVE opublikowano 1 lipca 2024 roku. W następstwie incydentu przeprowadzono pełny reset sesji wszystkich użytkowników trunk.cocoapods.org. Luka stwarzała realne ryzyko ataku na łańcuch dostaw oprogramowania, ponieważ CocoaPods jest powszechnie stosowanym menedżerem zależności dla platform Apple.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
  • Cocoapods Trunk.cocoapods.org

    APP
    Cocoapods
    < 2023-09-22
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
CWE
Referencje

Powiązane podatności

CVE-2024-38368CRITICAL9.3PL ✓ten sam produkt

CocoaPods Trunk: nieautoryzowane przejęcie własności osieroconych pakietów

CVE-2024-38367HIGH8.2ten sam produkt

trunk.cocoapods.org is the authentication server for the CoacoaPods dependency manager. Prior to commit d4fa66...

CVE-2022-21223HIGH8.1ten sam vendor

The package cocoapods-downloader before 1.6.2 are vulnerable to Command Injection via hg argument injection. W...

CVE-2022-24440HIGH8.1ten sam vendor

The package cocoapods-downloader before 1.6.0, from 1.6.2 and before 1.6.3 are vulnerable to Command Injection...