Skip to main content

libriscv CVE-2026-62958

| EUVDEUVD-2026-114467 HIGH
Improper Input Validation (CWE-20)
2026-10-30 GitHub_M
7.9
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Submit crafted ELF to rvlinux
  2. Exploit
    Manipulate .text/.symtab sh_offset
  3. Execution
    Bypass PT_LOAD program-header bounds check
  4. Impact
    Out-of-bounds host read crashes emulator (SIGSEGV)

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation, allowlisting
Exploitation Conditions

The attacker must be able to supply a crafted ELF binary that libriscv/rvlinux will load - i.e. a deployment that parses attacker-controlled binaries, which is libriscv's intended sandbox use case. The specific trigger is an ELF whose .text or .symtab section header has a manipulated sh_offset (and/or sh_size), e.g. set to a large value such as 0x7FFFFFFFF0000000 in the PoC; these section-header fields bypass the PT_LOAD program-header bounds checks that binary_loader performs, because serialize_execute_segment and lookup() index m_binary with sh_offset without range-checking it. Affected versions are libriscv up to and including 1.17. Limiting factors: the attack is local (AV:L) in that it requires getting a binary into the emulator, so deployments that only run trusted locally-built binaries are not realistically exposed; the demonstrated outcome is a host crash, while host memory disclosure additionally requires favorable heap layout or integer overflow (grooming) that the advisory does not demonstrate.

Impact

This is a genuine but bounded risk whose priority depends entirely on deployment model. The source-provided CVSS 3.1 vector (AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:H, 7.9 HIGH) correctly captures the shape: local attack vector (the attacker must feed a binary to the emulator), low complexity, a scope change (guest/ELF input compromising the host emulator process), confirmed high availability impact (reliable host crash) and a low, only-theoretical confidentiality impact. The vuln.today decision label is this_week, not act_now/emergency, which is consistent with the absence of a KEV listing and the absence of any EPSS score in the input. No EPSS value was provided, so exploitation-probability modeling cannot be compared here; no SSVC exploitation/automatable/technical-impact breakdown was provided either, only the aggregate priority label. A public proof-of-concept (poc.py) is published in the GHSA advisory and is demonstrated to crash rvlinux with SIGSEGV, so working trigger code for the denial-of-service case is in the open. The key signal to weigh carefully: the confidentiality dimension (C:L, i.e. host memory disclosure) is described by the advisory as possible 'through grooming' and is explicitly NOT demonstrated - only the host SIGSEGV is reproduced. Real priority is therefore high specifically for anyone running libriscv <=1.17 as a multi-tenant or untrusted-binary sandbox (exactly its intended use), and low for deployments that only ever load trusted, locally-produced binaries, since AV:L means an attacker needs a path to submit a crafted ELF.

Exploit ScenarioDerived

An attacker who can submit an ELF binary to a service built on libriscv (a sandbox-as-a-service that runs user-supplied RISC-V programs) uploads a binary whose .text and/or .symtab section headers carry a malicious sh_offset. When the emulator parses the binary this offset is added directly to the host buffer pointer and dereferenced out of bounds, instantly crashing the host process (demonstrated SIGSEGV via the published poc.py). With a favorable heap layout or integer overflow the same flaw could instead map host heap memory into the guest, but this disclosure path is described as possible rather than demonstrated.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 30, 2026

Out-of-bounds reads in libriscv's ELF parser, affecting versions through 1.17, let a crafted RISC-V ELF crash the host emulator (rvlinux) and, under favourable heap layout, may map out-of-buffer host heap memory into the guest. The flaw sits in section-header handling: sh_offset/sh_size for .text and .symtab are trusted and used to index the binary buffer without a range check, bypassing the PT_LOAD validation performed during loading. The GitHub advisory publishes a PoC script that overwrites the .text/.symtab offsets with 0x7FFFFFFFF0000000 and reproduces a host SIGSEGV; host memory disclosure is described as possible through grooming or integer overflow rather than demonstrated. Assessed CVSS is 7.9 (AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:H) - no privileges required on the CVSS vector, but the attack requires getting a binary into the emulator, and there is no KEV listing or confirmed in-the-wild exploitation.

RemediationAI

Vendor-released patch: upgrade libriscv to v1.18 (https://github.com/libriscv/libriscv/releases/tag/v1.18), which contains commit 61ef9ca82c8876dd80b33780893ba512af780e93 adding the missing sh_offset/sh_size bounds and integer-overflow checks against m_binary.size() in serialize_execute_segment (and the equivalent section-table path in lookup()), plus commit 7bd1c189f9f9d54368cde096b07b194ad680f9fa and a regression test. Rebuild any emulator or service that embeds the library against the fixed tag; the advisory lists no separate workaround. Because the trigger is simply loading one crafted ELF, the practical exposure boundary is the deployment model: instances that only execute trusted, locally built binaries are not realistically exposed, whereas sandboxes accepting user-supplied RISC-V binaries remain triggerable until patched, so keeping untrusted binaries out of the loader is the only interim containment and that removes the sandbox's intended function. Note the demonstrated effect is a host crash; guest-visible host memory disclosure additionally depends on grooming or integer overflow and was not demonstrated.

Affected VersionsENISA

libriscv < 1.18

Affected Packages

euvd libriscv fix: 1.18

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

libriscv is a RISC-V sandbox/emulator that loads ELF binaries into guest memory. In Memory<W>::binary_loader the PT_LOAD program headers are bounds-checked, but Memory<W>::serialize_execute_segment locates the .text section through the section header table and computes data = m_binary.data() + texthdr->sh_offset without verifying that sh_offset (and sh_size) fall inside m_binary.size(); Memory<W>::lookup() has the same section-table weakness, so a malformed .symtab offset reaches it too. Since the attacker controls the section-header fields, the resulting pointer can land in unmapped host memory (immediate SIGSEGV, the demonstrated outcome) or, with integer overflow or a favourable heap layout, inside valid host heap before or after the binary buffer, which create_execute_segment() then maps into the guest. The root cause class is CWE-20 improper input validation (the advisory also tags CWE-125 out-of-bounds read): untrusted file-supplied offsets are used as buffer indices. The 1.18 fix (commit 61ef9ca) adds overflow and in-binary range checks (sh_offset + sh_size >= sh_offset and <= m_binary.size()) and removes the adjacent __lcxx_override merging workaround; commit 7bd1c18 is a companion change and the release is tagged v1.18. Unit coverage was added in tests/unit/verify_elf.cpp with an out-of-range .text offset case.

Know when Libriscv gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 7.9 HIGH
AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:H
vuln.today AI 7.9 HIGH

Attacker must feed a binary to the emulator (AV:L) but needs no authentication to craft it (PR:N); guest-controlled ELF compromises the host process (S:C); confirmed reliable crash (A:H) with only theoretical, undemonstrated disclosure (C:L, I:N).

3.1 AV:L/AC:L/PR:N/UI:N/S:C/C:L/I:N/A:H
4.0 AV:L/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:H/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Local
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Changed
Confidentiality
Low
Integrity
None
Availability
High

Lifecycle Timeline

2
Patch available
Oct 30, 2026 - 22:03 EUVD
CVE Published
Oct 30, 2026 - 20:44 cve.org
HIGH 7.9

DescriptionCVE.org

libriscv is a RISC-V sandbox and emulator. Prior to 1.18, a crafted ELF binary can cause out-of-bounds reads in the host emulator. Memory<W>::binary_loader checks PT_LOAD program-header bounds, but Memory<W>::serialize_execute_segment trusts section-header sh_offset and sh_size when locating .text without verifying the file range against m_binary.size(); Memory<W>::lookup() has a similar section-table problem. Malformed .text or .symtab offsets can therefore bypass the program-header checks and point outside the binary buffer, crashing rvlinux. With suitable memory layout or integer overflow, out-of-buffer host heap memory may instead be mapped into the guest by create_execute_segment(), potentially exposing host memory. The reported reproducer demonstrates a host SIGSEGV, while memory disclosure through grooming is described as possible rather than demonstrated. This issue is fixed in version 1.18.

Technical POC Analysis

CWE-20 (Improper Input Validation), realized as CWE-125 (Out-of-bounds Read), in libriscv's ELF loader.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Executive ViewAI

Why It Matters

A high-severity vulnerability in the libriscv emulator (versions through 1.17) allows a maliciously crafted RISC-V binary to crash the host system during emulation and potentially leak host memory into the guest. Any team using libriscv to run untrusted code is affected, and leadership should prioritize updating or isolating the emulator to prevent availability disruptions and data exposure.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: run libriscv in a sandboxed environment with limited privileges and memory, process only trusted RISC-V binaries, enforce strict input validation on ELF files, and monitor for anomalous crashes or memory errors.

Threat Intelligence Overview

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Low
niche open-source RISC-V emulator library, limited production footprint
Data Quality
6 sources
Confidence: High

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Small
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

40
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +40
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy