Description
The jdbc shell command scope shipped no org.apache.karaf.command.acl.jdbc.cfg. Karaf's command guard (SecuredSessionFactoryImpl) treats a command with no matching ACL rule as allowed, so any authenticated shell session (including one holding only the viewer role) could run every jdbc:* command. jdbc:ds-create stores a fully attacker-controlled JDBC URL into a pax-jdbc-config factory Configuration with no validation. pax-jdbc-config reactively turns that into a live DataSource. Several JDBC drivers run code or SQL at connection time based on URL parameters (e.g. H2 INIT=RUNSCRIPT), so a viewer-level shell user could reach arbitrary code execution, bypassing the admin-role gate that already protects shell:exec. This is a privilege-escalation-to-RCE chain, not merely an "admin misconfiguration".


The same applies to jms:* shell commands.
Published: 2026-09-29
Score: 9.8 Critical
EPSS: < 1% Very Low
KEV: No
Impact: Privilege Escalation to Remote Code Execution
Action: Apply Fix
AI Analysis

Impact

The vulnerability arises because the jdbc shell command scope is shipped without an ACL configuration file. The command guard interprets a command with no ACL rule as allowed, so any authenticated shell session—including one that only has the viewer role—can execute every jdbc:* command. Using the jdbc:ds-create command, an attacker can store a fully attacker‑controlled JDBC URL in a pax-jdbc-config factory configuration without any validation. When that configuration is activated, the driver may execute code or SQL during connection establishment based on URL parameters (for example, H2’s INIT=RUNSCRIPT). This chain allows a viewer‑role user to achieve arbitrary code execution, effectively bypassing the admin‑role restriction that protects the shell:exec command. This is a classic privilege‑escalation‑to‑RCE scenario and not an accidental misconfiguration, because the base system allows a low‑privileged user to perform a privileged action through missing authorization. The flaw results from improper configuration handling in the command guard and a lack of input validation for JDBC URLs within the pax-jdbc-config component. It can lead to total compromise of the affected Karaf instance.

Affected Systems

The issue affects the Apache Karaf product from the Apache Software Foundation. There is no explicit version range listed in the CNA data, so all releases that use the default unsecured jdbc shell command scope are potentially impacted.

Risk and Exploitability

The vulnerability is encoded in an authenticated shell session, so an attacker needs to authenticate as a viewer or higher role. The CVSS score is 9.8, indicating a high severity impact. The EPSS score is below 1 %, indicating that exploitation is currently rare, and the vulnerability is not listed in CISA’s KEV catalog. However, because the exploitation path requires only a shell session and does not involve complex zero‑day vectors, the likelihood of discovery and exploitation remains non‑negligible. The most probable attack vector is via a legitimate remote Karaf shell session obtained either through normal authentication or an existing compromised account. Once authenticated, the attacker can run jdbc:ds-create with a malicious JDBC URL and trigger arbitrary code execution. Overall, the combination of privilege escalation, lack of ACL enforcement, and driver‑level code execution means this flaw poses a significant risk to affected deployments.

Generated by OpenCVE AI on October 1, 2026 at 16:59 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade to a Karaf release that includes an ACL configuration for the jdbc shell command scope (i.e., contains org.apache.karaf.command.acl.jdbc.cfg).
  • If a patch is not immediately available, disable the jdbc shell command or remove the default jdbc.* command scope from the Karaf command registry to prevent unauthenticated execution.
  • Configure the viewer role so that it does not have shell access, or restrict shell access to a higher role that can be audited; this limits the ability of low‑privileged users to invoke jdbc:ds-create.

Generated by OpenCVE AI on October 1, 2026 at 16:59 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Wed, 07 Oct 2026 20:30:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:apache:karaf:*:*:*:*:*:*:*:*

Thu, 01 Oct 2026 15:30:00 +0000

Type Values Removed Values Added
Metrics cvssV3_1

{'score': 9.8, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'total'}, 'version': '2.0.3'}


Wed, 30 Sep 2026 02:30:00 +0000

Type Values Removed Values Added
First Time appeared Apache
Apache karaf
Vendors & Products Apache
Apache karaf

Tue, 29 Sep 2026 13:15:00 +0000

Type Values Removed Values Added
Description The jdbc shell command scope shipped no org.apache.karaf.command.acl.jdbc.cfg. Karaf's command guard (SecuredSessionFactoryImpl) treats a command with no matching ACL rule as allowed, so any authenticated shell session (including one holding only the viewer role) could run every jdbc:* command. jdbc:ds-create stores a fully attacker-controlled JDBC URL into a pax-jdbc-config factory Configuration with no validation. pax-jdbc-config reactively turns that into a live DataSource. Several JDBC drivers run code or SQL at connection time based on URL parameters (e.g. H2 INIT=RUNSCRIPT), so a viewer-level shell user could reach arbitrary code execution, bypassing the admin-role gate that already protects shell:exec. This is a privilege-escalation-to-RCE chain, not merely an "admin misconfiguration". The same applies to jms:* shell commands.
Title Apache Karaf: Missing authorization on the jdbc:* shell command scope allows privilege escalation to remote code execution via jdbc:ds-create
Weaknesses CWE-862
References

cve-icon MITRE

Status: PUBLISHED

Assigner: apache

Published:

Updated: 2026-10-01T14:13:30.717Z

Reserved: 2026-09-14T17:14:08.734Z

Link: CVE-2026-91048

cve-icon Vulnrichment

Updated: 2026-09-29T09:15:44.666Z

cve-icon NVD

Status : Analyzed

Published: 2026-09-29T09:17:10.193

Modified: 2026-10-07T20:14:54.487

Link: CVE-2026-91048

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-01T17:00:15Z

Weaknesses