📢 Gate广场 #MBG任务挑战# 发帖赢大奖活动火热开启!
想要瓜分1,000枚MBG?现在就来参与,展示你的洞察与实操,成为MBG推广达人!
💰️ 本期将评选出20位优质发帖用户,每人可轻松获得50枚MBG!
如何参与:
1️⃣ 调研MBG项目
对MBG的基本面、社区治理、发展目标、代币经济模型等方面进行研究,分享你对项目的深度研究。
2️⃣ 参与并分享真实体验
参与MBG相关活动(包括CandyDrop、Launchpool或现货交易),并晒出你的参与截图、收益图或实用教程。可以是收益展示、简明易懂的新手攻略、小窍门,也可以是现货行情点位分析,内容详实优先。
3️⃣ 鼓励带新互动
如果你的帖子吸引到他人参与活动,或者有好友评论“已参与/已交易”,将大幅提升你的获奖概率!
MBG热门活动(帖文需附下列活动链接):
Gate第287期Launchpool:MBG — 质押ETH、MBG即可免费瓜分112,500 MBG,每小时领取奖励!参与攻略见公告:https://www.gate.com/announcements/article/46230
Gate CandyDrop第55期:CandyDrop x MBG — 通过首次交易、交易MBG、邀请好友注册交易即可分187,500 MBG!参与攻略见公告:https://www.gate.com/announcements
DeFi三大安全隐患解析:闪电贷、价格操控与重入攻击
DeFi安全漏洞及预防措施
近期,一位安全专家为社区分享了DeFi安全课程。该专家回顾了过去一年Web3行业遭遇的重大安全事件,探讨了这些事件的原因及如何规避,总结了常见的智能合约安全漏洞及预防措施,并为项目方和用户提出了一些安全建议。
常见的DeFi漏洞类型包括闪电贷、价格操纵、函数权限问题、任意外部调用、fallback函数问题、业务逻辑漏洞、私钥泄露和重入攻击等。本文重点介绍闪电贷、价格操控以及重入攻击这三种类型。
闪电贷
闪电贷是DeFi的一种创新,但也被黑客利用进行攻击。攻击者通过闪电贷借出大量资金,对价格进行操纵或攻击业务逻辑。开发者需要考虑合约功能是否会因为巨额资金导致异常,或被利用获取不当奖励。
许多DeFi项目由于代码或逻辑问题,容易受到闪电贷攻击。例如,有些项目在固定时间根据持仓发放奖励,却被攻击者利用闪电贷购买大量代币获取大部分奖励。还有些项目通过Token计算价格,也可能被闪电贷影响。项目方应对这些问题保持警惕。
价格操控
价格操控问题与闪电贷密切相关,主要有两种情况:
计算价格时使用第三方数据,但使用方式不正确或检查缺失,导致价格被恶意操控。
使用某些地址的Token数量作为计算变量,而这些地址的Token余额可被临时增减。
重入攻击
调用外部合约的主要风险是它们可能接管控制流,对数据进行意外更改。例如:
solidity mapping (address => uint) private userBalances;
function withdrawBalance() public { uint amountToWithdraw = userBalances[msg.sender]; (bool success, ) = msg.sender.call.value(amountToWithdraw)(""); require(success); userBalances[msg.sender] = 0; }
由于用户余额直到函数最后才设为0,重复调用仍会成功,可以多次提取余额。
重入攻击的形式多样,可能涉及单个合约的不同函数或多个合约的函数。解决重入问题需注意:
建议使用成熟的安全实践,避免重复造轮子。自行开发的新方案缺乏充分验证,出现问题的概率较高。
安全建议
项目方安全建议
用户如何判断智能合约安全性
总之,项目方和用户都应提高安全意识,采取必要措施降低DeFi安全风险。