Attackathon _ Fuel Network 32275 - [Smart Contract - Medium] Various Sway Libs Bugs
Description
Brief/Intro
Vulnerability Details
Incorrect bit width for signed_integers and fixed_point
signed_integers and fixed_pointIncorrect two's complement implementation for signed_integers
signed_integersIncorrect indent for i128 and i256
i128 and i256Unnecessary subtract In UFP32::fract
UFP32::fractIncorrect usage of IFP::from
IFP::fromIFP::ceil overflow on values close to min
IFP::ceil overflow on values close to minIncorrect panic of fixed_point::round
fixed_point::roundIncorrect denominator in UFP128::sqrt and UFP32::sqrt
UFP128::sqrt and UFP32::sqrtUFP::sqrt precision loss
UFP::sqrt precision lossUFP::pow` premature overflow leads to revert
fixed_point::exp precision loss
fixed_point::exp precision lossUFP32::exp and IFP256::exp uses incorrect taylor series
UFP32::exp and IFP256::exp uses incorrect taylor seriesIncorrect min for IFP
min for IFPLack of consideration of negative zero for IFP compare functions
IFP compare functionsIncorrect adjustment for IFP::ceil
IFP::ceilImpact Details
References
Incorrect bit width for signed_integers and fixed_point
signed_integers and fixed_pointIncorrect two's complement implementation for signed_integers
signed_integersIncorrect indent for i128 and i256
i128 and i256Unnecessary subtract In UFP32::fract
UFP32::fractIncorrect usage of IFP::from
IFP::fromIFP::ceil overflow on values close to min
IFP::ceil overflow on values close to minIncorrect panic of fixed_point::round
fixed_point::roundIncorrect denominator in UFP128::sqrt and UFP32::sqrt
UFP128::sqrt and UFP32::sqrtUFP::sqrt precision loss
UFP::sqrt precision lossUFP::pow` premature overflow leads to revert
fixed_point::exp precision loss
fixed_point::exp precision lossUFP32::exp and IFP256::exp uses incorrect taylor series
UFP32::exp and IFP256::exp uses incorrect taylor seriesIncorrect min for IFP
min for IFPLack of consideration of negative zero for IFP compare functions
IFP compare functionsIncorrect adjustment for IFP::ceil
IFP::ceilProof of concept
Proof of Concept
Incorrect bit width for signed_integers and fixed_point
signed_integers and fixed_pointIncorrect two's complement implementation for signed_integers
signed_integersIncorrect indent for i128 and i256
i128 and i256Unnecessary subtract In UFP32::fract
UFP32::fractIncorrect usage of IFP::from
IFP::fromIFP::ceil overflow on values close to min
IFP::ceil overflow on values close to minIncorrect panic of fixed_point::round
fixed_point::roundIncorrect denominator in UFP128::sqrt and UFP32::sqrt
UFP128::sqrt and UFP32::sqrtUFP::sqrt precision loss
UFP::sqrt precision lossUFP::pow` premature overflow leads to revert
fixed_point::exp precision loss
fixed_point::exp precision lossUFP32::exp and IFP256::exp uses incorrect taylor series
UFP32::exp and IFP256::exp uses incorrect taylor seriesIncorrect min for IFP
min for IFPLack of consideration of negative zero for IFP compare functions
IFP compare functionsIncorrect adjustment for IFP::ceil
IFP::ceilPreviousAttackathon _ Fuel Network 32271 - [Blockchain_DLT - Medium] Incorrect state range access helperNextAttackathon _ Fuel Network 32276 - [Smart Contract - Insight] wrong implementation in gt and lt func
Last updated
Was this helpful?