37种solidity合约常见安全问题【SWC】

SWC Registry是以太坊安全人员和开发人员的必备知识库。它是SmartContractSecurity提供的以太坊智能合约安全漏洞分类及测试用例集,其中包含了37种以太坊Solidity智能合约开发中常见的安全问题的描述及后果,例如重入、溢出等,同时也给出了CWE漏洞分类、解决方案和作为示例的合约程序代码。

用自己熟悉的语言学习 以太坊DApp开发 :Java | Php | Python | .Net / C# | Golang | Node.JS | Flutter / Dart

SWC以太坊智能合约漏洞库清单如下:

  • SWC-100:未声明函数可见性
  • SWC-101:整数溢出
  • SWC-102:使用过时的编译器
  • SWC-103:未锁定的pragma声明
  • SWC-104:未检查的调用范围值
  • SWC-105:无保护的以太币提款
  • SWC-106:无保护的SELFDESTRUCT指令
  • SWC-107:重入漏洞
  • SWC-108:未声明状态变量可见性
  • SWC-109:未初始化的存储指针
  • SWC-110:触发assert断言
  • SWC-111:使用过时的solidity函数
  • SWC-112:委托调用非可信合约
  • SWC-113:失败调用引发的DoS攻击
  • SWC-114:交易顺序依赖
  • SWC-115:利用tx.origin授权
  • SWC-116:使用区块值作为时间计量
  • SWC-117:签名的非唯一性
  • SWC-118:错误的构造函数名
  • SWC-119:影子状态变量
  • SWC-120:基于链属性的弱随机性
  • SWC-121:未保护签名重放攻击
  • SWC-122:缺乏适当的签名验证
  • SWC-123:违反require要求
  • SWC-124:写入任意存储位置
  • SWC-125:不正确的继承顺序
  • SWC-126:gas不足
  • SWC-127:函数类型变量任意跳转
  • SWC-128:利用区块gas限制的DoS攻击
  • SWC-129:笔误
  • SWC-130:使用反向控制字符
  • SWC-131:存在未使用的变量
  • SWC-132:依赖于以太币余额的逻辑
  • SWC-133:变长参数导致的哈希冲突
  • SWC-134:硬编码gas用量的消息调用
  • SWC-135:无效代码
  • SWC-136:未加密的链上私人数据


原文链接:SWC智能合约漏洞库 — 汇智网

你可能感兴趣的:(以太坊开发)