##概述 最近,Web3 钓鱼网站给许多用户造成了总计数百万美元的损失。在这些钓鱼网站上,用户在不知情的情况下签署交易,授权将其代币转移到骗子控制的账户。为了保护用户免受网络钓鱼攻击,许多 Web3 钱包都实施了黑名单机制,以主动阻止涉及已知网络钓鱼账户的交易。
然而,根据我们的观察,事实证明这一策略无法有效阻止网络钓鱼账户。骗子们开发了几种方法来绕过这种安全机制。第一种方法是使用 "Create2 "函数预测网络钓鱼合约的地址,然后在成功窃取令牌后部署网络钓鱼合约。第二种方法是每天部署新的网络钓鱼合约,其速度超过黑名单的更新速度。
##现有钱包安全警报机制

钱包内的安全警报机制包括对网站和账户的检查。目前,所有此类系统都有网站域名和账户黑名单。当用户访问一个网站时,钱包会检查该域名是否在黑名单上。如果是,则拒绝访问该网站。同样,在用户签署交易之前,钱包会核实交易涉及的账户是否在黑名单上。如果是,则会阻止交易,防止用户继续进行。MetaMask 等系统就体现了这些安全功能。
##利用 Create2 绕过安全警报
以太坊中的 Create2 操作码允许在实际部署之前预测合约地址。这是通过公式实现的:
address = hash(deployer address, bytecode, salt)
有了部署者地址、合约字节码和指定的盐值,就可以提前确定合约地址。
显然,有了部署者地址、字节码和盐值,我们就能在部署前预测出合约地址。在钓鱼网站上,用户会被提示向外部拥有账户(EOA)发送以太坊令牌或批准令牌,而外部拥有账户是通过 "创建2 "来预测的,并且不在黑名单中。随后,在成功盗取代币后,钓鱼合约将被部署,受害者的代币将被转移到另一个账户进行进一步处理。整个过程自动进行。

下面是 Phalcon Explorer 演示的 示例:
钓鱼网站最初要求用户批准 0x0ddb 的令牌。然后,骗子启动钓鱼交易,其中包括两个内部交易。第一个内部交易使用 Create2 部署网络钓鱼合约。第二个内部交易调用网络钓鱼合约来转移受害者的代币。
频繁部署网络钓鱼合约以绕过安全警报
由于网络钓鱼合约部署和黑名单更新之间的间隔时间很短,骗子可以利用这一漏洞绕过安全警报。他们通过每天部署新的网络钓鱼合约来实现这一目的。因此,当用户访问钓鱼网站时,这些合约尚未列入黑名单,从而避开了某些钱包的警报。

下面是 Phalcon Explorer 展示的 Pink Drainer 示例案例。每天都会调用 0x5d77 的部署函数来部署新的网络钓鱼合约。
摘要
钓鱼网站开发人员不断创造新的策略,以规避 Web3 钱包采用的安全检测机制。我们保持警惕,持续监控他们的最新策略。我们敦促用户谨慎行事,在签署交易前仔细查看交易详情。
相关阅读
- 如何避免成为 Web3 网络钓鱼的受害者](https://blocksec.com/blog/how-to-avoid-being-a-web3-phishing-victim)
- 如果我的加密资产被盗,我该怎么办?](https://blocksec.com/blog/what-should-i-do-if-my-crypto-assets-were-stolen)
关于 BlockSec
BlockSec是一家开创性的区块链安全公司,由一群全球杰出的安全专家于2021年成立。公司致力于提高新兴Web3世界的安全性和可用性,以促进其大规模应用。为此,BlockSec 提供智能合约和 EVM 链安全审计 服务、用于安全开发和主动阻止威胁的Phalcon 平台、用于资金跟踪和调查的MetaSleuth 平台以及MetaSuites 扩展,帮助 Web3 建设者在加密世界中高效冲浪。
迄今为止,该公司已为 MetaMask、Uniswap Foundation、Compound、Forta 和 PancakeSwap 等 300 多家知名客户提供了服务,并在经纬创投、Vitalbridge Capital 和 Fenbushi Capital 等知名投资者的两轮融资中获得了数千万美元的投资。
官方 Twitter 帐户:https://twitter.com/BlockSecTeam



