CVE-2022-24724 json
Integer overflow in table parsing extension leads to heap memory corruption
published 2022-03-03 4 y ago modified 2026-06-17 4 mo ago also CVE-2022-39209 , EUVD-2022-29578 , RSEC-2023-7
- cvss
- 8.8
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 4.5%
- EPSS 4.5% chance of exploitation in 30 days, percentile 91%
- public exploits
- 0
- none known
Summary
cmark-gfm is GitHub's extended version of the C reference implementation of CommonMark. Prior to versions 0.29.0.gfm.3 and 0.28.3.gfm.21, an integer overflow in cmark-gfm's table row parsing `table.c:row_from_string` may lead to heap memory corruption when parsing tables who's marker rows contain more than UINT16_MAX columns. The impact of this heap corruption ranges from Information Leak to Arbitrary Code Execution depending on how and where `cmark-gfm` is used. If `cmark-gfm` is used for rendering remote user controlled markdown, this vulnerability may lead to Remote Code Execution (RCE) in applications employing affected versions of the `cmark-gfm` library. This vulnerability has been patched in the following cmark-gfm versions 0.29.0.gfm.3 and 0.28.3.gfm.21. A workaround is available. The vulnerability exists in the table markdown extensions of cmark-gfm. Disabling the table extension will prevent this vulnerability from being triggered.
Patch / fix
- cran commonmark 1.8
- github cmark-gfm 0.28.3.gfm.21, 0.29.0.gfm.3
- cmark-gfm Debian 14, Debian 13, Debian 12 0.29.0.gfm.3-3
- ghostwriter Debian 14, Debian 13, Debian 12 2.1.6+ds-1
- python-cmarkgfm Debian 14, Debian 13, Debian 12 0.7.0-1
- r-cran-commonmark Debian 14, Debian 13, Debian 12 1.8.0-1
- ruby-commonmarker Debian 14, Debian 13, Debian 12 0.23.4-1
debian advisories DEBIAN-CVE-2022-24724
- pandoc RHEL 8 2.0.6-6.el8_6
- pandoc-common RHEL 8 2.0.6-6.el8_6
red hat advisories RHSA-2022:5597
- pandoc AlmaLinux 8 2.0.6-6.el8_6
- pandoc-common AlmaLinux 8 2.0.6-6.el8_6
almalinux advisories ALSA-2022:5597
- pandoc Rocky Linux 8 2.0.6-6.el8_6
rocky linux advisories RLSA-2022:5597
- github.com/r-lib/commonmark#18 pull request
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2022-24724 updated cvss 8.8
cmark-gfm: possible RCE due to integer overflow
-
Red Hat Enterprise Linux CRB (v. 8) pandoc 2.0.6-6.el8_6, pandoc-common 2.0.6-6.el8_6fixed: vendor fix RHSA-2022:5597
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- no
- Technical impact
- total
- Assessed
- 18 mo ago
Exploit prediction
4.51% chance of exploitation in the next 30 days, higher than 91% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- packetstormsecurity.com http://packetstormsecurity.com/files/166599/cmark-gfm-Integer-overflow.html referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 8.8 | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 2.0 | 7.5 | AV:N/AC:L/Au:N/C:P/I:P/A:P |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| cran | commonmark | >=0.2, <1.8 |
1.8 |
Affected products
- github cmark-gfm
Classification
- Weakness
-
- CWE-190 Integer Overflow or Wraparound
References
-
github.com
/r-lib/commonmark/pull/18
web
-
packetstormsecurity.com
/files/166599/cmark-gfm-Integer-overflow.html
exploit, third-party-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/Z55K6VNVKO2G5SNKRCQ2KDG5SKTX5PVV/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/TJBFIJEHJZEEDG6MO4MQHZYKUXELH77O/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/F7V3HAM5H6YFJG2QFEXACZR3XVWFTXTC/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/5CYUU662VO6CCXQKVZVOHXX3RGIF2DLQ/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/RSKUOJ2VAYGTJXPDE2RRPMNLVVMKCI77/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/KH4UQA6VWVZU5EW3HNEAB7D7BTCNJSJ2/
vendor-advisory
-
github.com
/github/cmark-gfm/security/advisories/GHSA-mc3g-88wq-6f4x
third-party-advisory
-
security-tracker.debian.org
/tracker/CVE-2022-39209
web
-
security-tracker.debian.org
/tracker/CVE-2022-24724
web
Sources
- CVE List CVE-2022-24724
- NVD CVE-2022-24724
- OSV RSEC-2023-7
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.