Metabase w wersjach poprzedzających 1.58.15, 1.59.12, 1.60.6.3 i 1.61.1.4 umożliwia wykonanie dowolnego kodu na serwerze przez deserializację niezwalidowanych obiektów Java zwracanych przez bazę H2. Podatność jest krytyczna, ponieważ dotyczy domyślnej przykładowej bazy danych H2 dołączonej do Metabase i może być wykorzystana przez każdego uwierzytelnionego użytkownika.
▸ Pokaż oryginał (EN)
Metabase is an open-source business intelligence and embedded analytics tool. Prior to 1.58.15, 1.59.12, 1.60.6.3, and 1.61.1.4, Metabase instances with an H2 database connection, including the default sample database, deserialize arbitrary Java objects returned in H2 native query result columns of type OTHER without validation, allowing an authenticated user who can run native H2 queries to execute code on the Metabase server. This issue is fixed in versions 1.58.15, 1.59.12, 1.60.6.3, and 1.61.1.4.
Metabase nie waliduje obiektów Java zwracanych w kolumnach typu OTHER w wynikach natywnych zapytań H2. Uwierzytelniony użytkownik posiadający uprawnienia do uruchamiania natywnych zapytań H2 może skonstruować zapytanie zwracające złośliwy, zserializowany obiekt Java. Metabase deserializuje taki obiekt (CWE-502: Deserialization of Untrusted Data) bez żadnej kontroli, co prowadzi do wykonania dowolnego kodu w kontekście procesu serwera Metabase.
Atakujący może wykonać dowolny kod na serwerze Metabase (RCE), uzyskując pełną kontrolę nad systemem, w tym dostęp do poufnych danych, modyfikację konfiguracji oraz możliwość dalszego lateral movement w sieci wewnętrznej.
Należy zaktualizować Metabase do wersji 1.58.15, 1.59.12, 1.60.6.3 lub 1.61.1.4. Patche dostępne są w oficjalnych wydaniach na GitHub: v0.58.15, v0.59.12, v0.60.6.3, v0.61.1.4. Do czasu aktualizacji zaleca się ograniczenie uprawnień do uruchamiania natywnych zapytań H2 wyłącznie do zaufanych administratorów oraz — jeśli to możliwe — usunięcie lub wyłączenie połączeń z bazą H2.
Metabase (open-source) we wszystkich wersjach przed 1.58.15, 1.59.12, 1.60.6.3 oraz 1.61.1.4, które posiadają skonfigurowane połączenie z bazą danych H2 — w tym instalacje korzystające z domyślnej przykładowej bazy H2.
Podatność dotyczy również domyślnej konfiguracji instalacyjnej Metabase (przykładowa baza H2), co znacząco zwiększa liczbę potencjalnie narażonych instancji. Poprawka dostępna w commicie 00f42511fe3bc4385652a2e96862ee6fd7d42cf8 w repozytorium GitHub.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:HMetabase
APPMetabase0.58.0 – 0.58.15 (bez)0.59.0 – 0.59.12 (bez)0.60.0 – 0.60.6.3 (bez)0.61.0 – 0.61.1.4 (bez)1.58.0 – 1.58.15 (bez)1.59.0 – 1.59.12 (bez)1.60.0 – 1.60.6.3 (bez)1.61.0 – 1.61.1.4 (bez)
Powiązane podatności
Metabase allows a remote, unauthenticated attacker to inject arbitrary SQL via the '/reset_password' database ...
Metabase – path traversal i odczyt lokalnych plików przez custom GeoJSON
RCE w Metabase poprzez podatny sterownik JDBC Snowflake
Metabase: RCE przez niebezpieczne właściwości połączenia H2 (admin)
Metabase RCE przez złośliwy connection string bazy H2