CVE-2026-46590: Apache Camel PQC Unsafe Deserialization Remote Code Execution
Apache Camel's post-quantum cryptography (PQC) component has a critical flaw in how it handles cryptographic key metadata. When key managers like HashiCorp Vault or AWS Secrets Manager retrieve stored keys, they deserialize data using an unsafe Java deserialization method without any validation. An attacker who can write to the backend storage system (Vault or AWS Secrets Manager) can inject a malicious serialized object that executes arbitrary code when the application deserializes it during normal key operations. This is particularly dangerous because the vulnerability persists from an earlier incomplete fix and affects three different key storage implementations.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 8.8 HIGH · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Weaknesses (CWE)
- CWE-502
- Affected products
- 1 configuration(s)
- Published / Modified
- 2026-07-06 / 2026-07-08
NVD description (verbatim)
Deserialization of Untrusted Data vulnerability in Apache Camel PQC component. The camel-pqc component persists post-quantum key metadata (KeyMetadata) through pluggable KeyLifecycleManager implementations. HashicorpVaultKeyLifecycleManager and AwsSecretsManagerKeyLifecycleManager read that metadata back from the configured secret backend by deserializing a Base64-wrapped value with a raw java.io.ObjectInputStream.readObject() and no ObjectInputFilter or class allow-list; the cast to KeyMetadata happens only after readObject() returns, so any readObject() side effects in a crafted object run before the type check. The same unfiltered legacy-migration read also remained in FileBasedKeyLifecycleManager (for the stored KeyPair and KeyMetadata). A principal who can write to the operator-controlled backend that holds these values - the HashiCorp Vault KV path, or the AWS Secrets Manager secret (requiring a Vault token or secretsmanager:PutSecretValue) - could store a crafted serialized object that is deserialized during normal key-lifecycle operations, potentially leading to code execution in the context of the application that manages the keys. This is an incomplete-remediation follow-on to CVE-2026-40048 (CAMEL-23200), which changed FileBasedKeyLifecycleManager to store metadata as JSON / PKCS#8 / X.509 but did not add an ObjectInputFilter, did not cover the Vault and AWS sibling managers, and left FileBasedKeyLifecycleManager's own legacy-migration deserialization unfiltered. This issue affects Apache Camel: from 4.18.0 before 4.18.3, from 4.19.0 before 4.21.0. Users are recommended to upgrade to version 4.21.0, which fixes the issue. If users are on the 4.18.x LTS releases stream, then they are suggested to upgrade to 4.18.3. For deployments that cannot upgrade immediately, restrict write access to the key backend so that only the application's own identity can write the camel-pqc secrets (least-privilege HashiCorp Vault policies and secretsmanager:PutSecretValue IAM), and keep the PQC key material in a backend separate from any data that less-trusted principals can write.
1 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
CVE-2026-46590 is an unsafe deserialization vulnerability in Apache Camel's camel-pqc component affecting HashicorpVaultKeyLifecycleManager, AwsSecretsManagerKeyLifecycleManager, and FileBasedKeyLifecycleManager. These implementations use raw java.io.ObjectInputStream.readObject() to deserialize Base64-encoded KeyMetadata from backend storage without an ObjectInputFilter or class allow-list. The type cast to KeyMetadata occurs only after deserialization completes, allowing arbitrary readObject() side effects to execute before the type check. The vulnerability is classified as CWE-502 (Deserialization of Untrusted Data) and represents an incomplete remediation of CVE-2026-40048, which addressed file-based storage but did not add proper input filtering or cover the Vault and AWS manager implementations. Affected versions: 4.18.0–4.18.2 and 4.19.0–4.20.x.
Business impact
Compromise of a key management backend storage system becomes a direct path to remote code execution within the cryptographic key management layer of an organization's Camel deployment. An attacker with write access to HashiCorp Vault or AWS Secrets Manager (via a leaked token or IAM credential) can achieve code execution in the context of the application managing post-quantum keys, potentially exposing encrypted data, disrupting key rotation workflows, or pivoting to other systems. For organizations relying on PQC for future-proofing cryptographic infrastructure, this undermines the security model by allowing compromise at the key management tier rather than requiring attacks on the application or transport layer.
Affected systems
Apache Camel versions 4.18.0 through 4.18.2 (4.18.x LTS stream) and 4.19.0 through 4.20.x are vulnerable. The issue is resolved in Apache Camel 4.18.3 (LTS branch) and 4.21.0 (current). Any deployment using the camel-pqc component with HashiCorp Vault, AWS Secrets Manager, or file-based key lifecycle managers is at risk if the backend storage system is accessible to a principal with write permissions.
Exploitability
Exploitability requires an attacker to have authenticated write access to the configured key backend: a valid HashiCorp Vault token with kv put permissions on the PQC metadata path, or AWS IAM credentials with secretsmanager:PutSecretValue action on the relevant secret. The attack is non-interactive—once a crafted serialized object is stored, it is automatically deserialized during normal key-lifecycle operations, triggering code execution without further user action. CVSS score of 8.8 (HIGH) reflects the requirement for authenticated backend access combined with the high impact of remote code execution.
Remediation
Immediate action: upgrade to Apache Camel 4.21.0 (recommended for all branches) or 4.18.3 (if on the 4.18.x LTS stream). For deployments unable to patch immediately, implement strict access controls on the key backend: restrict write permissions via HashiCorp Vault policies (e.g., deny except for the application's own service identity) and AWS IAM policies (limit secretsmanager:PutSecretValue to the key-management application only). Additionally, segregate PQC key material into a backend separate from general secrets to reduce blast radius if less-trusted principals gain write access to shared storage.
Patch guidance
Upgrade Apache Camel to version 4.21.0 for all currently supported deployments. Organizations on the 4.18.x LTS stream should upgrade to 4.18.3. Verify the patch version in your build artifacts or application manifest before deployment. Test the upgrade in a non-production environment to ensure compatibility with your PQC key lifecycle workflows and any custom KeyLifecycleManager implementations. Consult the Apache Camel release notes for any breaking changes between your current version and the patched version.
Detection guidance
Monitor HashiCorp Vault audit logs and AWS CloudTrail for PutSecretValue or kv put operations on paths containing PQC key metadata—especially unexpected writes from service accounts other than the intended key-management application. Watch application logs for deserialization errors, ClassNotFoundException, or unexpected exceptions during key-lifecycle operations, as these may indicate an attempted exploit. Network-level monitoring can flag unusual outbound connections from the key-management process immediately after key retrieval. Review IAM policies and Vault ACLs to confirm that only the appropriate application identity has write access to key storage.
Why prioritize this
This is a HIGH-severity vulnerability with a direct path to remote code execution in a security-critical component (post-quantum cryptographic key management). Although it requires prior authentication to the backend storage system, the risk is amplified by the common practice of sharing credentials across teams and the fact that many organizations may not yet have segregated write access to secrets backends. The incomplete fix for CVE-2026-40048 signals that this issue has not been fully eradicated in prior patches, making prompt upgrade essential to avoid regression.
Risk score, explained
CVSS 8.8 reflects: Network-accessible attack vector (deserialization during key-lifecycle operations), low attack complexity (straightforward serialized-object injection), low privileges required (authenticated access to backend), no user interaction, unrestricted scope within the application context, and high impact across confidentiality, integrity, and availability (arbitrary code execution). The score appropriately captures the severity of remote code execution in a key-management context while acknowledging the prerequisite of backend write access.
Frequently asked questions
Who can exploit this vulnerability?
An attacker must have authenticated write access to the key backend: either a HashiCorp Vault token with kv put permissions on the PQC metadata path, or AWS IAM credentials with secretsmanager:PutSecretValue. This could be a rogue insider, a developer with shared credentials, a compromised CI/CD system, or an external actor who has obtained leaked credentials.
Why is this an incomplete fix for CVE-2026-40048?
CVE-2026-40048 addressed file-based key storage by changing it to use JSON and PKCS#8 formats, but did not add an ObjectInputFilter to block unsafe deserialization and did not extend the fix to HashiCorp Vault and AWS Secrets Manager implementations. Additionally, FileBasedKeyLifecycleManager retained unfiltered legacy-migration deserialization code, leaving a backdoor for attackers familiar with the old serialization format.
Can we mitigate this without upgrading immediately?
Yes, implement strict least-privilege access controls: restrict write permissions on the key backend to only the application's own identity using Vault policies and IAM policies. Segregate PQC key material into a separate backend that is not shared with other secrets, reducing the risk of compromise if a less-trusted principal gains write access to a shared storage system. However, these are temporary measures; upgrading is essential for complete remediation.
Does this affect all uses of Apache Camel, or just the PQC component?
Only the camel-pqc component (Apache Camel's post-quantum cryptography component) is affected. Organizations using Camel for other purposes but not using PQC key management are not vulnerable. Check your Camel configuration and dependencies to confirm whether camel-pqc is in use.
This analysis is based on the CVE record and vendor advisory as of July 2026. CVSS scores and affected versions are sourced from official Apache Camel security advisories and should be verified against the latest vendor guidance before deployment decisions. This summary does not constitute legal advice or a guarantee of security; organizations must conduct their own risk assessment based on their specific Camel deployment topology, backend infrastructure, and access control posture. Proof-of-concept exploit code is not provided; interested researchers should coordinate with Apache through responsible disclosure channels. Source: NVD (public-domain), retrieved 2026-08-15. Analysis generated by SEC.co (claude-haiku-4-5).
Related vulnerabilities
- CVE-2026-40859HIGHApache Camel Java Deserialization RCE Vulnerability – Urgent Patch Required
- CVE-2026-42359HIGHApache Airflow XCom PATCH RCE Bypass of CVE-2026-33858
- CVE-2026-42527HIGHApache Camel Deserialization DNS Reconnaissance Vulnerability
- CVE-2026-43825HIGHApache OpenNLP SvmDoccatModel Unsafe Deserialization RCE
- CVE-2026-43865HIGHApache Camel Hazelcast Deserialization RCE Vulnerability
- CVE-2026-43866HIGHApache Camel JMS Deserialization Bypass – DefaultExchangeHolder Exploit
- CVE-2026-45360HIGHApache Airflow Scheduler Unsafe Deserialization Privilege Escalation
- CVE-2026-50632HIGHApache CXF Incomplete JMS Deserialization Fix Enables RCE