
Reproducteur pour CVE-2026-46590 : désérialisation non sécurisée du cycle de vie des clés camel-pqc d'Apache Camel (migration héritée .key de FileBasedKeyLifecycleManager via ObjectInputStream), correction incomplète de CVE-2026-40048 (corrigée dans 4.18.3/4.21.0)
| Runtime | Répertoire | Pile technique |
|---|
| Camel Spring Boot | camel-spring-boot/ | Spring Boot 3.2.0 + camel-pqc 4.18.2 |
| Camel Quarkus | camel-quarkus/ | Quarkus 3.36.0 + Camel Quarkus 3.36.0 (inclut Camel 4.20.0) |
Les deux sont des versions affectées (corrigées en 4.18.3 / 4.21.0), et les deux démontrent le même défaut :
FileBasedKeyLifecycleManager persiste les clés post-quantiques au format JSON PKCS#8/X.509, mais migre toujours les
fichiers de clés hérités (sérialisés en Java) avec un ObjectInputStream brut et sans ObjectInputFilter — le
résidu de correction incomplète de CVE-2026-40048. getKey(keyId) retombe sur migrateLegacyKey(), qui
désérialise le fichier <keyId>.key placé par l'attaquant ; le cast vers KeyPair n'a lieu qu'après le retour de
readObject(), donc un objet conçu à cet effet s'exécute en premier (CWE-502).
Chaque sous-répertoire est un projet autonome avec son propre Dockerfile, docker-compose.yml et README. En
résumé, pour l'un ou l'autre :
cd camel-spring-boot # ou : cd camel-quarkus
mvn clean package
docker compose up -d --build
curl -s http://localhost:8080/exploit/attack
docker compose down
| Propriété | Valeur |
|---|---|
| Composant | camel-pqc |
| Classe affectée | org.apache.camel.component.pqc.lifecycle.FileBasedKeyLifecycleManager#migrateLegacyKey (et migrateLegacyMetadata), ainsi que les équivalents HashicorpVault / AwsSecretsManager |
| CWE | CWE-502 (Désérialisation de données non fiables) |
| Impact | Exécution de code dans l'application de gestion des clés lors de la lecture d'une valeur de clé/métadonnée héritée |
| Versions affectées | De 4.18.0 avant 4.18.3, de 4.19.0 avant 4.21.0 (les gestionnaires de clés camel-pqc n'existent pas avant 4.16.0, donc 4.14.x n'est pas affecté) |
| Versions corrigées | 4.18.3, 4.21.0 |
| JIRA | CAMEL-23726 (PR apache/camel#23912, rétroportage #23914) |
| Crédit | Yu Bao (PayPal) |
Avis de sécurité : https://camel.apache.org/security/CVE-2026-46590.html
Ces reproducteurs sont fournis uniquement pour la recherche en sécurité et les tests autorisés, pour une vulnérabilité divulguée publiquement et corrigée. Ne les utilisez pas contre des systèmes sans autorisation explicite.