DeFi安全漏洞全解析:闪电贷、价格操控和重入攻击防范指南

robot
摘要生成中

DeFi常见安全漏洞及预防措施

近期,一位安全专家为社区成员分享了一堂DeFi安全课,回顾了过去一年多Web3行业遭遇的重大安全事件,探讨了这些事件发生的原因以及如何规避,总结了常见智能合约的安全漏洞及预防措施,还对项目方和用户给出了一些安全建议。

常见的DeFi漏洞类型主要有闪电贷、价格操纵、函数权限问题、任意外部调用、fallback函数问题、业务逻辑漏洞、私钥泄漏、重入等。下面重点介绍闪电贷、价格操控以及重入攻击这三种类型。

闪电贷

闪电贷虽是DeFi的一种创新,但也常被黑客利用:

  • 攻击者通过闪电贷借出大量资金,操纵价格或攻击业务逻辑
  • 开发者需考虑合约功能是否会因巨额资金导致异常,或被利用获取不当奖励
  • 一些项目在设计功能时未考虑闪电贷影响,导致资金被盗

过去两年,许多DeFi项目因闪电贷出现问题。例如,一些项目会根据持仓量发放奖励,却被攻击者利用闪电贷购买大量代币获取大部分奖励。还有通过Token计算价格的项目,可被闪电贷影响价格。项目方应对此提高警惕。

价格操控

价格操控问题与闪电贷密切相关,主要有两种类型:

  1. 计算价格时使用第三方数据,但使用方式不当或缺乏检查,导致价格被恶意操控
  2. 使用某些地址的Token余额作为计算变量,而这些余额可被临时增减

重入攻击

调用外部合约的主要风险是它们可能接管控制流,对数据进行未预料的更改。

例如,在提现函数中,如果用户余额在函数最后才清零,攻击者可以在资金转出后再次调用该函数,反复提现。

重入攻击的形式多样,可能涉及多个函数或合约。防范重入需注意:

  1. 不仅防止单一函数的重入
  2. 遵循Checks-Effects-Interactions模式编码
  3. 使用经过验证的防重入modifier

安全专家建议,应使用已有的最佳安全实践,而非重复造轮子。因为自己构建的新方案缺乏充分验证,出问题的概率远高于成熟方案。

项目方安全建议

  1. 合约开发遵循最佳安全实践
  2. 合约可升级、可暂停,以便及时应对攻击
  3. 采用时间锁,为发现和应对风险预留时间
  4. 加大安全投入,建立完善的安全体系
  5. 提高所有员工的安全意识
  6. 预防内部作恶,在提升效率同时加强风控
  7. 谨慎引入第三方,默认上下游都不安全

用户如何判断智能合约安全性

  1. 合约是否开源
  2. Owner是否采用去中心化的多签
  3. 检查合约已有的交易情况
  4. 合约是否可升级,是否有时间锁
  5. 是否接受过多家机构审计,Owner权限是否过大
  6. 注意预言机的可靠性

总之,在DeFi领域,项目方和用户都需保持高度警惕,采取多重安全措施,才能有效降低风险。

Cobo DeFi 安全课(下):DeFi 常⻅安全漏洞及预防

DEFI-0.06%
此页面可能包含第三方内容,仅供参考(非陈述/保证),不应被视为 Gate 认可其观点表述,也不得被视为财务或专业建议。详见声明
  • 赞赏
  • 3
  • 分享
评论
0/400
午夜快照猎人vip
· 07-25 08:52
这种漏洞,我都见多了吧…
回复0
幽灵钱包侦探vip
· 07-25 08:51
漏洞永远是项目方和黑客的猫鼠游戏啊
回复0
FlatlineTradervip
· 07-25 08:45
老项目都遭过重入了
回复0
交易,随时随地
qrCode
扫码下载 Gate APP
社群列表
简体中文
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)