CVE-2024-22051
CommonMarker Integer Overflow Vulnerability
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- High
- Availability
- High
Exploit likelihood
What each source reports
NVD Score used
9.8
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
- Record
CVE-2024-22051- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
CVE List
9.8
CommonMarker Integer Overflow Vulnerability
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
- Record
CVE-2024-22051- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
EUVDEUVD-2022-1416
9.8
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
- Record
EUVD-2022-1416- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
GitHub AdvisoriesGHSA-fmx4-26r3-wxpf
8.8
Integer overflow in cmark-gfm table parsing extension leads to heap memory corruption
Impact
CommonMarker uses cmark-gfm for rendering Github Flavored Markdown. An integer overflow in cmark-gfm's table row parsing 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.
If affected versions of CommonMarker are used for rendering remote user controlled markdown, this vulnerability may lead to Remote Code Execution (RCE).
Patches
This vulnerability has been patched in the following CommonMarker release:
- v0.23.4
Workarounds
The vulnerability exists in the table markdown extensions of cmark-gfm. Disabling any use of the table extension will prevent this vulnerability from being triggered.
References
Acknowledgements
We would like to thank Felix Wilhelm of Google's Project Zero for reporting this vulnerability
For more information
If you have any questions or comments about this advisory:
- Open an issue in CommonMarker
- Record
GHSA-fmx4-26r3-wxpf- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
OSV
9.8
CommonMarker Integer Overflow Vulnerability
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
- Record
CVE-2024-22051- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2024-22051
9.8
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
- Record
DEBIAN-CVE-2024-22051- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
OSVGHSA-fmx4-26r3-wxpf
8.8
Integer overflow in cmark-gfm table parsing extension leads to heap memory corruption
Impact
CommonMarker uses cmark-gfm for rendering Github Flavored Markdown. An integer overflow in cmark-gfm's table row parsing 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.
If affected versions of CommonMarker are used for rendering remote user controlled markdown, this vulnerability may lead to Remote Code Execution (RCE).
Patches
This vulnerability has been patched in the following CommonMarker release:
- v0.23.4
Workarounds
The vulnerability exists in the table markdown extensions of cmark-gfm. Disabling any use of the table extension will prevent this vulnerability from being triggered.
References
Acknowledgements
We would like to thank Felix Wilhelm of Google's Project Zero for reporting this vulnerability
For more information
If you have any questions or comments about this advisory:
- Open an issue in CommonMarker
- Record
GHSA-fmx4-26r3-wxpf- CVSS 3.1
- 8.8 High
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H - Weakness
- CWE-190
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2024-22051
9.8
CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. This vulnerability can result in possibly unauthenticated remote attackers to cause heap memory corruption, potentially leading to an information leak or remote code execution, via parsing tables with marker rows that contain more than UINT16_MAX columns.
- Record
UBUNTU-CVE-2024-22051- CVSS 3.1
- 9.8 Critical
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
commonmarkerRubyGems |
before 0.23.4 | 0.23.4 |
ruby-commonmarkerDebian:12 |
before 0.23.4-1 | 0.23.4-1 |
ruby-commonmarkerDebian:13 |
before 0.23.4-1 | 0.23.4-1 |
ruby-commonmarkerDebian:14 |
before 0.23.4-1 | 0.23.4-1 |
commonmarkerRubyGems |
before 0.23.4, plus listed versions 0.0.10.1.00.1.10.1.20.1.3 Show 45 moreShow less0.10.00.11.00.12.00.13.00.14.00.14.10.14.110.14.120.14.130.14.140.14.150.14.20.14.30.14.40.14.50.14.60.14.70.14.80.14.90.15.00.16.00.16.10.16.20.16.30.16.40.16.50.16.60.16.70.16.80.17.00.17.10.17.100.17.110.17.120.17.130.17.20.17.40.17.50.17.60.17.70.17.7.10.17.80.17.90.18.00.18.1 |
0.23.4 |
ruby-commonmarkerUbuntu:20.04:LTS |
All versions, plus listed versions 0.17.9-10.20.2-1build1 |
None known |
ruby-commonmarkerUbuntu:22.04:LTS |
All versions, plus listed versions 0.21.0-10.21.0-20.21.0-30.23.2-2 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2024-22051 is a critical vulnerability (CVSS 9.8) in Gjtorikian Commonmarker, published March 3, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.45%, the 73rd percentile. Fixed in commonmarker 0.23.4.
References
github.com/github/cmark-gfm/security/advisories/GHSA-mc3g-88wq-6f4x
github.com/gjtorikian/commonmarker/security/advisories/GHSA-fmx4-26r3-wxpf
github.com/gjtorikian/commonmarker/commit/ab4504fd17460627a6ab255bc3c63e8e5fc6aed3
github.com/advisories/GHSA-fmx4-26r3-wxpf
vulncheck.com/advisories/vc-advisory-GHSA-fmx4-26r3-wxpf
nvd.nist.gov/vuln/detail/CVE-2024-22051
Show 8 moreShow less
github.com/rubysec/ruby-advisory-db/blob/master/gems/commonmarker/CVE-2024-22051.yml
rubygems.org
github.com/CVEProject/cvelistV5/tree/main/cves/2024/22xxx/CVE-2024-22051.json
security-tracker.debian.org/tracker/CVE-2024-22051
github.com/gjtorikian/commonmarker
ubuntu.com/security/CVE-2024-22051
bugzilla.redhat.com/show_bug.cgi?id=2256887
cve.org/CVERecord?id=CVE-2024-22051
Left out here: 25 versions. The JSON record has them.