FuelLabs / FuelLabs/fuel-core

RUSTSEC-2025-0137: Unsoundness of safe `reciprocal_mg10`

Open
#3,170 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
56.8k
Forks
2.9k
Avg merge
2d 9h
Merged PRs (30d)
5

Description

> Unsoundness of safe `reciprocal_mg10`

| Details | |
| ------------------- | ---------------------------------------------- |
| Package | `ruint` |
| Version | `1.17.0` |
| URL | [https://github.com/recmo/uint/issues/550](https://github.com/recmo/uint/issues/550) |
| Date | 2025-12-22 |

The function `reciprocal_mg10` is marked as safe but can trigger undefined behavior (out-of-bounds access) because it relies on `debug_assert!` for safety checks instead of `assert!`.

When compiled in release mode, the `debug_assert!` is optimized out, potentially allowing invalid inputs to cause memory corruption.

See [advisory page](https://rustsec.org/advisories/RUSTSEC-2025-0137.html) for additional details.

Contributor guide

Open the contributing guide

Research direction

Start with the linked advisory page and the upstream ruint issue 550 to understand the reported unsoundness. The payload names no fuel-core files, dependency entry, or tests, so inspect how ruint 1.17.0 is incorporated before determining the appropriate remediation and validation.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.