风险提示:理性看待区块链,提高风险意识!
以太坊代币“假充值”漏洞细节披露,至少 3619 份代币存在该风险
首页 > 币界资讯 > 区块链新闻 2018-07-11 11:01
摘要
近日,据慢雾区消息,以太坊代币“假充值”漏洞影响面非常之广,影响对象至少包括:相关中心化交易所、中心化钱包、代币合约等。慢雾区透露,仅代币合约,据不完全统计就有3619份存在“假充值”漏洞风险,其中不乏知名代币。慢雾安全团队分析此次影响可能会大于 USDT “假充值”漏洞攻击事件,由于这不仅是漏洞, 。
币界网报道:

近日,据慢雾区消息,以太坊代币“假充值”漏洞影响面非常之广,影响对象至少包括:相关中心化交易所、中心化钱包、代币合约等。

慢雾区透露,仅代币合约,据不完全统计就有3619份存在“假充值”漏洞风险,其中不乏知名代币。慢雾安全团队分析此次影响可能会大于 USDT “假充值”漏洞攻击事件,由于这不仅是漏洞,而是真实发生的攻击,相关项目方应尽快自查。

对于至少3619份存在“假充值”漏洞风险的代币,慢雾区认为,一般来说最好的方式是重发,并做好新旧代币映射。“因为这类代币如果不这样做,会像个“定时炸弹”,你不可能期望所有中心化交易所、中心化钱包等平台方都能做好安全对接,一旦没做好这个“假充值”漏洞的判断,那损失的可是这些平台方。而如果平台方损失严重,对整个市场来说必然也是一种损失。”

今早,“慢雾区”公众号发布了以太坊代币“假充值”漏洞细节披露及修复方案,以下为披露全文:

披露时间线

以太坊代币“假充值”漏洞影响面非常之广,影响对象至少包括:相关中心化交易所、中心化钱包、代币合约等。单代币合约,我们的不完全统计就有 3619 份存在“假充值”漏洞风险,其中不乏知名代币。相关项目方应尽快自查。由于这不仅仅是一个漏洞那么简单,这已经是真实在发生的攻击!出于影响,我们采取了负责任的披露过程,这次攻击事件的披露前后相关时间线大致如下:

2018/6/28 慢雾区情报,USDT “假充值”漏洞攻击事件披露
2018/7/1 慢雾安全团队开始分析知名公链是否存在类似问题
2018/7/7 慢雾安全团队捕获并确认以太坊相关代币“假充值”漏洞攻击事件
2018/7/8 慢雾安全团队分析此次影响可能会大于 USDT “假充值”漏洞攻击事件,并迅速通知相关客户及慢雾区伙伴
2018/7/9 慢雾区对外发出第一次预警
2018/7/10 慢雾安全团队把细节同步给至少 10 家区块链生态安全同行
2018/7/11 细节报告正式公开

漏洞细节

以太坊代币交易回执中 status 字段是 0×1(true) 还是 0×0(false),取决于交易事务执行过程中是否抛出了异常(比如使用了 require/assert/revert/throw 等机制)。当用户调用代币合约的 transfer 函数进行转账时,如果 transfer 函数正常运行未抛出异常,该交易的 status 即是 0×1(true)。

1

如图代码,某些代币合约的 transfer 函数对转账发起人(msg.sender)的余额检查用的是 if 判断方式,当 balances[msg.sender] < _value 时进入 else 逻辑部分并 return false,最终没有抛出异常,我们认为仅 if/else 这种温和的判断方式在 transfer 这类敏感函数场景中是一种不严谨的编码方式。而大多数代币合约的 transfer 函数会采用 require/assert 方式,如图:

2

当不满足条件时会直接抛出异常,中断合约后续指令的执行,或者也可以使用 EIP 20 推荐的 if/else + revert/throw 函数组合机制来显现抛出异常,如图:

3

我们很难要求所有程序员都能写出最佳安全实践的代码,这种不严谨的编码方式是一种安全缺陷,这种安全缺陷可能会导致特殊场景下的安全问题。攻击者可以利用存在该缺陷的代币合约向中心化交易所、钱包等服务平台发起充值操作,如果交易所仅判断如 TxReceipt Status 是 success(即上文提的 status 为 0×1(true) 的情况) 就以为充币成功,就可能存在“假充值”漏洞。如图:

20180711104818

修复方案

除了判断交易事务 success 之外,还应二次判断充值钱包地址的 balance 是否准确的增加。其实这个二次判断可以通过 Event 事件日志来进行,很多中心化交易所、钱包等服务平台会通过 Event 事件日志来获取转账额度,以此判断转账的准确性。但这里就需要特别注意合约作恶情况,因为 Event 是可以任意编写的,不是强制默认不可篡改的选项:

emit Transfer(from, to, value); // value 等参数可以任意定义

作为平台方,在对接新上线的代币合约之前,应该做好严格的安全审计,这种安全审计必须强制代币合约方执行最佳安全实践。

作为代币合约方,在编码上,应该严格执行最佳安全实践,并请第三方职业安全审计机构完成严谨完备的安全审计。

后记 Q&A

Q:为什么我们采取这种披露方式?
A:本质是与攻击者赛跑,但是这个生态太大,我们的力量不可能覆盖全面,只能尽我们所能去覆盖,比如我们第一时间通知了我们的客户,然后是慢雾区伙伴的客户,再然后是关注这个生态的安全同行的客户,最终不得不披露出细节。

Q:为什么说披露的不仅仅是漏洞,而是攻击?
A:其实,以我们的风格,我们一般情况下是不会单纯去提漏洞,漏洞这东西,对我们来说太普通,拿漏洞来高调运作不是个好方式。而攻击不一样,攻击是已经发生的,我们必须与攻击者赛跑。披露是一门艺术,没什么是完美的,我们只能尽力做到最好,让这个生态有安全感。

Q:至少 3619 份存在“假充值”漏洞风险,这些代币该怎么办?
A:很纠结,一般来说,这些代币最好的方式是重发,然后新旧代币做好“映射”。因为这类代币如果不这样做,会像个“定时炸弹”,你不可能期望所有中心化交易所、中心化钱包等平台方都能做好安全对接,一旦没做好这个“假充值”漏洞的判断,那损失的可是这些平台方。而如果平台方损失严重,对整个市场来说必然也是一种损失。

Q:有哪些知名代币存在“假充值”漏洞?
A:我们不会做点名披露的事。

Q:有哪些交易所、钱包遭受过“假充值”漏洞的攻击?
A:恐怕没人会公开提,我们也不会点名。

Q:这些代币不重发是否可以?
A:也许可以,但不完美。不选择重发的代币要么很快是发布主网就做“映射”的,要么得做好通知所有对接该代币的平台方的持续性工作。

Q:为什么慢雾可捕获到这类攻击?
A:我们有健壮的威胁情报网络,捕获到异常时,我们默认直觉会认为这是一种攻击。

Q:除了 USDT、以太坊代币存在“假充值”漏洞风险,还有其他什么链也存在?
A:暂时不做披露,但相信我们,“假充值”漏洞已经成为区块链生态里不可忽视的一种漏洞类型。这是慢雾安全团队在漏洞与攻击发现史上非常重要的一笔。

发表评论
发表评论
暂无评论
    相关阅读
    除了 Twitter 之外,还有其他地方可以追踪 AI 代理。
    区块链
    2025-01-08 09:31:18
    一家加密货币研究平台预计,今年1月将解锁几款加密货币代币,估计价值72亿美元。
    区块链
    2025-01-08 05:40:16
    在即将到来的一系列升级中,Illuvium将利用Virtuals Protocol AI代理为更智能的游戏角色提供动力。
    区块链
    2025-01-08 04:28:54
    BitMEX创始人Arthur Hayes表示,今年他将开始将资金从风险曲线转移到精选的山寨币。 
    区块链
    2025-01-08 03:42:53
    2025年将成为加密货币市场另一个令人兴奋和看涨的一年,因为比特币再次突破102000美元。这一成就
    比特币
    2025-01-08 02:38:49
    推荐专栏
    Boss Wallet Web3 Econom Pass
    Fully On-Chain & AI-Powered Meme Trading | #Xbit #DEX #Web3 | English: @XBITDEX | Chinese 华语 : @XBITDEX_ZH | Support: @XbitHelpDesk
    一位相信价值投资的币圈KOL。稳定盈利的缠论野生交易员 #BTC行情分析师 #价值投资 #链上数据分析
    爱Web 3,爱生活,爱科技,爱炒币的老韭菜
    热门币种
    更多
    币种
    美元价格
    24H涨跌幅
    BTC比特币
    60,963.61 USDT
    ¥435,103.38
    -2.72%
    ETH以太坊
    3,368.69 USDT
    ¥24,042.67
    -0.3%
    BNB币安币
    570.68 USDT
    ¥4,073.00
    -0.28%
    USDT泰达币
    1.02 USDT
    ¥7.25
    -0.19%
    SOL
    135.96 USDT
    ¥970.36
    +7.66%
    USDC
    1.00 USDT
    ¥7.15
    -0.01%
    TON
    7.59 USDT
    ¥54.14
    +4.55%
    XRP瑞波币
    0.47720 USDT
    ¥3.41
    +0.48%
    DOGE狗狗币
    0.23160 USDT
    ¥1.70
    +0.27%
    ADA艾达币
    0.39050 USDT
    ¥2.79
    +3.88%
    热搜币种
    更多
    币种
    美元价格
    24H涨跌幅
    Filecoin
    5.3609 USDT
    ¥39.30
    -10.06%
    狗狗币
    0.23160 USDT
    ¥1.70
    +0.27%
    比特币
    96511.42 USDT
    ¥707,583.13
    -5.18%
    Gatechain Token
    17.9826 USDT
    ¥131.84
    -2.79%
    Horizen
    23.3297 USDT
    ¥171.04
    -17.05%
    dYdX
    1.405 USDT
    ¥10.30
    -13.67%
    柚子
    0.8151 USDT
    ¥5.98
    -10.53%
    Solana
    198.65 USDT
    ¥1,456.42
    -8.48%
    Shiba Inu
    2.177E-5 USDT
    ¥0.00
    -9.29%
    火币积分
    0.9298 USDT
    ¥6.82
    -29.04%
    Fantom
    0.6972 USDT
    ¥5.11
    -10.36%
    艾达币
    0.9982 USDT
    ¥7.32
    -8.39%
    最新快讯
    更多
    观点:比特币面临短期压力,受宏观经济与市场情绪变化影响
    2025-01-08 12:09:39
    WEEX交易所WE-Launch上线Violet,投入WXT瓜分3100万枚VIOLET代币
    2025-01-08 12:00:34
    美国现货比特币ETF昨日净流入5346万美元
    2025-01-08 12:00:02
    昨日美国比特币现货ETF净流入5348万美元
    2025-01-08 11:59:02
    CertiKAlert:7天前部署的IPC代币存在漏洞,黑客通过闪电贷保护机制盗取约59万美元
    2025-01-08 11:58:42
    IREN:2024全年比特币挖矿产出达3984枚BTC
    2025-01-08 11:57:41
    昨日贝莱德IBIT净流入5.9718亿美元,交易量达31亿美元
    2025-01-08 11:54:57