一系列智能合约漏洞以及预防方法
2023-1-17 10:4:29 Author: Ots安全(查看原文) 阅读量:16 收藏

  • 强制发送以太币到智能合约

  • 气体释放不足

  • 重入

  • 整数上溢和下溢

  • 时间戳依赖

  • 通过 tx.origin 授权

  • 浮动编译指示

  • 功能默认可见性

  • 过时的编译器版本

  • 未经检查的调用返回值

  • 无保护的以太币提取

  • 无保护自毁指令

  • 状态变量默认可见性

  • 未初始化的存储指针

  • 断言违规

  • 使用已弃用的函数

  • 将呼叫委托给不受信任的被叫方

  • 签名延展性

  • 错误的构造函数名称

  • 隐藏状态变量

  • 来自链属性的弱随机性来源

  • 缺少针对签名重放攻击的保护

  • 需求验证

  • 写入任意存储位置

  • 不正确的继承顺序

  • 函数类型变量任意跳转

  • 未使用变量的存在

  • 意外的以太币余额

  • 未加密的秘密

  • 错误合约检测

  • 畅通无阻的区块链依赖

  • 不遵守标准

  • 不受保护的回调

  • 从代码大小断言 EOA

  • 交易顺序依赖

  • 具有区块气体限制的 DoS

  • 具有(意外)还原的 DoS

进一步阅读

  • https://github.com/ethereum/wiki/wiki/Safety

  • https://swcregistry.io/

  • https://eprint.iacr.org/2016/1007.pdf

  • https://www.dasp.co/

  • https://consensys.github.io/smart-contract-best-practices/

  • https://github.com/sigp/solidity-security-blog

  • https://solidity.readthedocs.io/en/latest/bugs.html

点击阅读原文即可跳转-(项目地址):

https://github.com/kadenzipfel/smart-contract-vulnerabilities


文章来源: http://mp.weixin.qq.com/s?__biz=MzAxMjYyMzkwOA==&mid=2247496466&idx=2&sn=c0bc70f14684a715c60ee725265f61be&chksm=9badba59acda334fbdf9c32473f8f56d5a5277dfa90cf42f597bbeb30180b820c5ca9ca349f5#rd
如有侵权请联系:admin#unsafe.sh