避免Web3钓鱼诈骗:如何识别和预防攻击

Odaily星球日报發佈於 2024-02-15更新於 2024-02-15

文章摘要

文将详细介绍如何识别和预防这些攻击,帮助用户保护自己的加密货币资产安全。

什么是web3钓鱼

Web3 Phishing 是一种针对加密货币用户的网络欺骗手段,通过创建伪装成正式网站的假网站来窃取用户的授权、签名和加密货币资产。随着 Web3.0 技术的发展,新型的 Web3 钓鱼骗局也在不断出现。以下,我们将介绍新型 web3 钓鱼攻击方式:Approval phishing、Uniswap permit 2 phishing、Claim phishing、Model phishing。并提供帮助用户识别和预防这些攻击的有效措施:针对 Approval 钓鱼的预防措施,识别 permit 2 中的签名,防止 Claim 钓鱼攻击,防止模态钓鱼攻击。

1. Approval 调用攻击

web3网络钓鱼攻击大多与approval、increaseAllowance 操作有关。攻击者通过伪造电子邮件或消息、伪造网站或应用程序、社交工程和恶意广告或弹窗等方式,骗取用户进行 approval 操作。因此,用户需要撤销不必要的授权。撤销授权也有可能被钓鱼者利用。

撤销授权钓鱼攻击时如何发生的?

  • 攻击者部署了一个假的ERC-20 代币合约,修改了 approve 函数;

  • 攻击者手动伪造了大批链上地址的授权,并提醒用户取消授权

  • 当用户收到该提醒并点击取消授权时,会触发发送交易的操作。这个交易将导致 token 被铸造到合约部署者的钱包内。

避免Web3钓鱼诈骗:如何识别和预防攻击

increaseAllowance 授权钓鱼交易链接

https://arbiscan.io/tx/0xd598336fac79123952319c9cd9cc62aa275162ce5f39d08ccac0c5e6ef0538e5

“撤销授权”钓鱼交易链接https://etherscan.io/tx/0xd4d606caddebf185dc6902ffcec78f3cc915826e1c0e37319d407d01681980ab

2. Uniswap permit 2 钓鱼攻击

Uniswap permit 2  允许跨不同应用共享和管理 token 授权。 用户只需在一次交易中完成授权和交易,减少交易的 gas 费用,简化交易操作流程。但是,Permit 2 则将用户的操作变为了链下签名,对于用户来说,链下签名是最容易放下防备的环节,而绝大多数人并不会仔细检查签名的内容也并不理解签名的内容。

Uniswap permit 2 签名钓鱼攻击是如何发生的?

  • 用户将自己所持有 Token 的权限授权给 Permit 2 合约,这是至关重要的前提条件,这意味着你在授权时的签名已经暴露在钓鱼骗局的风险下了。

  • 黑客拿到了用户的签名,基于此签名,黑客在 permit 2 合约中进行了 permit 和 transferFrom 两个操作,转走用户的资产。

  • 黑客调用 permit 函数,在该函数中,主要调用了 verify 函数和_updateApproval 函数。verify 函数用来验证用户签名。验证通过后执行_updateApproval 函数。_updateApproval 函数用来更新授权值。

避免Web3钓鱼诈骗:如何识别和预防攻击

避免Web3钓鱼诈骗:如何识别和预防攻击

避免Web3钓鱼诈骗:如何识别和预防攻击

避免Web3钓鱼诈骗:如何识别和预防攻击

  • 被授权方在授权额度范围内可以调用 transferFrom 函数将 token 转移到指定地址。

避免Web3钓鱼诈骗:如何识别和预防攻击

避免Web3钓鱼诈骗:如何识别和预防攻击

Permit 2 钓鱼交易链接

https://etherscan.io/tx/0x1d8fa25f8f16d52cd4c5716e0cefd9b1cdbbbc060901cea223bab9de79b17ea3

3. Claim 钓鱼攻击

Claim 钓鱼攻击通过伪造可信实体的请求,欺骗用户提供个人信息、登录凭据或访问权限。这些 Claim 钓鱼合约通常伪装成零地址来骗取用户信任,以此来调取用户的加密资产。

Claim 钓鱼攻击是如何发生的?

  • 钓鱼者部署 scam contract 和 hub contract,并创建 EOA 用来接收窃取用户的资金。scam contract 具有窃取用户的 ETH、ERC 20 token 和 NFT 的能力。scam contract 不开源,但从链上交易数据来看,该合约主要包含两个函数,Cliam 和 Multicall。

避免Web3钓鱼诈骗:如何识别和预防攻击

调用 Claim 函数时,受害者所持有的 token 将在 internal transaction 中被转移至 hub contract。

避免Web3钓鱼诈骗:如何识别和预防攻击

Multicall 函数用来转移受害者已批准的 token。

避免Web3钓鱼诈骗:如何识别和预防攻击

  • hub contract 用作从各个 scam contract 中窃取的资金的收集点。钓鱼者创建的 EOA 可以调用 hub contract 中的 withdraw 函数提取资金。

避免Web3钓鱼诈骗:如何识别和预防攻击

避免Web3钓鱼诈骗:如何识别和预防攻击

claim 钓鱼交易链接

https://etherscan.io/tx/0xfe70f1b0a92e719bff0d291b7a79987e6e93ed129d52be8e8918c2b9acb1f3b0

4. 模态钓鱼攻击

Web3.0 加密货币钱包的某些用户界面(UI)元素可以被攻击者控制用来进行网络钓鱼攻击,这种攻击方式被称为 Modal Phishing。Web3.0 货币钱包上的典型模态设计通常提供供用户检查签名等请求的必要信息,以及批准或拒绝请求的按钮。

我们以 Metamask 钱包为例,介绍模态钓鱼攻击是如何发生的?

  • 钓鱼者部署钓鱼智能合约,有一个 SecurityUpdate 具备支付功能的函数,并允许受害者将资金转入该智能合约;

  • 钓鱼者还使用 SignatureReg 将 SecurityUpdate 函数签名注册为人类可读的字符串“SecurityUpdate”。

  • 受害者在 Metamask 钱包上连接以上钓鱼智能合约;

  • Metamask 解析这个钓鱼智能合约,它使用函数签名字节查询相应的函数方法,即为“SecurityUpdate”。

避免Web3钓鱼诈骗:如何识别和预防攻击

  • “SecurityUpdate”被呈现在 Metamask Model 中,要求用户确认。用户点击“SecurityUpdate”按钮,钓鱼成功。此时,执行钓鱼者写好的钓鱼智能合约,将受害者的资金转入该智能合约。

避免Web3钓鱼诈骗:如何识别和预防攻击

如何避免web3钓鱼攻击

1. 针对 approval 钓鱼的预防措施

如果我们理解授权操作的具体内容,并从正确的渠道查询我们的授权信息、取消授权,就会有效避免 approval、increaseAllowance、撤销授权的钓鱼骗局。

以下内容可以帮助用户理解授权操作的具体内容:

用户在 approval 时,需要考虑授权金额、授权币种和授权地址。通过指定授权金额和币种,用户可以限制被授权方能够从自己的账户中转移的资产数量,防止授权到与这次交互无关的币种。用户还需要仔细检查授权地址,多渠道验证该地址,确保将授权给正确的地址。

  • 用户在正式授权之前,可以在相应代币合约中模拟授权交易,以获取授权信息。

避免Web3钓鱼诈骗:如何识别和预防攻击

  • 找到 approval 或者 increaseAllowance、decreaseAllowance 等授权相关函数,填写以下信息模拟授权交易。

避免Web3钓鱼诈骗:如何识别和预防攻击

  • 模拟授权之后,可以在 Phalcon 上看到这笔模拟交易的具体信息,从 Input Data 可以看出授权地址和授权金额。

避免Web3钓鱼诈骗:如何识别和预防攻击

如果以上结果是用户期望的,就可以进行正式授权了。

以下内容是追踪链上授权信息,撤销授权信息的具体步骤:

用户在完成授权之后,可以定期追踪 token approval 情况,也可撤销相关授权。Etherscan, BscScan and Polygonscan区块链浏览器中有 token approval checker Function。

  • 输入地址,即可查看该地址的历史授权交易,每笔交易右侧的 Revole 按钮可撤销此授权。

避免Web3钓鱼诈骗:如何识别和预防攻击

  • 在检索到的授权交易中,可查看授权币种、授权地址和授权金额。

避免Web3钓鱼诈骗:如何识别和预防攻击

2. 识别 permit 2 中的签名

如果我们能够理解、识别并仔细检查签名的具体内容,就可以有效避免 permit 2 钓鱼骗局。

签名格式通常包含 Owner、Spender、value、nonce 和 deadline 这几个关键字段,分别是指:

  1. Owner: 代表 token 持有者的地址,用于指定希望通过签名授权的地址。

  2. Spender: 代表被授权使用 token 的地址,用于指定希望授权给的地址。

  3. value: 代表希望授权的 token 数量,可以指定特定数量的 token 授权给 Spender。

  4. nonce: 代表 token 持有者的交易计数器,用于确保每个授权交易都具有唯一的标识符。

  5. deadline: 代表签名的有效截止日期,用于限制签名的有效期。在过期之后,签名将变得无效。

我们建议用户可以根据自己的需求设置特定的 value 和 deadline,而不是选择默认的最大值。

用户在调用 Uniswap permit 2 合约之前,可以模拟相关授权函数,了解授权细节。点击 Simulate 按钮。

避免Web3钓鱼诈骗:如何识别和预防攻击

选择 approve 函数,填写以下参数,模拟用户向 permit 2 合约授权。

避免Web3钓鱼诈骗:如何识别和预防攻击

3. 防止 Claim 钓鱼攻击

为了避免落入 Claim 钓鱼陷阱,我们需要识别钓鱼合约地址,他们经常伪装成零地址来放松用户的警惕性。以下列举了一些用于 claim 钓鱼诈骗的 Scam contract。我们在交易时,需要注意地址前后是“ 0000 ”的地址

https://etherscan.io/address/0x0000b514c923f55180fc12428e05695666620000

https://etherscan.io/address/0x0000438e0f00fc35dff19d0062608057a1d20000

https://etherscan.io/address/0x0000a4998724e52f0886edff693aca33f9900000

https://etherscan.io/address/0x000062accd1a9d62ef428ec86ca3dd4f45120000

https://etherscan.io/address/0x000038f1e0c4417a3650c3f9a9a920b2e52e0000

https://etherscan.io/address/0x000056c346441ef8065e56b0cddd43fdec100000

Claim 钓鱼攻击本质也是获取用户的 token 授权,所以,我们仍然需要时刻关注授权情况。

4. 防止模态钓鱼攻击

模态钓鱼攻击发生的根本原因是钱包应用程序没有彻底验证所呈现的 UI 元素的合法性。为了避免这种钓鱼攻击,钱包应用程序的开发者应该始终假设外部传入的数据是不可信的。用户也可按照上述方式检查自己的签名信息和授权信息。

总结

综上所述,我们详细介绍了四种新型的Web3钓鱼攻击方式,并提供了相应的识别和预防措施。除了提高用户的警惕性外,我们还建议用户深入了解授权和签名的相关内容,并定期检查自己的授权情况,及时撤销不必要的授权。此外,我们强调了不随意签名的重要性,以防止攻击者获取我们的签名并滥用。如果您对Web3安全或智能合约审计有任何其他问题,欢迎随时与我们联系。我们将竭诚为您提供帮助。

你可能也喜歡

Vitalik算法稳定币设想:从期权视角解读机制与挑战

Vitalik Buterin 近期提出了一种新颖的算法稳定币设想,该方案从期权视角出发,试图规避传统抵押债务头寸(CDP)稳定币的清算风险。其核心设计是将1单位ETH拆分为两类权益:稳定侧(P)和上涨侧(N)。稳定侧类似一个深度实值的合成备兑看涨期权,旨在获得低于某一执行价的“稳定”价值;上涨侧则获得执行价以上的全部上涨收益。两部分权益之和始终等于1 ETH,因此系统无需债务、保证金或清算机制。 然而,该设计面临显著挑战。为实现稳定,稳定侧资产需持续滚动(展期)深度实值期权,这会带来交易滑点、固定交易路径被抢跑以及流动性不足等问题。更根本的难点在于,每一份稳定资产的创造,都需要有参与者持续持有对应的上涨侧资产——这本质上是一种无资金费率、无清算风险的杠杆ETH多头。该需求能否长期、规模化存在,是系统成功扩张的关键。 作者结合其DeFi期权协议Rysk的经验指出,期权过去难以在DeFi中成为主流交易产品,因其过于复杂。但若转变思路,将期权作为底层金融基础模块,用于构建稳定币、结构化收益产品等更复杂的资产,则可能展现出巨大潜力。期权的未来机会或许不在于成为下一个永续合约,而在于成为下一代链上金融产品的定价与风险分配引擎。

marsbit11 分鐘前

Vitalik算法稳定币设想:从期权视角解读机制与挑战

marsbit11 分鐘前

赛场之外:围绕世界杯的逐利游戏

《赛场之外:围绕世界杯的逐利游戏》一文揭示了2026年世界杯如何成为一个巨大的全球投机窗口。文章指出,这项赛事不仅吸引了球迷,更催生出一套完整的投机生态。 文章从七个层面剖析了这一现象: 1. **预测市场崛起**:以Polymarket和Kalshi为代表的预测平台交易量暴增,其链上财富故事极具传播力,正挑战传统体育博彩。 2. **传统体育博彩**:尽管面临新兴市场冲击,传统博彩凭借成熟用户和庞大市场,仍是世界杯投机的最大基本盘,预计美国相关投注额将达数百亿美元。 3. **股市概念炒作**:球队战绩直接影响相关“概念股”股价,如韩国的炸鸡股、日本的直播平台和运动品牌股,股价随赛果剧烈波动,成为“情绪盘口”。 4. **门票转售套利**:门票在二级市场成为套利工具,价格因球队、球星、地点等因素差异巨大。甚至出现了类似“卖空”的操作,以及FIFA官方“购票权”(RTB)的“二阶投机”。 5. **藏品与周边投机**:Panini贴纸因稀缺性和收藏价值在二级市场可能身价暴涨;限量版或带有身份象征的球衣也被热炒,假货市场同样活跃以满足球迷的现场表达需求。 6. **加密货币狂热**:世界杯催生了大量未经授权的主题Meme币,它们在短期内可能制造惊人回报,但更多是暴涨暴跌的投机工具,风险极高。 7. **内容与信息服务**:有人通过开发门票比价工具、出售付费投注推荐等方式,为投机者提供信息和工具,从庞大的信息需求中获利。 文章总结,世界杯赛场之外,一个围绕注意力、情绪和稀缺资源的全球交易网络悄然运行,真正的赢家往往是那些最早洞察并利用这种注意力流动规则的人。

marsbit3 小時前

赛场之外:围绕世界杯的逐利游戏

marsbit3 小時前

交易

現貨
合約
活动图片