Cyber Resilience

CVE-2026-40890

HighPublic PoC

Published: 21 April 2026

Published
21 April 2026
Modified
27 April 2026
KEV Added
Patch
CVSS Score v3.1 7.5 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
EPSS Score 0.0007 22.4th percentile
Risk Priority 15 60% EPSS · 20% KEV · 20% CVSS

Summary

CVE-2026-40890 is a high-severity Out-of-bounds Read (CWE-125) vulnerability in Gomarkdown Markdown. Its CVSS base score is 7.5 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Exploit Public-Facing Application (T1190); ranked at the 22.4th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog; a public proof-of-concept is referenced.

The strongest mitigations our analysis identified are NIST 800-53 SI-10 (Information Input Validation) and SI-2 (Flaw Remediation).

Deeper analysis

CVE-2026-40890 is a vulnerability in the `github.com/gomarkdown/markdown` Go library, which parses Markdown text and renders it as HTML. The issue arises when processing malformed input containing a "<" character that is not followed by a ">" character anywhere in the remaining text, specifically when using the SmartypantsRenderer. This triggers an out-of-bounds read or a panic, classified under CWE-125 (Out-of-bounds Read) with a CVSS v3.1 base score of 7.5 (AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H).

Attackers can exploit this vulnerability remotely over the network with low complexity, requiring no privileges or user interaction. Any unauthenticated attacker who can supply crafted Markdown input to an application using the vulnerable library and its SmartypantsRenderer can trigger the out-of-bounds read or panic, resulting in denial of service through application crashes.

The vulnerability is fixed in commit 759bbc3e32073c3bc4e25969c132fc520eda2778. The GitHub security advisory GHSA-77fj-vx54-gvh7 provides details on the issue and recommends updating to the patched version to mitigate the risk.

EU & UK References

Vulnerability details

The package `github.com/gomarkdown/markdown` is a Go library for parsing Markdown text and rendering as HTML. Processing a malformed input containing a < character that is not followed by a > character anywhere in the remaining text with a SmartypantsRenderer will…

more

lead to Out of Bounds read or a panic. This vulnerability is fixed with commit 759bbc3e32073c3bc4e25969c132fc520eda2778.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise TechniquesAI

T1190 Exploit Public-Facing Application Initial Access
Adversaries may attempt to exploit a weakness in an Internet-facing host or system to initially access a network.
T1499.004 Application or System Exploitation Impact
Adversaries may exploit software vulnerabilities that can cause an application or system to crash and deny availability to users.
Why these techniques?

Vulnerability enables remote unauthenticated exploitation of public-facing apps using the library for DoS via crafted input causing crash (out-of-bounds read/panic).

Confidence: HIGH · MITRE ATT&CK Enterprise v18.1

CVEs Like This One

CVE-2026-41604Shared CWE-125
CVE-2026-30997Shared CWE-125
CVE-2026-26008Shared CWE-125
CVE-2026-41475Shared CWE-125
CVE-2026-25898Shared CWE-125
CVE-2026-21888Shared CWE-125
CVE-2026-4750Shared CWE-125
CVE-2026-41503Shared CWE-125
CVE-2026-26264Shared CWE-125
CVE-2026-27831Shared CWE-125

Affected Assets

gomarkdown
markdown
≤ 2026-04-10

Mitigating Controls

Mitigating Controls (NIST 800-53 r5) AI

prevent

Directly mandates timely patching of the specific flaw in the gomarkdown library via the provided commit to eliminate the out-of-bounds read and panic.

prevent

Requires validation of Markdown input to reject malformed content with unclosed '<' characters before processing by SmartypantsRenderer.

prevent

Ensures graceful handling of parsing errors to prevent application crashes or panics from malformed Markdown input.

References