Podatność w Apache Ignite umożliwia zdalne wykonanie dowolnego kodu (RCE) poprzez przesłanie specjalnie przygotowanego, serializowanego obiektu do endpointu GridClientJdkMarshaller. Wysoka ocena CVSS 9.8 wynika z możliwości ataku bez uwierzytelnienia i bez interakcji użytkownika.
▸ Pokaż oryginał (EN)
In Apache Ignite before 2.4.8 and 2.5.x before 2.5.3, the serialization mechanism does not have a list of classes allowed for serialization/deserialization, which makes it possible to run arbitrary code when 3-rd party vulnerable classes are present in Ignite classpath. The vulnerability can be exploited if the one sends a specially prepared form of a serialized object to GridClientJdkMarshaller deserialization endpoint.
Mechanizm serializacji w Apache Ignite nie implementuje listy dozwolonych klas (allowlist) dla operacji serializacji i deserializacji. Atakujący może przesłać przez sieć specjalnie spreparowany obiekt serializowany do endpointu GridClientJdkMarshaller. Jeśli w classpath aplikacji Ignite obecne są podatne biblioteki zewnętrzne (3rd-party), ich klasy mogą zostać użyte jako tzw. gadget chains podczas deserializacji, co prowadzi do wykonania dowolnego kodu na serwerze.
Atakujący nieuprzywilejowany, działający zdalnie, może uzyskać pełną kontrolę nad systemem — osiągnąć poufność, integralność i dostępność danych na poziomie krytycznym, w tym wykonać dowolne polecenia systemowe na serwerze.
Należy zaktualizować Apache Ignite do wersji 2.4.8 lub nowszej (dla gałęzi 2.4.x) albo do wersji 2.5.3 lub nowszej (dla gałęzi 2.5.x). Dodatkowo należy zweryfikować i ograniczyć zewnętrzne biblioteki obecne w classpath aplikacji. Użytkownicy Red Hat mogą zastosować patche opisane w erracie RHSA-2018:3768.
Apache Ignite w wersjach przed 2.4.8 oraz w wersjach 2.5.x przed 2.5.3
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:HApache Ignite
APPApache< 2.4.8< 2.5.3
Powiązane podatności
RCE w Spring Data Commons — podatność property bindera
Apache Ignite: pominięcie filtrów deserializacji umożliwia RCE
Apache Ignite — nieautoryzowany dostęp do systemu plików przez funkcje SQL H2
Apache Ignite – niebezpieczna deserializacja umożliwia zdalne wykonanie kodu
Relative Path Traversal vulnerability in Apache Ignite REST API. Authenticated REST API users can read any fi...