CVE-2026-38973: Out-of-Bounds Read in mrubyc Method Lookup
mrubyc, a lightweight Ruby virtual machine implementation, contains a flaw that allows the software to read memory beyond allocated boundaries when looking up missing methods. An attacker with local access could trigger this vulnerability through user interaction, potentially exposing sensitive data in memory or causing the application to crash. The vulnerability affects mrubyc through version 3.4.1.
Source data · NVD / CISA · public domain
- CVSS
- 3.1 · 4.4 MEDIUM · CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:L/I:N/A:L
- Weaknesses (CWE)
- CWE-125
- Affected products
- 0 configuration(s)
- Published / Modified
- 2026-07-06 / 2026-07-09
NVD description (verbatim)
mrubyc through release3.4.1 was found to contain an out-of-bounds read in builtin missing-method lookup inside mrbc_find_method().
3 reference(s) · View on NVD →
SEC.co analysis · AI-assisted, reviewed against source
Technical summary
The vulnerability is an out-of-bounds read in the mrbc_find_method() function that occurs during builtin missing-method lookup. When mrubyc attempts to resolve method calls that don't exist in the expected location, insufficient bounds checking allows the read operation to access memory outside the intended buffer. This is classified as a CWE-125 (Out-of-bounds Read) issue. The attack vector is local, requires no special privileges, and needs user interaction to trigger. The CVSS 3.1 score of 4.4 reflects low integrity impact potential—the vulnerability compromises confidentiality and availability without enabling code execution.
Business impact
Organizations using mrubyc in embedded systems or constrained environments face dual risks: information disclosure through memory leaks and denial of service via application crashes. For products embedding mrubyc in user-facing features, this could lead to unexpected failures or data exposure if the application processes sensitive values. The local-access requirement limits attack surface to scenarios where an attacker has shell or application-level access, but the user-interaction requirement means successful exploitation depends on user behavior rather than automatic triggering.
Affected systems
mrubyc releases through version 3.4.1 are affected. No explicit vendor or product list was provided in the advisory, suggesting this impacts direct consumers of the mrubyc project. Organizations should verify whether they ship mrubyc directly or depend on it as a transitive dependency in their software supply chain.
Exploitability
Exploitation requires local access and user interaction, making this a lower-risk vulnerability in practice. An attacker cannot trigger the flaw remotely or without privileged operation. The out-of-bounds read itself does not grant code execution; impact is limited to reading adjacent memory and potential application instability. No public exploit code or active exploitation has been documented at the time of this assessment.
Remediation
Upgrade mrubyc to a patched version released after 3.4.1. Consult the official mrubyc repository and release notes to identify the minimum version containing the bounds-checking fix. If immediate patching is not feasible, limit local access to the mrubyc runtime and isolate it from processing untrusted or user-supplied Ruby code.
Patch guidance
Check the mrubyc GitHub repository for releases published after July 9, 2026 (the modification date of this advisory) that address the mrbc_find_method() bounds issue. Apply the earliest patched release available to your environment. Verify the patch in release notes and commit logs before deployment. If you use mrubyc as a dependency, ensure your package manager or build tool fetches the updated version.
Detection guidance
Monitor application logs and system logs for crashes or unexpected exits in mrubyc processes, which may indicate out-of-bounds read attempts. If you have access to mrubyc source inspection, audit the mrbc_find_method() function for bounds-checking improvements in your version compared to the upstream repository. Runtime memory analysis tools may flag the out-of-bounds read if the vulnerability is triggered during testing, though detection in production is challenging without instrumentation.
Why prioritize this
This vulnerability merits moderate attention but not emergency patching. The CVSS 4.4 score and requirement for local access plus user interaction significantly limit real-world risk. However, any organization shipping mrubyc should plan a normal maintenance cycle upgrade within the next monthly patch window. Prioritize systems where mrubyc processes untrusted Ruby code or where memory exposure could affect confidential data.
Risk score, explained
The CVSS 3.1 score of 4.4 (MEDIUM) reflects the following factors: local attack vector eliminates remote exploitation; low privilege requirement; user interaction needed to trigger; confidentiality and availability impact but no integrity or code-execution capability. The score appropriately captures that this is a stability and information-leak issue rather than a critical system compromise vector.
Frequently asked questions
Can this vulnerability be exploited remotely?
No. The attack vector is explicitly local, meaning the attacker must have shell-level or application-level access to the system running mrubyc. Remote exploitation is not possible.
Will updating mrubyc break my application?
Patch releases for security issues are designed to be backward-compatible with the same minor version. Test the patched version in a non-production environment first, but widespread breakage is unlikely. The fix addresses bounds checking, not public API changes.
How do I know if I use mrubyc?
Check your application's dependencies (Gemfile, package.json, build configuration, etc.) for mrubyc or any embedded Ruby VM. Review your vendor libraries and third-party integrations. If your product is marketed as supporting embedded Ruby scripting on constrained devices, mrubyc is a likely candidate.
What data could be exposed by this out-of-bounds read?
The vulnerability could leak whatever data is adjacent to the method lookup buffer in memory—potentially Ruby object pointers, local variables, or configuration values. The exact exposure depends on memory layout and what code executes before the read. This is why confidentiality impact is marked as low but present.
This analysis is based on the CVE record and public information available as of July 2026. No explicit vendor advisory or patched version numbers were provided; consult the official mrubyc project repository for exact remediation steps and patch availability. This vulnerability has not been added to CISA's Known Exploited Vulnerabilities (KEV) catalog and no active public exploitation has been reported at time of writing. Security decisions should account for your specific deployment and threat model. SEC.co provides this information for educational and assessment purposes; verify all technical details against authoritative sources before operational decisions. Source: NVD (public-domain), retrieved 2026-08-15. Analysis generated by SEC.co (claude-haiku-4-5).
Weaknesses (CWE)
Related vulnerabilities
- CVE-2020-9711MEDIUMAdobe Acrobat Reader Out-of-Bounds Read Memory Disclosure
- CVE-2020-9713MEDIUMAdobe Acrobat Reader Memory Disclosure Vulnerability
- CVE-2025-15661MEDIUMlibssh2 Out-of-Bounds Heap Read in SFTP Symlink Handling
- CVE-2025-70101MEDIUMlwext4 1.0.0 Out-of-Bounds Read Denial of Service
- CVE-2026-0127MEDIUMAndroid Out-of-Bounds Read in Communication Processor – Impact & Patch Guidance
- CVE-2026-0128MEDIUMAndroid RTCP Out-of-Bounds Read Information Disclosure
- CVE-2026-0136MEDIUMAndroid Modem Out-of-Bounds Read Denial of Service
- CVE-2026-0140MEDIUMAndroid RTP Integer Overflow Information Disclosure Vulnerability