# Web3.0移动钱包新型骗局揭秘:模态钓鱼攻击近期,我们发现了一种针对Web3.0移动钱包的新型网络钓鱼技术,这种技术可能会误导用户在连接去中心化应用(DApp)时做出错误判断。我们将这种新型网络钓鱼技术命名为"模态钓鱼攻击"(Modal Phishing)。在这种攻击中,黑客可以向移动钱包发送伪造信息,冒充合法DApp,并通过在钱包的模态窗口中显示误导性信息来诱骗用户批准交易。目前,这种网络钓鱼技术正在被广泛使用。我们已经与相关组件开发人员进行了沟通,他们表示将发布新的验证API以降低这一风险。## 模态钓鱼攻击的原理在对移动钱包进行安全研究时,我们注意到Web3.0加密钱包的某些用户界面(UI)元素可能被攻击者控制,从而进行网络钓鱼攻击。之所以称之为模态钓鱼,是因为攻击者主要针对加密钱包的模态窗口进行操作。模态窗口是移动应用程序中常用的UI元素,通常显示在应用程序主窗口顶部。这种设计常用于方便用户执行快速操作,如批准或拒绝Web3.0加密钱包的交易请求。典型的Web3.0加密钱包模态窗口设计通常提供必要的交易信息供用户检查,以及批准或拒绝请求的按钮。然而,这些用户界面元素可能被攻击者控制,用于实施模态钓鱼攻击。攻击者可以更改交易细节,将交易请求伪装成来自可信来源的安全更新请求,以诱使用户批准。## 模态钓鱼攻击的两个典型案例### 案例1:通过Wallet Connect进行DApp钓鱼攻击Wallet Connect是一个广受欢迎的开源协议,用于通过二维码或深度链接将用户的钱包与DApp连接。在Web3.0加密钱包和DApp的配对过程中,钱包会显示一个模态窗口,展示传入配对请求的元信息,包括DApp的名称、网站地址、图标和描述。然而,这些信息是由DApp提供的,钱包并不验证其真实性。在网络钓鱼攻击中,攻击者可以假冒合法DApp,诱骗用户与其连接。攻击者可以控制DApp信息UI元素(如名称、图标等),从而欺骗用户批准传入的交易。### 案例2:通过MetaMask进行智能合约信息网络钓鱼在MetaMask的交易批准模态窗口中,除了DApp信息外,还有一个显示交易类型的UI元素。MetaMask会读取智能合约的签名字节,并使用链上方法注册表查询相应的方法名称。然而,这也可能被攻击者利用。攻击者可以创建一个钓鱼智能合约,其中包含一个名为"SecurityUpdate"的函数,并将其注册为人类可读的字符串。当MetaMask解析这个钓鱼智能合约时,它会在批准模态中向用户呈现这个函数名称,使交易看起来像是一个安全更新请求。## 防范建议1. 钱包应用程序开发者应该始终假设外部传入的数据是不可信的,仔细选择向用户展示哪些信息,并验证这些信息的合法性。2. 用户应对每个未知的交易请求保持警惕,不要轻易相信模态窗口中显示的信息。3. Wallet Connect等协议开发者应考虑提前验证DApp信息的有效性和合法性。4. 钱包应用开发者应采取预防措施,过滤可能被用于网络钓鱼攻击的词语。总之,模态钓鱼攻击的根本原因在于钱包应用程序没有彻底验证所呈现UI元素的合法性。为了确保Web3.0生态系统的安全,开发者和用户都需要提高警惕,采取必要的防护措施。
Web3移动钱包遭遇模态钓鱼攻击 用户需警惕新型骗局
Web3.0移动钱包新型骗局揭秘:模态钓鱼攻击
近期,我们发现了一种针对Web3.0移动钱包的新型网络钓鱼技术,这种技术可能会误导用户在连接去中心化应用(DApp)时做出错误判断。我们将这种新型网络钓鱼技术命名为"模态钓鱼攻击"(Modal Phishing)。
在这种攻击中,黑客可以向移动钱包发送伪造信息,冒充合法DApp,并通过在钱包的模态窗口中显示误导性信息来诱骗用户批准交易。目前,这种网络钓鱼技术正在被广泛使用。我们已经与相关组件开发人员进行了沟通,他们表示将发布新的验证API以降低这一风险。
模态钓鱼攻击的原理
在对移动钱包进行安全研究时,我们注意到Web3.0加密钱包的某些用户界面(UI)元素可能被攻击者控制,从而进行网络钓鱼攻击。之所以称之为模态钓鱼,是因为攻击者主要针对加密钱包的模态窗口进行操作。
模态窗口是移动应用程序中常用的UI元素,通常显示在应用程序主窗口顶部。这种设计常用于方便用户执行快速操作,如批准或拒绝Web3.0加密钱包的交易请求。典型的Web3.0加密钱包模态窗口设计通常提供必要的交易信息供用户检查,以及批准或拒绝请求的按钮。
然而,这些用户界面元素可能被攻击者控制,用于实施模态钓鱼攻击。攻击者可以更改交易细节,将交易请求伪装成来自可信来源的安全更新请求,以诱使用户批准。
模态钓鱼攻击的两个典型案例
案例1:通过Wallet Connect进行DApp钓鱼攻击
Wallet Connect是一个广受欢迎的开源协议,用于通过二维码或深度链接将用户的钱包与DApp连接。在Web3.0加密钱包和DApp的配对过程中,钱包会显示一个模态窗口,展示传入配对请求的元信息,包括DApp的名称、网站地址、图标和描述。
然而,这些信息是由DApp提供的,钱包并不验证其真实性。在网络钓鱼攻击中,攻击者可以假冒合法DApp,诱骗用户与其连接。攻击者可以控制DApp信息UI元素(如名称、图标等),从而欺骗用户批准传入的交易。
案例2:通过MetaMask进行智能合约信息网络钓鱼
在MetaMask的交易批准模态窗口中,除了DApp信息外,还有一个显示交易类型的UI元素。MetaMask会读取智能合约的签名字节,并使用链上方法注册表查询相应的方法名称。然而,这也可能被攻击者利用。
攻击者可以创建一个钓鱼智能合约,其中包含一个名为"SecurityUpdate"的函数,并将其注册为人类可读的字符串。当MetaMask解析这个钓鱼智能合约时,它会在批准模态中向用户呈现这个函数名称,使交易看起来像是一个安全更新请求。
防范建议
钱包应用程序开发者应该始终假设外部传入的数据是不可信的,仔细选择向用户展示哪些信息,并验证这些信息的合法性。
用户应对每个未知的交易请求保持警惕,不要轻易相信模态窗口中显示的信息。
Wallet Connect等协议开发者应考虑提前验证DApp信息的有效性和合法性。
钱包应用开发者应采取预防措施,过滤可能被用于网络钓鱼攻击的词语。
总之,模态钓鱼攻击的根本原因在于钱包应用程序没有彻底验证所呈现UI元素的合法性。为了确保Web3.0生态系统的安全,开发者和用户都需要提高警惕,采取必要的防护措施。