{"id":"GHSA-mcmr-49x3-4jqm","aliases":[],"status":"published","title":"ckb type_id script resume may randomly fail","description":"### Impact\nhttps://github.com/nervosnetwork/ckb/blob/v0.101.2/script/src/verify.rs#L871-L879\nTypeIdSystemScript resume handle is not correct when max_cycles is not enough, `ScriptError::ExceededMaximumCycles` will be raised directly ranther than suspend as expect, and also because script_group execution order is random, so this will happen randomly.","facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"published":"2022-11-02T18:15:07Z","modified":"2023-01-08T05:03:22Z","fixes":[{"ecosystem":"crates.io","package":"ckb","fixed_in":["0.102.0"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"crates.io","package":"ckb","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0.100.0"},{"fixed":"0.102.0"}]}]},{"source":"osv","ecosystem":"crates.io","package":"ckb","ranges":[{"type":"SEMVER","events":[{"introduced":"0.100.0"},{"fixed":"0.102.0"}]}]}],"references":[{"url":"https://github.com/nervosnetwork/ckb/security/advisories/GHSA-mcmr-49x3-4jqm","tags":["web"]},{"url":"https://github.com/nervosnetwork/ckb/blob/v0.101.2/script/src/verify.rs#L871-L879","tags":["web"]},{"url":"https://github.com/advisories/GHSA-mcmr-49x3-4jqm"},{"url":"https://github.com/nervosnetwork/ckb","tags":["package"]}],"sources":{"ghsa":[{"id":"GHSA-mcmr-49x3-4jqm","title":"ckb type_id script resume may randomly fail","description":"### Impact\nhttps://github.com/nervosnetwork/ckb/blob/v0.101.2/script/src/verify.rs#L871-L879\nTypeIdSystemScript resume handle is not correct when max_cycles is not enough, `ScriptError::ExceededMaximumCycles` will be raised directly ranther than suspend as expect, and also because script_group execution order is random, so this will happen randomly.\n\n\n\n","status":"published","published":"2022-11-02T18:15:07Z","modified":"2023-01-08T05:03:22Z","updated_at":"2026-11-02T14:36:01.39976Z"}],"osv":[{"id":"GHSA-mcmr-49x3-4jqm","title":"ckb type_id script resume may randomly fail","description":"### Impact\nhttps://github.com/nervosnetwork/ckb/blob/v0.101.2/script/src/verify.rs#L871-L879\nTypeIdSystemScript resume handle is not correct when max_cycles is not enough, `ScriptError::ExceededMaximumCycles` will be raised directly ranther than suspend as expect, and also because script_group execution order is random, so this will happen randomly.\n\n\n\n","status":"published","published":"2022-11-02T18:15:07Z","modified":"2022-11-02T18:15:07Z","updated_at":"2026-11-02T15:46:51.811331Z"}]}}
