导航菜单

网络安全/智能合约安全
课程进度 23% · 第3/10章3/10章 · 标签 1/4
1

什么是智能合约?

智能合约是一种自动执行、不可篡改的程序,部署在区块链上。它可以在满足特定条件时自动完成转账、投票等操作,无需第三方中介。智能合约的历史可以追溯到1994年,随着区块链技术的发展,智能合约在金融、供应链、医疗等多个领域得到了广泛应用。

  • 常用语言:Solidity(以太坊)、Vyper等。
  • 典型应用:去中心化交易所(DEX)、NFT、DeFi、链上游戏等。
  • 一旦部署,代码和数据都公开透明,任何人都能查看和调用。
  • 智能合约在金融领域的应用如自动化支付、保险理赔等。
  • 在供应链中,智能合约可以用于追踪商品的来源和流通。

!智能合约的安全性直接关系到链上资产安全,一旦出错或被攻击,损失可能巨大。

2

智能合约常见漏洞

  • 重入攻击:攻击者在合约调用外部合约时反复进入,导致资金被多次盗取。
  • 整数溢出/下溢:数值计算超出范围,导致资产被盗或归零。
  • 时间戳依赖:合约逻辑依赖区块时间,容易被矿工操控。
  • 随机数不安全:链上随机数可预测,攻击者可操控结果。
  • 权限控制不严:合约关键操作未做权限校验,导致被任意调用。
  • 拒绝服务(DoS):恶意用户阻塞合约执行,影响正常业务。
  • 未检查返回值:调用外部合约或转账时未检查返回值,导致资金丢失。
  • 可升级合约漏洞:合约升级机制设计不当,攻击者可替换逻辑。

📖每种漏洞都有真实案例,开发和部署前需重点关注。