ZeroHour

CVE-2026-86547

PoC niche

Null Pointer Dereference in mrubyc VM Enables DoS via Crafted Bytecode

CVSS 4.0
6.9 medium
EPSS
<1%p3
Published
()
Modified
AI analysis

mrubyc, a lightweight Ruby VM designed for embedding in microcontroller and IoT firmware, contains a null pointer dereference (CWE-476) in the op_enter() handler of src/vm.c in all versions through 4.0.0. The flaw is triggered when the VM processes a crafted .mrb bytecode file containing an OP_ENTER instruction placed at the top level, causing a NULL dereference during execution. An attacker who can supply such bytecode to an embedding application gains denial of service, since the process crashes; the CVSS 4.0 score of 6.9 (local attack vector, high availability impact) reflects an availability-only issue with no confidentiality or integrity loss. Only applications that execute untrusted or attacker-supplied bytecode in mrubyc are realistically affected, while firmware running solely its own pre-compiled bytecode is not exposed. No in-the-wild exploitation is known and the issue is absent from CISA KEV, but a public proof-of-concept is available on GitHub.

What to do: No fixed version is confirmed in the available data, so monitor the mrubyc project for a patched release and update the embedded VM as soon as one is published. Until then, do not feed untrusted or third-party .mrb bytecode files into applications built on mrubyc 4.0.0 or earlier, and audit integrations for any path where user-supplied data can reach bytecode execution. Where untrusted bytecode must be processed, isolate the VM in a separate sandboxed process so a crash cannot take down the host application.

Affected
mrubyc project mrubycall versions through and including 4.0.0
Estimated exposure
nichelikely no more than a few thousand embedded deployments (no public usage telemetry) — mrubyc is a small open-source Ruby VM for microcontrollers with a limited community footprint and no published install or internet-exposure counts, and the flaw only matters for embedders that load untrusted .mrb bytecode; the exact…

Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.

Description

mrubyc through 4.0.0 contains a null pointer dereference vulnerability in the op_enter() handler in src/vm.c when processing untrusted bytecode. Attackers can craft malicious .mrb bytecode files with OP_ENTER instructions at the top level to crash the embedding application and cause denial of service.

Weakness
CWE-476
Vector
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

In the news

No ingested article mentions this CVE yet.