CVE-2026-91085
Beschreibung
Die Shell/SSH-Befehlssicherheit von Apache Karaf wird durch ACL-Konfigurationsdateien (etc/org.apache.karaf.command.acl..cfg) erzwungen. SecuredSessionFactoryImpl.checkSecurity() löst die Rollen auf, die für einen Aufruf erforderlich sind, und schlägt, wenn keine ACL-Regel mit dem Befehl übereinstimmt, fehl. Das Sicherheitsventil dafür, karaf.secured.command.compulsory.roles, Schiffe kommentiert in etc/system. Eigenschaften, so dass ein unübertroffener Befehl für jeden authentifizierten Benutzer erlaubt ist. Die versendete org.apache.karaf.command.acl.config ACL (assemblies/features/standard/src/main/feature/feature.xml, gespiegelt in instance/.../etc/org.apache.karaf.command.acl.config.cfg) hat keinen Installationseintrag. Es beschränkt das Löschen auf admin, beschränkt edit/property-*/update auf jmx.acl.*, org.apache.karaf.command.acl.* und org.apache.karaf.service.acl.* PIDs zu adminieren und erlaubt Manager für alles andere, aber config:install war einfach unübertroffen, und daher für jeden authentifizierten Benutzer erlaubt, einschließlich einer nur die Viewer-Rolle. config:installieren Sie fetches url und schreibt es in ${karaf.etc} als finalname. Es ruft PathUtils.checkWithin() auf, um .. traversal außerhalb von karaf.etc zu blockieren, aber dieser Ordner enthält alle sicherheitsrelevanten Dateien, die Karaf versendet: users.properties, keys.properties, host.key und alle org.apache.karaf.*.acl.* Dateien, einschließlich der ACL-Datei, die diesen Befehl (falsch) verwaltet. Bei -o/--override wird eine vorhandene Datei mit angreifergesteuerten Bytes überschrieben, die von einer beliebigen URL abgerufen werden. Da felix.fileinstall.dir = ${karaf.etc} (etc/config.properties) ist, beobachtet und lädt Felix FileInstall auch jede dort abgelegte .cfg-Datei neu und schließt die Schleife, ohne dass ein Neustart erforderlich ist. Im Gegensatz dazu sind bundle:install, feature:install und kar:install alle admin-only in ihren eigenen ACLs, und config:delete ist admin in derselben ACL, config:install war der Ausreißer. Minderung Installieren = admin in etc/org.apache.karaf.command.acl.config.cfg hinzufügen (die Datei erstellen ist abwesend) und/oder karaf.secured.command.compulsory.roles=admin in etc/system.properties einstellen (und neu starten), damit unübertroffene Befehle standardmäßig geschlossen fehlschlagen.
Quellen & weiterführende Informationen
Hier werden ausschließlich tatsächlich zu dieser Schwachstelle gespeicherte Quellenbelege angezeigt.
Was ist zur Behebung zu tun?
Herstellerhinweise prüfen und das betroffene Produkt kurzfristig patchen oder kompensierende Schutzmaßnahmen aktivieren.
Empfohlene Schritte
- Betroffene Systeme identifizieren: Apache Software Foundation karaf.
- Exposition prüfen: Internet-Erreichbarkeit, Admin-Oberflächen, VPN, Mail- oder Webdienste.
- Hersteller-Advisory öffnen und verfügbare Updates, Workarounds oder Deaktivierungen prüfen.
- Nacharbeiten dokumentieren: betroffene Assets, Maßnahme, Zeitpunkt, Restrestrisiko.
Übergangsmaßnahmen
- Zugriff auf betroffene Dienste auf vertrauenswürdige Netze einschränken.
- WAF/IDS/EDR-Regeln und Hersteller-IOCs aktivieren, sofern verfügbar.
- Nicht benötigte Funktionen, Plugins oder Dienste temporär deaktivieren.
- Administrative Zugänge besonders absichern: MFA, Passwortrotation, Session-Invalidierung.