# CVE-2026-28389: Possible NULL Dereference When Processing CMS KeyAgreeRecipientInfo

> Attackers can cause a denial of service by sending crafted CMS data to applications using OpenSSL, triggering a NULL pointer dereference.

- **Severity:** High 7.5 (`CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H`)
- **Exploited in the wild:** Not known
- **Login needed:** Not needed
- **Attackable:** Over the internet
- **Victim action needed:** Not needed
- **Fix available:** Yes
- **Published:** 7 Apr 2026
- **Updated:** 15 Oct 2026
- **Also known as:** ALPINE-CVE-2026-28389, AZL-82067, AZL-82097, AZL-82202, BELL-CVE-2026-28389, CLSA-2026-1777547052, CLSA-2026-1777552800, CLSA-2026-1777553052, CLSA-2026-1780062952, CLSA-2026-1786527958, DEBIAN-CVE-2026-28389, ECHO-ba3d-b3f7-03e8, GHSA-7x88-9hgc-69gf, JLSEC-2026-274, MINI-767m-p626-gv4m, MINI-j7wq-f9cm-ph83, MINI-jrmj-9f3h-wrh5, ROOT-OS-ALPINE-315-CVE-2026-28389, ROOT-OS-ALPINE-317-CVE-2026-28389, UBUNTU-CVE-2026-28389

## What is CVE-2026-28389?

CVE-2026-28389 is a high-severity vulnerability in Openssl Openssl, published on 7 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.

### Official description

Issue summary: During processing of a crafted CMS EnvelopedData message
with KeyAgreeRecipientInfo a NULL pointer dereference can happen.

Impact summary: Applications that process attacker-controlled CMS data may
crash before authentication or cryptographic operations occur resulting in
Denial of Service.

When a CMS EnvelopedData message that uses KeyAgreeRecipientInfo is
processed, the optional parameters field of KeyEncryptionAlgorithmIdentifier
is examined without checking for its presence. This results in a NULL
pointer dereference if the field is missing.

Applications and services that call CMS_decrypt() on untrusted input
(e.g., S/MIME processing or CMS-based protocols) are vulnerable.

The FIPS modules in 3.6, 3.5, 3.4, 3.3 and 3.0 are not affected by this
issue, as the affected code is outside the OpenSSL FIPS module boundary.

Weakness: CWE-476 (NULL Pointer Dereference)

## Which versions are affected by CVE-2026-28389?

It affects 1 product.


Products: Openssl Openssl.

## How do I fix CVE-2026-28389?

Apply the vendor's patch.

## Is CVE-2026-28389 being exploited?

There is no known exploitation of CVE-2026-28389 in the wild and no public exploit code.

## Other vulnerabilities in Openssl Openssl

- [CVE-2009-3245](https://insights.sbomify.com/CVE-2009-3245/): Null dereference in n/a (critical 10.0)
- [CVE-2006-3738](https://insights.sbomify.com/CVE-2006-3738/): Memory corruption in n/a (critical 10.0)
- [CVE-2026-63073](https://insights.sbomify.com/CVE-2026-63073/): Untrusted Sender DN Used as Format String in CMP Response Validation (critical 9.8)
- [CVE-2016-6309](https://insights.sbomify.com/CVE-2016-6309/): Use after free in n/a (critical 9.8)
- [CVE-2016-0799](https://insights.sbomify.com/CVE-2016-0799/): Integer overflow in n/a (critical 9.8)

## Fix prompt for AI coding agents

```text
Check this codebase for CVE-2026-28389 and fix it if it is affected.

What it is: CVE-2026-28389 is a high-severity vulnerability in Openssl Openssl, published on 7 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Exploitation: There is no known exploitation of CVE-2026-28389 in the wild and no public exploit code.

Affected product: Openssl Openssl. No package-level version data is available, so check the vendor advisory linked from the reference page.

Task:
1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.
2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.
3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.
4. Run the tests and summarise what changed and why.
5. If nothing in the project is affected, say so and change nothing.

Reference: https://insights.sbomify.com/CVE-2026-28389/ (Markdown: https://insights.sbomify.com/CVE-2026-28389/index.md)
```

## Sources

- CVE record: https://www.cve.org/CVERecord?id=CVE-2026-28389
- NVD: https://nvd.nist.gov/vuln/detail/CVE-2026-28389
- OSV: https://osv.dev/vulnerability/CVE-2026-28389

---
From sbomify Insights: https://insights.sbomify.com/CVE-2026-28389/
Summaries are generated and may contain mistakes; the official description above is the record.
