Skip to main content

Apache Qpid Proton C CVE-2026-105031

MEDIUM
2026-10-28
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain MITM position on AMQP TLS link
  2. Delivery
    Present certificate chaining to a system-trusted CA
  3. Exploit
    Proton validates against unexpected trust anchor
  4. Execution
    Impersonate the intended pinned peer
  5. Impact
    Intercept or alter messaging traffic

Vulnerability Assessment

Exploitation Conditions

Applies only to applications using the OpenSSL TLS backend of Qpid Proton C through 0.40.0 that call pn_ssl_domain_set_trusted_ca_db() or pn_tls_config_set_trusted_certs() expecting those calls to replace, not augment, the default trust anchors; applications not restricting trust gain no new exposure. To abuse the residual system trust, an attacker needs a man-in-the-middle/network interception position against the TLS connection and a certificate that validly chains to a CA already in the host's system trust store for the targeted peer identity. Limiting factors: the Win32 SChannel implementation is not affected; the issue is neutralized by setting SSL_CERT_FILE to /dev/null or by upgrading to 0.41.1; and exploitation yields trust-scope bypass only, not code execution.

Impact

No CVSS vector, EPSS score, or KEV entry is provided, and the vuln.today Decision label is 'awaiting_data', so quantitative exploitation signals are absent rather than low - priority cannot be derived from a score and must rest on the mechanism. The flaw is a certificate-trust-scoping weakness: on the OpenSSL backend, pn_ssl_domain_set_trusted_ca_db() and pn_tls_config_set_trusted_certs() add the supplied CA(s) to the system default trust anchors instead of replacing them, so an application that deliberately pinned a restricted/private CA still silently trusts every CA in the system store. Real-world risk is conditional, not universal: it only bites applications that call these APIs intending to narrow trust, and exploitation further requires a man-in-the-middle position plus a certificate that chains to some system-trusted CA for the target identity. This is therefore a meaningful MITM-enabling defect for security-sensitive AMQP deployments that rely on CA pinning, but it is not a remote code execution or default-configuration break, and the absence of any PoC or active-exploitation signal (no public exploit identified at time of analysis) argues against treating it as an emergency. The vendor rates it 'important'; with no CVSS supplied, that severity and the clear fix path (0.41.1) are the strongest available signals.

Exploit ScenarioDerived

An AMQP application built on Qpid Proton C with the OpenSSL backend calls pn_ssl_domain_set_trusted_ca_db() to pin a single private CA for its broker, expecting all other issuers to be rejected. Because the system trust store is still honored, an attacker in a man-in-the-middle position who presents a server certificate issued by any publicly/system-trusted CA for the broker's name is accepted, allowing interception or modification of the messaging traffic. No public exploit identified at time of analysis.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
No patch listed yet

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 28, 2026

Apache Qpid Proton C through 0.40.0, when built against OpenSSL, treats the application-supplied trust store as an addition to the host's default system trust anchors rather than as a replacement. Applications that call pn_ssl_domain_set_trusted_ca_db() or pn_tls_config_set_trusted_certs() to narrow trust to a specific CA therefore silently continue to trust every CA in the operating system store, so an attacker positioned to intercept the TLS connection could present a certificate chaining to any of those residual roots and be accepted for the targeted peer identity. The Win32 SChannel backend is unaffected, the scope of abuse is a trust-scope bypass rather than code execution, and an attacker also needs a man-in-the-middle position. No CVSS vector, EPSS score, KEV entry, or public exploit code was provided at time of analysis; the upstream JIRA issue is marked Resolved/Fixed with fix version proton-c-0.41.1.

RemediationAI

Upgrade to Apache Qpid Proton C 0.41.1, the fix version recorded in PROTON-2976, which makes the trusted-CA configuration calls replace rather than augment the system trust anchors; rebuild or relink any application or distribution package that links proton-c against the older library, since the faulty behaviour lives in the library rather than the application. Where upgrading is not immediately possible, the vendor-documented workaround is to set the SSL_CERT_FILE environment variable for the application to /dev/null, which empties the default OpenSSL trust store so that only the explicitly configured CAs remain in effect; the trade-off is that the process then has no system roots at all, so any other TLS use in the same process that relies on the default store, including connections for which no explicit CA was configured, will fail verification and must be given an explicit CA bundle instead. No other compensating controls are stated in the available sources, and the vendor positions the 0.41.1 upgrade as the complete fix. Details are at https://issues.apache.org/jira/browse/PROTON-2976 and https://seclists.org/oss-sec/2026/q4/429.

Affected ProductsAI

Apache Qpid Proton C (proton-c) through version 0.40.0 is affected, specifically when the OpenSSL TLS implementation is in use; the upstream JIRA issue PROTON-2976 records an Affects Version of proton-c-0.28.0 and the CVE text states the range as through 0.40.0. The Win32 SChannel TLS implementation is explicitly not affected. No CPE strings were included in the supplied data, so affected assets must be identified by product and version rather than by CPE matching; note that distributions and downstream products statically or dynamically linking proton-c inherit the behaviour. Primary references are the Apache Qpid project site at https://qpid.apache.org/, the JIRA issue at https://issues.apache.org/jira/browse/PROTON-2976, and the oss-security posting at https://seclists.org/oss-sec/2026/q4/429.

Affects your stack

Find out whether the stacks and servers you run are on an affected version.

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

Qpid Proton C is the AMQP messaging toolkit library, and its TLS layer can be backed either by OpenSSL on POSIX platforms or by SChannel on Win32. The OpenSSL backend maintains a trust configuration object in which the default system trust anchors are loaded, and the documented purpose of pn_ssl_domain_set_trusted_ca_db() and pn_tls_config_set_trusted_certs() is to designate the CA database that the application wants used for peer verification. Per the upstream report (PROTON-2976), those calls instead appended the caller-supplied CAs to the existing system default roots, so the effective trust set became the union of both. The security consequence is a trust-scope bypass: an application that deliberately pinned verification to a private or restricted CA still accepted any certificate chaining to a public CA in the host trust store, which defeats the purpose of the restricted configuration when an adversary controls the network path. The flaw is a configuration-semantics error in trust anchor management rather than a cryptographic break, memory-safety defect, or certificate parsing bug; no CWE identifier was supplied in the available data. The reporter and assignee is Andrew Stitcher, the issue was filed against proton-c-0.28.0 in the Environment 'Openssl', and the fix was delivered in proton-c-0.41.1. The trigger for a given application is calling one of the two affected APIs while using the OpenSSL backend; applications that never restrict trust, and all applications on the SChannel backend, gain no new exposure.

Know when OpenSSL gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

vuln.today AI 7.4 HIGH

Network TLS peer (AV:N) but requires MITM plus a certificate chaining to a system-trusted CA while the app intended restricted trust (AC:H); interception/tampering gives C:H/I:H, no availability impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Description PRE-NVD

Disclosed via oss-security. NVD scoring and full description are pending.

Threat Intelligence Overview

Prevalence
Low
AMQP messaging toolkit, limited to specific messaging/integration deployments
Data Quality
1 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS N/A
Patch available No
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2014-0160 HIGH POC
7.5 Apr 07

The (1) TLS and (2) DTLS implementations in OpenSSL 1.0.1 before 1.0.1g do not properly handle Heartbeat Extension packe

CVE-2021-3711 CRITICAL POC
9.8 Aug 24

In order to decrypt SM2 encrypted data an application is expected to call the API function EVP_PKEY_decrypt(). Rated cri

CVE-2014-0195 MEDIUM POC
6.8 Jun 05

The dtls1_reassemble_fragment function in d1_both.c in OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0

CVE-2014-0224 HIGH POC
7.4 Jun 05

OpenSSL before 0.9.8za, 1.0.0 before 1.0.0m, and 1.0.1 before 1.0.1h does not properly restrict processing of ChangeCiph

CVE-2016-0800 MEDIUM POC
5.9 Mar 01

The SSLv2 protocol, as used in OpenSSL before 1.0.1s and 1.0.2 before 1.0.2g and other products, requires a server to se

CVE-2015-0204 MEDIUM POC
4.3 Jan 09

The ssl3_get_key_exchange function in s3_clnt.c in OpenSSL before 0.9.8zd, 1.0.0 before 1.0.0p, and 1.0.1 before 1.0.1k

CVE-2022-2068 HIGH
7.3 Jun 21

In addition to the c_rehash shell command injection identified in CVE-2022-1292, further circumstances where the c_rehas

CVE-2015-4000 LOW POC
3.7 May 21

The TLS protocol 1.2 and earlier, when a DHE_EXPORT ciphersuite is enabled on a server but not on a client, does not pro

CVE-2014-3566 LOW POC
3.4 Oct 15

The SSL protocol 3.0, as used in OpenSSL through 1.0.1i and other products, uses nondeterministic CBC padding, which mak

CVE-2016-2107 MEDIUM POC
5.9 May 05

The AES-NI implementation in OpenSSL before 1.0.1t and 1.0.2 before 1.0.2h does not consider memory allocation during a

CVE-2015-1793 MEDIUM POC
6.5 Jul 09

The X509_verify_cert function in crypto/x509/x509_vfy.c in OpenSSL 1.0.1n, 1.0.1o, 1.0.2b, and 1.0.2c does not properly

CVE-2022-3602 HIGH
7.5 Nov 01

A buffer overrun can be triggered in X.509 certificate verification, specifically in name constraint checking. Rated hig

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy