CVE-2026-92230
WysokieCVSS 7.5Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 7 - wyżej niż 7% wszystkich znanych CVE
Streszczenie
Apache Karaf przechowuje w statycznych polach ThreadLocal fabryki parserów i transformerów XML na długo żyjących wątkach kontenera. Ponieważ wartość ThreadLocal żyje dłużej niż tworzący ją bundle OSGi, powtarzane operacje instalacji, aktualizacji lub odświeżania bundle'a mogą powodować przypięcie kolejnych ClassLoaderów bundle'a w pamięci i uniemożliwienie ich usunięcia przez garbage collector, prowadząc do nieograniczonego wzrostu Metaspace i ostatecznie do odmowy usługi (DoS) instancji Karaf.
Ocena ryzyka
Długotrwałe lub powtarzane operacje na bundle'ach mogą prowadzić do wycieku pamięci Metaspace i ostatecznie do niedostępności instancji Apache Karaf, co może zakłócić działanie usług zależnych.
Rekomendacja
Zaktualizuj Apache Karaf do wersji, która naprawia tę podatność, jeśli jest dostępna. Monitoruj zużycie Metaspace i rozważ okresowe restarty instancji w celu złagodzenia skutków.
Inne podatności w Apache Karaf
Zobacz wszystkie- CVE-2026-92142Nieznane
Apache Karaf posiada podatność w zabezpieczeniach JMX MBeanServer, gdzie operacje createMBean, registerMBean i unregisterMBean nie są objęte kontrolą RBAC. Pozwala to użytkownikowi z rolą 'viewer' na zdalne wykonanie kodu w JVM Karaf, wykorzystując MLet jako zdalny classloader.
- CVE-2026-91085Nieznane
Apache Karaf posiada lukę w kontroli dostępu do polecenia config:install, które nie zostało objęte regułą ACL i jest dostępne dla każdego uwierzytelnionego użytkownika, nawet z rolą viewer. Polecenie pobiera plik z dowolnego URL i zapisuje go do katalogu karaf.etc, gdzie znajdują się pliki bezpieczeństwa (users.properties, keys.properties, host.key, pliki ACL). Z opcją --override można nadpisać istniejące pliki, a Felix FileInstall automatycznie przeładuje zmienione pliki .cfg bez restartu.
- CVE-2026-91048Nieznane
Podatność w Apache Karaf dotyczy braku pliku konfiguracyjnego ACL dla komend jdbc i jms, co powoduje, że każda uwierzytelniona sesja powłoki (nawet z rolą viewer) może wykonywać wszystkie komendy jdbc:* i jms:*. Komenda jdbc:ds-create pozwala na zapisanie dowolnego adresu URL JDBC, co może prowadzić do wykonania kodu na poziomie połączenia, omijając bramę roli admina.
- CVE-2026-91012Nieznane
Podatność w Apache Karaf pozwala użytkownikowi z rolą "manager" na zapis dowolnej treści do dowolnego pliku, do którego proces Karaf ma prawa zapisu. Dzieje się tak przez ominięcie kontroli ścieżek w ConfigRepositoryImpl.update() i createFactoryConfiguration(), gdzie wartość felix.fileinstall.filename lub PID z segmentami ".." może wskazywać poza katalog ${karaf.etc}.
- CVE-2026-91006Nieznane
Usługa zarządzania instancjami Apache Karaf (InstanceServiceImpl) tworzy polecenie uruchamiające podrzędną maszynę JVM przez konkatenację ciągów, a następnie wykonuje je przez /bin/sh lub cscript. Wartość javaOpts dostarczona przez wywołującego jest wstawiana do tego ciągu bez cudzysłowów, co pozwala na interpretację znaków specjalnych powłoki (;, |, `, $(...)) i wykonanie dowolnych poleceń systemu operacyjnego z uprawnieniami użytkownika procesu Karaf.
Oryginalny opis (angielski, źródło NVD)
Apache Karaf's XmlUtils cached XML parser/transformer factories in static ThreadLocal fields on long-lived container threads. Because a ThreadLocal value outlives the OSGi bundle that created it, repeated bundle or feature install, update, or refresh operations can leave successive bundle ClassLoader's pinned in memory and unreachable for garbage collection, leading to unbounded Metaspace growth and eventual denial of service of the Karaf instance.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

