Klient HTTP w Gradle przed wersją 5.6 nieprawidłowo przesyła dane uwierzytelniające do wszystkich hostów, do których prowadzą przekierowania 30x, zamiast wyłącznie do oryginalnie skonfigurowanego hosta. Podatność może prowadzić do ujawnienia poświadczeń (np. tokenów, haseł) osobom trzecim kontrolującym infrastrukturę przekierowań.
▸ Pokaż oryginał (EN)
The HTTP client in Gradle before 5.6 sends authentication credentials originally destined for the configured host. If that host returns a 30x redirect, Gradle also sends those credentials to all subsequent hosts that the request redirects to. This is similar to CVE-2018-1000007.
Gdy klient HTTP w Gradle wysyła żądanie do skonfigurowanego hosta z dołączonymi danymi uwierzytelniającymi, a host ten odpowiada przekierowaniem HTTP 30x, Gradle automatycznie dołącza te same poświadczenia do każdego kolejnego żądania w łańcuchu przekierowań — bez względu na docelowy host. Atakujący kontrolujący serwer pośredni lub zdolny do wymuszenia przekierowania może w ten sposób przechwycić dane uwierzytelniające ofiary. Mechanizm jest analogiczny do podatności CVE-2018-1000007.
Atakujący może przejąć dane uwierzytelniające użytkownika (np. hasła, tokeny API, nagłówki Authorization) przesyłane do repozytoriów artefaktów lub innych usług skonfigurowanych w Gradle, co prowadzi do pełnego naruszenia poufności, integralności i dostępności chronionych zasobów.
Należy zaktualizować Gradle do wersji 5.6 lub nowszej, w której poprawiono sposób obsługi przekierowań HTTP tak, aby dane uwierzytelniające nie były przesyłane poza oryginalnie skonfigurowany host.
Gradle w wersjach przed 5.6
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HGradle
APPGradle< 5.6
Powiązane podatności
RCE w Gradle przez deserializację obiektu w ObjectSocketWrapper
Gradle is a build automation tool, and its native-platform tool provides Java bindings for native APIs. When r...
Gradle is a build automation tool, and its native-platform tool provides Java bindings for native APIs. When r...
Gradle Enterprise through 2022.2.2 has Incorrect Access Control that leads to code execution.
Gradle is a build tool with a focus on build automation and support for multi-language development. In some ca...