Bug 2210173 (CVE-2023-26485) - CVE-2023-26485 commonmarker: Quadratic complexity bug may lead to a denial of service
Summary: CVE-2023-26485 commonmarker: Quadratic complexity bug may lead to a denial of...
Keywords:
Status: NEW
Alias: CVE-2023-26485
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Nobody
QA Contact:
URL:
Whiteboard:
Depends On: 2210311 2210310 2210312 2210646 2210647
Blocks: 2210175
TreeView+ depends on / blocked
 
Reported: 2023-05-26 03:51 UTC by Avinash Hanwate
Modified: 2023-09-05 19:21 UTC (History)
5 users (show)

Fixed In Version: cmark-gfm 0.29.0.gfm.10
Doc Type: If docs needed, set a value
Doc Text:
A flaw was found in CommonMarker. A polynomial time complexity issue in cmark-gfm may lead to unbounded resource exhaustion and subsequent denial of service.
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)

Description Avinash Hanwate 2023-05-26 03:51:45 UTC
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)

https://github.com/github/cmark-gfm/security/advisories/GHSA-r8vr-c48j-fcc5
https://github.com/github/cmark-gfm/commit/07a66c9bc341f902878e37d7da8647d6ef150987

Comment 2 Patrick Del Bello 2023-05-26 14:49:06 UTC
Created ghc-cmark-gfm tracking bugs for this issue:

Affects: fedora-all [bug 2210310]


Created ghostwriter tracking bugs for this issue:

Affects: fedora-all [bug 2210311]


Note You need to log in before you can comment on or make changes to this bug.