cmark-gfm is GitHub's fork of cmark, a CommonMark parsing and rendering library and program in C. A polynomial time complexity issue in cmark-gfm may lead to unbounded resource exhaustion and subsequent denial of service. This CVE covers quadratic complexity issues when parsing text which leads with either large numbers of `_` characters. This issue has been addressed in version 0.29.0.gfm.10. Users are advised to upgrade. Users unable to upgrade should validate that their input comes from trusted sources. ### Impact A polynomial time complexity issue in cmark-gfm may lead to unbounded resource exhaustion and subsequent denial of service. ### Proof of concept ``` $ ~/cmark-gfm$ python3 -c 'pad = "_" * 100000; print(pad + "." + pad, end="")' | time ./build/src/cmark-gfm --to plaintext ``` Increasing the number 10000 in the above commands causes the running time to increase quadratically. ### Patches This vulnerability have been patched in 0.29.0.gfm.10. ### Note on cmark and cmark-gfm XXX: TBD [cmark-gfm](https://github.com/github/cmark-gfm) is a fork of [cmark](https://github.com/commonmark/cmark) that adds the GitHub Flavored Markdown extensions. The two codebases have diverged over time, but share a common core. These bugs affect both `cmark` and `cmark-gfm`. ### Credit We would like to thank @gravypod for reporting this vulnerability. ### References https://en.wikipedia.org/wiki/Time_complexity ### For more information If you have any questions or comments about this advisory: * Open an issue in [github/cmark-gfm](https://github.com/github/cmark-gfm)
Conclusion & alert: CVE-2023-26485 is rated Exploit Available (57.7/100): CVSS Medium severity, with medium exploitation likelihood (EPSS 1.03%). Core evidence: 1 public exploit reference(s) are indexed (Exploit-DB). Mandatory action: Public exploits are available—assess exposure, apply mitigations, and prioritize patching.
Risk is dynamic; we continuously reassess and refresh what is shown on this page as upstream context changes.
| EDB-ID | Source | Kind | Published | Link |
|---|---|---|---|---|
| — | nvd_ref | exploit_tag | Exploit-DB ↗ |
EPSS lead: Daily EPSS estimates relative likelihood of exploitation; percentile ranks this CVE among scored vulnerabilities (higher = more severe relative rank).
| # | Date | Old EPSS score | New EPSS score | Delta (New - Old) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 0.15% | 1.03% | +0.88% |
| 2 | 2026-04-28 | 0.37% | 0.15% | -0.21% |
| 3 | 2026-04-12 | — | 0.37% | — |
Full EPSS history (15 records total)
CVSS metrics for this CVE.
| Base score | Version | Severity | Vector | Exploitability | Impact | Score source |
|---|---|---|---|---|---|---|
| 5.3 | 3.1 | MEDIUM |
|
3.9 | 1.4 | [email protected] |
| 7.5 | 3.1 | HIGH |
|
3.9 | 3.6 | [email protected] |
| vendor | priority | summary | link |
|---|---|---|---|
debian
|
not yet assigned | CVE-2023-26485 not yet assigned priority: Debian including 4 source packages (cmark-gfm, python-cmarkgfm, r-cran-commonmark, ruby-commonmarker), 20 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 12, open 8. | https://security-tracker.debian.org/tracker/CVE-2023-26485 |
redhat
|
medium | — | https://access.redhat.com/security/cve/CVE-2023-26485 |
ubuntu
|
medium | CVE-2023-26485 medium priority: Ubuntu including 2 source packages (cmark, cmark-gfm), 26 status rows across 13 suites (bionic, focal, jammy, kinetic, lunar, mantic, noble, oracular, plucky, questing, trusty, upstream, xenial): ignored 12, released 6, needs-triage 5, not-affected 2, DNE 1. | https://ubuntu.com/security/CVE-2023-26485 |
| URL | Tags |
|---|---|
| https://github.com/github/cmark-gfm/commit/07a66c9bc341f902878e37d7da8647d6ef150987 | Patch |
| https://github.com/github/cmark-gfm/security/advisories/GHSA-r8vr-c48j-fcc5 | Exploit Vendor Advisory |