CVE-2024-27280
Published: 14 May 2024
Summary
CVE-2024-27280 is a critical-severity Classic Buffer Overflow (CWE-120) vulnerability in Hackerone (inferred from references). Its CVSS base score is 9.8 (Critical).
Operationally, ranked in the top 7.4% of CVEs by exploit likelihood; it is not currently listed in the CISA KEV catalog.
Deeper analysis
A buffer-overread vulnerability exists in the StringIO component (version 3.0.1) shipped with Ruby 3.0.x through 3.0.6 and 3.1.x through 3.1.4. The flaw occurs in the ungetbyte and ungetc methods, which can read past the end of a string buffer; a subsequent call to StringIO.gets may then return uninitialized memory contents. The issue is tracked as CWE-120 and carries a CVSS 3.1 score of 9.8.
An unauthenticated remote attacker can trigger the condition by supplying crafted input that exercises the affected StringIO methods in any Ruby application using the vulnerable versions. Successful exploitation can disclose sensitive memory values and, given the impact metrics, may also permit broader confidentiality, integrity, or availability compromise depending on how the returned data is processed.
The official Ruby advisory and associated patches recommend upgrading to StringIO 3.0.1.1 for Ruby 3.0 users or StringIO 3.0.1.2 for Ruby 3.1 users; Ruby 3.0.3 contains the primary fix. The EPSS score has remained flat at 0.0883 with no material increase observed after disclosure.
EU & UK References
- 🇪🇺 ENISA EUVD: EUVD-2024-1008
Vulnerability details
A buffer-overread issue was discovered in StringIO 3.0.1, as distributed in Ruby 3.0.x through 3.0.6 and 3.1.x through 3.1.4. The ungetbyte and ungetc methods on a StringIO can read past the end of a string, and a subsequent call to…
more
StringIO.gets may return the memory value. 3.0.3 is the main fixed version; however, for Ruby 3.0 users, a fixed version is stringio 3.0.1.1, and for Ruby 3.1 users, a fixed version is stringio 3.0.1.2.
- CWE(s)
Related Threats
No named actor attribution yet. ATT&CK technique mapping in progress for this CVE.
Affected Assets
Mitigating Controls
Likely Mitigating Controls AI
Per-CVE control mapping for this CVE has not run yet; the list below is derived from the weakness types (CWEs) cited in the NVD entry.
Platform-independent managed code eliminates the need for unchecked native buffer copies that are the root cause of classic buffer overflows.