Heap-buffer-overflow in mrb_memsearch in mruby
Summary
OSV-2024-104: Heap-buffer-overflow in mrb_memsearch. Affects mruby versions >= abcad36bae43f2c7cb8c2b1753dc94ab4cf25366, < 9c840a68e212fb54136b67711daff331435c1ce7. Fixed in 9c840a68e212fb54136b67711daff331435c1ce7. How to fix ↓
Check if this vulnerability affects your application
Upload a manifest or SBOM and we'll show whether you're affected, plus every other risky package in the same scan.
No signup required · Results in about 60 seconds
Background
mruby is an open-source lightweight implementation of the Ruby programming language. It is designed to be embedded in other software and provides a minimalistic and efficient runtime environment. The mrb_memsearch function in mruby is responsible for searching memory buffers. However, a vulnerability has been discovered in this function that can lead to a heap-buffer-overflow when reading data. This vulnerability has been reported by OSS-Fuzz and affects the mruby package.
Vulnerability Detail
The vulnerability in mrb_memsearch can be triggered by performing a specific search operation on a memory buffer. This can result in a heap-buffer-overflow, where more data is read from the buffer than its allocated size allows. The crash state indicates that the issue occurs during the mrb_memsearch function, specifically in the str_convert_range and mrb_str_aref functions. This vulnerability can potentially be exploited by an attacker to execute arbitrary code or cause a denial-of-service condition. The severity of this vulnerability is considered medium.
How To Fix
Minimum fixed version
9c840a68e212fb54136b67711daff331435c1ce7
This is the first release that contains the fix.
Tip — Not sure which version your app runs? Vulert can match this fix to it. Scan free →
Workaround
At the moment, no specific workaround has been provided for this vulnerability. It is advisable to follow the recommended fix and update the mruby package to a patched version.
Conclusion
In conclusion, a heap-buffer-overflow vulnerability has been discovered in the mrb_memsearch function of the mruby package. This vulnerability can potentially be exploited to execute arbitrary code or cause a denial-of-service condition. It is crucial to update the mruby package to a version that includes the necessary patch to mitigate this vulnerability. For further support on vulnerability remediation, please contact DevNack.com.
See every vulnerability recorded for mruby →
FAQ
mruby is a lightweight implementation of the Ruby programming language designed for embedding in other software.
A heap-buffer-overflow occurs when more data is read from a memory buffer than its allocated size allows, potentially leading to memory corruption and security vulnerabilities.
This vulnerability can potentially be exploited by an attacker to execute arbitrary code or cause a denial-of-service condition.
The severity of this vulnerability is considered medium.
At the moment, no specific workaround has been provided. It is recommended to update the mruby package to a patched version.
References
Related vulnerabilities
Recent vulnerabilities recorded for mruby.