CVE-2026-40890
Published: 21 April 2026
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 15.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).
Threat & Defense at a Glance
Threat & Defense Details
Mitigating Controls (NIST 800-53 r5)AI
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.
Requires validation of Markdown input to reject malformed content with unclosed '<' characters before processing by SmartypantsRenderer.
Ensures graceful handling of parsing errors to prevent application crashes or panics from malformed Markdown input.
MITRE ATT&CK Enterprise TechniquesAI
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).
NVD Description
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.
Deeper analysisAI
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.
Details
- CWE(s)