{"id":"RUSTSEC-2026-0123","aliases":[],"status":"published","title":"Out-of-bounds read in `bytes_helper` public safe functions","description":"The `bytes_helper` module contains multiple public functions\n(`into_arr4()`, `into_arr2()`, `u8_from_le_bytes()`) that use\n`slice.get_unchecked(pos..pos + N)` without verifying that\n`pos + N \u003c= slice.len()`. These are public safe API functions, allowing any\ncaller to trigger undefined behavior by passing invalid positions.\n\nFor example, calling `into_arr4(\u0026data, 10)` where `data` is a 3-byte slice\ncauses an out-of-bounds access since position 10 exceeds the slice length.","facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"published":"2026-05-02T12:00:00Z","modified":"2026-05-12T17:15:10Z","fixes":[{"ecosystem":"crates.io","package":"rustdx","fixed_in":["0.4.4"],"sources":["osv"]}],"affected":[{"source":"osv","ecosystem":"crates.io","package":"rustdx","ranges":[{"type":"SEMVER","events":[{"introduced":"0.0.0-0"},{"fixed":"0.4.4"}]}]}],"references":[{"url":"https://crates.io/crates/rustdx","tags":["package"]},{"url":"https://rustsec.org/advisories/RUSTSEC-2026-0123.html","tags":["advisory"]},{"url":"https://github.com/zjp-CN/rustdx/issues/38","tags":["report"]}],"sources":{"osv":[{"id":"RUSTSEC-2026-0123","title":"Out-of-bounds read in `bytes_helper` public safe functions","description":"The `bytes_helper` module contains multiple public functions\n(`into_arr4()`, `into_arr2()`, `u8_from_le_bytes()`) that use\n`slice.get_unchecked(pos..pos + N)` without verifying that\n`pos + N \u003c= slice.len()`. These are public safe API functions, allowing any\ncaller to trigger undefined behavior by passing invalid positions.\n\nFor example, calling `into_arr4(\u0026data, 10)` where `data` is a 3-byte slice\ncauses an out-of-bounds access since position 10 exceeds the slice length.","status":"published","published":"2026-05-02T12:00:00Z","modified":"2026-05-12T17:15:10.310502Z","updated_at":"2026-11-02T15:53:40.430679Z"}]}}
