RISC Zero Signed Integer Division Vulnerability Allowing Multiple Outputs and Division by Zero Underconstrained Results

Vulnerability

A vulnerability exists in RISC Zero's risc0-zkvm versions 2.0.0 prior to 2.2.0, as well as in the risc0-circuit-rv32im and risc0-circuit-rv32im-sys packages, versions 2.0.0 prior to 3.0.0. The issue arises in signed integer division, where certain inputs can produce multiple outputs, only one of which is valid. Additionally, division by zero leads to underconstrained results. This vulnerability was identified using the Picus tool from Veridise.

Impact

The vulnerability allows for incorrect handling of signed integer division, potentially leading to erroneous computations in applications that rely on this functionality.

Remediation

Users are advised to upgrade to RISC Zero zkVM version 2.2.0 or later. For smart contract applications not using the official RISC Zero Verifier Router, contracts should be updated to send verification calls to the 2.2 version of the verifier.

Added: Aug 6, 2025, 12:25 AM
Updated: Aug 6, 2025, 12:25 AM

Vulnerability Rating

Custom Algorithm
spread
0.0
impact
0.6
exploitability
6.4
remediation
7.7
relevance
0.3
threat
0.0
urgency
2.9
incentive
1.7

Our algorithm analyzes dozens of metrics to generate these 8 key vulnerability categories, which are then combined to calculate the overall risk score.