Podatność w REST API h2oai/h2o-3 (wersja 3.46.0.4) umożliwia nieuwierzytelnionemu atakującemu zdalne wykonanie dowolnego kodu poprzez deserializację niezaufanych danych. Brak wymogu uwierzytelnienia oraz maksymalna ocena CVSS 9.8 czynią tę lukę wyjątkowo krytyczną.
▸ Pokaż oryginał (EN)
A vulnerability in the h2oai/h2o-3 REST API versions 3.46.0.4 allows unauthenticated remote attackers to execute arbitrary code via deserialization of untrusted data. The vulnerability exists in the endpoints POST /99/ImportSQLTable and POST /3/SaveToHiveTable, where user-controlled JDBC URLs are passed to DriverManager.getConnection, leading to deserialization if a MySQL or PostgreSQL driver is available in the classpath. This issue is fixed in version 3.47.0.
Atakujący wysyła żądanie HTTP POST do endpointów /99/ImportSQLTable lub /3/SaveToHiveTable, przekazując spreparowany adres URL JDBC kontrolowany przez użytkownika. Adres ten jest następnie przekazywany do metody DriverManager.getConnection bez odpowiedniej walidacji. Jeśli w classpath aplikacji dostępny jest sterownik MySQL lub PostgreSQL, dochodzi do deserializacji danych dostarczonych przez atakującego, co prowadzi do wykonania arbitralnego kodu na serwerze.
Nieuwierzytelniony atakujący zdalny może uzyskać pełną kontrolę nad serwerem poprzez wykonanie dowolnego kodu, co zagraża poufności, integralności oraz dostępności systemu.
Należy zaktualizować h2oai/h2o-3 do wersji 3.47.0 lub nowszej, w której podatność została naprawiona. Jako tymczasowe obejście warto rozważyć ograniczenie dostępu sieciowego do endpointów REST API wyłącznie do zaufanych hostów.
h2oai/h2o-3 REST API w wersji 3.46.0.4
Poprawka dostępna w commicie ac1d642b4d86f10a02d75974055baf2a4b2025ac w repozytorium GitHub h2oai/h2o-3. Szczegóły techniczne podatności zostały opublikowane w serwisie huntr.com.
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HH2o
APPH2O3.46.0.4
Powiązane podatności
RCE przez obejście blacklisty JDBC w REST API H2O-3
Deserializacja w H2O umożliwia RCE i odczyt plików systemowych
H2O.ai H2O — RCE i odczyt plików przez niekontrolowany JDBC URL
An attacker is able to gain remote code execution on a server hosting the H2O dashboard through it's POJO mode...
A vulnerability in the `/3/ParseSetup` endpoint of h2oai/h2o-3 version 3.46.0.1 allows for a denial of service...