CVE-2026-32144
OCSP designated-responder authorization bypass via missing signature verification
Improper Certificate Validation vulnerability in Erlang OTP public_key (pubkey_ocsp module) allows OCSP designated-responder authorization bypass via missing signature verification. The OCSP response validation in public_key:pkix_ocsp_validate/5 does not verify that a CA-designated responder certificate was cryptographically signed by the issuing CA. Instead, it only checks that the responder certificate's issuer name matches the CA's subject name and that the certificate has the OCSPSigning extended key usage. An attacker who can intercept or control OCSP responses can create a self-signed certificate with a matching issuer name and the OCSPSigning EKU, and use it to forge OCSP responses that mark revoked certificates as valid. This affects SSL/TLS clients using OCSP stapling, which may accept connections to servers with revoked certificates, potentially transmitting sensitive data to compromised servers. Applications using the public_key:pkix_ocsp_validate/5 API directly are also affected, with impact depending on usage context. This vulnerability is associated with program files lib/public_key/src/pubkey_ocsp.erl and program routines pubkey_ocsp:is_authorized_responder/3. This issue affects OTP from OTP 27.0 before OTP 27.3.4.10 and OTP 28.4.2, corresponding to public_key from 1.16 before 1.17.1.2 and 1.20.3, and ssl from 11.2 before 11.2.12.7 and 11.5.4.
Fixes and workarounds
Workaround
For SSL users: * Do not enable OCSP validation setting (current default is {stapling, no_staple}) * Use CRL-based revocation checking by setting the {crl_check, true} SSL option instead For applications using public_key:pkix_ocsp_validate/5 directly: * Pass {is_trusted_responder_fun, Fun} option with a function that validates trusted responder certificates * Restrict OCSP responder access to trusted endpoints via network controls (only applicable if you control the OCSP infrastructure)
Source: CNA: EEFWorkaround
Mitigation for this issue is either not available or the currently available options do not meet the Red Hat Product Security criteria comprising ease of use and deployment, applicability to widespread installation base or stability.
Source: ADP: redhat-SADPFix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: CNA: EEFFix
The reporting source identifies this reference as a patch. Check the advisory for affected versions and supported release branches.
Source: CNA: EEFAffected products and versions
| Product | Versions | Authority |
|---|---|---|
| OTP Erlang otp
software-id |
≥ 27.0; < * (affected, otp); unaffected at 27.3.4.10; unaffected at 28.4.2
Other versions: unaffected |
CNA: EEF |
| OTP Erlang public_key
otp |
≥ 1.16; < * (affected, otp); unaffected at 1.17.1.2; unaffected at 1.20.3
Other versions: unaffected |
CNA: EEF |
| OTP Erlang ssl
otp |
≥ 11.2; < * (affected, otp); unaffected at 11.2.12.7; unaffected at 11.5.4
Other versions: unaffected |
CNA: EEF |
| OTP Erlang erlang/otp
github |
≥ 601a012837ea0a5c8095bf24223132824177124d; < * (affected, git); unaffected at 49033a6d93a5be0ee0dce04e1fb8b4ae7de1e0c0; unaffected at ac7ff528be857c5d35eb29c7f24106e3a16d4891
Other versions: unaffected |
CNA: EEF |
| Red Hat OpenStack Platform 16.2 Red Hat erlang
https://access.redhat.com/downloads/content/package-browser/ |
Range not reported
Other versions: affected |
ADP: redhat-SADP |
| Red Hat OpenStack Platform 17.1 Red Hat erlang
https://access.redhat.com/downloads/content/package-browser/ |
Range not reported
Other versions: affected |
ADP: redhat-SADP |
| Red Hat OpenStack Platform 18.0 Red Hat erlang
https://access.redhat.com/downloads/content/package-browser/ |
Range not reported
Other versions: affected |
ADP: redhat-SADP |
Version ranges are source assertions. Check the vendor advisory and your installed configuration before determining exposure.
CVSS assessments
| Version / score | Vector | Authority |
|---|---|---|
| 4.0 / 7.6 high |
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:P/VC:H/VI:H/VA:N/SC:L/SI:L/SA:N | CNA: EEF |
| 3.1 / 7.4 high |
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N | ADP: redhat-SADP |
Exploit evidence
No exploit evidence in collected sources. This is not proof of no exploitation.
References
- https://github.com/erlang/otp/security/advisories/GHSA-gxrm-pf64-99xmCNA: EEF · vendor-advisory, related
- https://cna.erlef.org/cves/CVE-2026-32144.htmlCNA: EEF · related
- https://osv.dev/vulnerability/EEF-CVE-2026-32144CNA: EEF · related
- https://www.erlang.org/doc/system/versions.html#order-of-versionsCNA: EEF · x_version-scheme
- https://github.com/erlang/otp/commit/601a012837ea0a5c8095bf24223132824177124dCNA: EEF · related
- https://github.com/erlang/otp/commit/49033a6d93a5be0ee0dce04e1fb8b4ae7de1e0c0CNA: EEF · patch
- https://github.com/erlang/otp/commit/ac7ff528be857c5d35eb29c7f24106e3a16d4891CNA: EEF · patch
- https://access.redhat.com/security/cve/CVE-2026-32144ADP: redhat-SADP · vdb-entry, x_refsource_REDHAT
- https://bugzilla.redhat.com/show_bug.cgi?id=2455896ADP: redhat-SADP · issue-tracking, x_refsource_REDHAT
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-32144.jsonADP: redhat-SADP · x_sadp-csaf-vex
For agents and automation
Read public disclosures for free as Markdown or JSON. Compatible browsers also expose native WebMCP tools to search disclosures, read this page, and discover API access.
Use the ontology-linked Cyber API with x402 pay per request, or a Y2 Pro or Elite API key with the intel:cyber scope.
Endpoints and access details
https://api.y2.dev/api/v2/cyber/cveshttps://api.y2.dev/api/v2/cyber/cves/{cveId}
A workspace owner or admin can create a Pro or Elite API key. Send Authorization: Bearer <Y2_API_KEY> from your trusted agent runtime.
For x402, omit Authorization and read the HTTP 402 payment challenge before signing a retry. Public browser tools do not make payments.