ghsa-v3vg-332r-mw99
CVSS 7.8 osv_mavenThe Camel-PQC FileBasedKeyLifecycleManager class deserializes the contents of `<keyId>.key` files in the configured key directory using java.io.ObjectInputStream without applying any ObjectInputFilter or class-loading restrictions. The cast to `java.security.KeyPair` is evaluated only after `readObject()` has already returned, so any `readObject()` side effects in the deserialized object run before the type check. An attacker who can write to the key directory used by a Camel application — for example through a path traversal into the directory, misconfigured filesystem permissions on the volume where keys are stored, a compromised key provisioning pipeline, or a symlink attack — can place a crafted serialized Java object that, when deserialized during normal key lifecycle operations, results in arbitrary code execution in the context of the application. This issue affects Apache Camel: from 4.19.0 before 4.20.0, from 4.18.0 before 4.18.2. Users are recommended to upgrade to version 4.20.0, which fixes the issue by replacing java.io.ObjectInputStream-based key and metadata storage with standard PKCS#8 (private key) / X.509 SubjectPublicKeyInfo (public key) Base64 JSON encoding. For users on the 4.18.x LTS releases stream, upgrade to 4.18.2.
- Published
- unknown
- Last Modified
- unknown
CVSS details not available.
No product information available.
- https://nvd.nist.gov/vuln/detail/CVE-2026-40048
- https://github.com/apache/camel/pull/22034
- https://github.com/apache/camel/pull/22495
- https://github.com/apache/camel/commit/5bdd0f1d3289dfa78116deec6c81083708bf432d
- https://github.com/apache/camel/commit/5f87a86f4e337efc59248d278c6a5650e73b3b7c
- https://access.redhat.com/security/cve/CVE-2026-40048
- https://bugzilla.redhat.com/show_bug.cgi?id=2463176
- https://camel.apache.org/security/CVE-2026-40048.html
- https://github.com/apache/camel
- https://issues.apache.org/jira/browse/CAMEL-23200
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-40048.json
- http://www.openwall.com/lists/oss-security/2026/04/26/6
No linked vulnerabilities found.
{
"affected": [
{
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/04/GHSA-v3vg-332r-mw99/GHSA-v3vg-332r-mw99.json"
},
"package": {
"ecosystem": "Maven",
"name": "org.apache.camel:camel-pqc",
"purl": "pkg:maven/org.apache.camel/camel-pqc"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "4.18.2"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"4.12.0",
"4.13.0",
"4.14.0",
"4.14.1",
"4.14.2",
"4.14.3",
"4.14.4",
"4.14.5",
"4.14.6",
"4.14.7",
"4.14.8",
"4.14.9",
"4.15.0",
"4.16.0",
"4.17.0",
"4.18.0",
"4.18.1"
]
},
{
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/04/GHSA-v3vg-332r-mw99/GHSA-v3vg-332r-mw99.json"
},
"package": {
"ecosystem": "Maven",
"name": "org.apache.camel:camel-pqc",
"purl": "pkg:maven/org.apache.camel/camel-pqc"
},
"ranges": [
{
"events": [
{
"introduced": "4.19.0"
},
{
"fixed": "4.20.0"
}
],
"type": "ECOSYSTEM"
}
],
"versions": [
"4.19.0"
]
}
],
"aliases": [
"CVE-2026-40048"
],
"database_specific": {
"cwe_ids": [
"CWE-502"
],
"github_reviewed": true,
"github_reviewed_at": "2026-05-05T21:18:38Z",
"nvd_published_at": "2026-04-27T09:16:01Z",
"severity": "HIGH"
},
"details": "The Camel-PQC FileBasedKeyLifecycleManager class deserializes the contents of `<keyId>.key` files in the configured key directory using java.io.ObjectInputStream without applying any ObjectInputFilter or class-loading restrictions. The cast to `java.security.KeyPair` is evaluated only after `readObject()` has already returned, so any `readObject()` side effects in the deserialized object run before the type check. An attacker who can write to the key directory used by a Camel application — for example through a path traversal into the directory, misconfigured filesystem permissions on the volume where keys are stored, a compromised key provisioning pipeline, or a symlink attack — can place a crafted serialized Java object that, when deserialized during normal key lifecycle operations, results in arbitrary code execution in the context of the application.\n\nThis issue affects Apache Camel: from 4.19.0 before 4.20.0, from 4.18.0 before 4.18.2.\n\nUsers are recommended to upgrade to version 4.20.0, which fixes the issue by replacing java.io.ObjectInputStream-based key and metadata storage with standard PKCS#8 (private key) / X.509 SubjectPublicKeyInfo (public key) Base64 JSON encoding. For users on the 4.18.x LTS releases stream, upgrade to 4.18.2.",
"id": "GHSA-v3vg-332r-mw99",
"modified": "2026-11-04T03:45:10.341399791Z",
"published": "2026-04-27T09:34:38Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2026-40048"
},
{
"type": "WEB",
"url": "https://github.com/apache/camel/pull/22034"
},
{
"type": "WEB",
"url": "https://github.com/apache/camel/pull/22495"
},
{
"type": "WEB",
"url": "https://github.com/apache/camel/commit/5bdd0f1d3289dfa78116deec6c81083708bf432d"
},
{
"type": "WEB",
"url": "https://github.com/apache/camel/commit/5f87a86f4e337efc59248d278c6a5650e73b3b7c"
},
{
"type": "WEB",
"url": "https://access.redhat.com/security/cve/CVE-2026-40048"
},
{
"type": "WEB",
"url": "https://bugzilla.redhat.com/show_bug.cgi?id=2463176"
},
{
"type": "WEB",
"url": "https://camel.apache.org/security/CVE-2026-40048.html"
},
{
"type": "PACKAGE",
"url": "https://github.com/apache/camel"
},
{
"type": "WEB",
"url": "https://issues.apache.org/jira/browse/CAMEL-23200"
},
{
"type": "WEB",
"url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-40048.json"
},
{
"type": "WEB",
"url": "http://www.openwall.com/lists/oss-security/2026/04/26/6"
}
],
"schema_version": "1.9.2",
"severity": [
{
"score": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "Camel-PQC Vulnerable to Deserialization of Untrusted Data"
}