GitHub Advisoryadvisory · RubyGems
GHSA-fmx4-26r3-wxpf Integer overflow in cmark-gfm table parsing extension leads to heap memory corruption
HIGH
Official page ↗
- Aliases
- CVE-2024-22051
- Ecosystem
- RubyGems
- Packages
- commonmarker
- Severity
- High
- CVSS vector
- CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-190
- Reviewed
- 2022-03-03
Affected packages
• RubyGems commonmarker: < 0.23.4 → fixed in 0.23.4
Description
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
• https://github.com/github/cmark-gfm/security/advisories/GHSA-mc3g-88wq-6f4x
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
Related
Alias · CVE (1)
- CVE-2024-22051 CommonMarker versions prior to 0.23.4 are at risk of an integer overflow vulnerability. vulnerability
Weakness · CWE (1)
- CWE-190 Integer Overflow or Wraparound weakness
References
- https://github.com/github/cmark-gfm/security/advisories/GHSA-mc3g-88wq-6f4x web
- https://github.com/gjtorikian/commonmarker/security/advisories/GHSA-fmx4-26r3-wxpf web
- https://nvd.nist.gov/vuln/detail/CVE-2024-22051 advisory
- https://github.com/gjtorikian/commonmarker/commit/ab4504fd17460627a6ab255bc3c63e8e5fc6aed3 web
- https://github.com/gjtorikian/commonmarker package
- https://github.com/rubysec/ruby-advisory-db/blob/master/gems/commonmarker/CVE-2024-22051.yml web