Vulnerability Information
Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.
Vulnerability Title
`fold (xor (shl 1, x), -1) -> (rotl ~1, x)` misoptimization in zksolc
Vulnerability Description
zksolc is a Solidity compiler for ZKsync. All LLVM versions since 2015 fold `(xor (shl 1, x), -1)` to `(rotl ~1, x)` if run with optimizations enabled. Here `~1` is generated as an unsigned 64 bits number (`2^64-1`). This number is zero-extended to 256 bits on EraVM target while it should have been sign-extended. Thus instead of producing `roti 2^256 - 1, x` the compiler produces `rotl 2^64 - 1, x`. Analysis has shown that no contracts were affected by the date of publishing this advisory. This issue has been addressed in version 1.5.3. Users are advised to upgrade and redeploy all contracts. There are no known workarounds for this vulnerability.
CVSS Information
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:H/A:N
Vulnerability Type
数值计算不正确
Vulnerability Title
ZKsync Era 安全漏洞
Vulnerability Description
ZKsync Era是Matter Labs开源的一个编译器。 ZKsync Era 1.5.3之前版本存在安全漏洞,该漏洞源于LLVM在优化过程中对特定指令处理不当,导致数值扩展错误,影响了EraVM上的合约执行。
CVSS Information
N/A
Vulnerability Type
N/A