web3eye.eth

Posted on Mar 29, 2022Read on Mirror.xyz

安全第一 | 1. 如何识别钓鱼攻击

“钓鱼攻击” 通常是攻击者伪装成项目官方人员,通过虚假的官网或叙述来显示其合法性,引诱用户暴露自己的私钥和助记词,或是欺骗用户进行资产授权和转账,从而达到窃取资产的目的。常见的欺诈方式主要有以下几种:

冒充官方人员发送 Discord 私信

攻击者将 Discord 的头像和昵称修改为具有迷惑性的名称(类似 Mod、Announcement、管理员等),通过私信的方式发送虚假 mint NFT 的网址;或是在私信中提示在抽奖中已获得 NFT 白名单,并附上 mint NFT 网址,诱导用户向该地址转账。当用户打开网址连接 MetaMask 钱包发起转账时,攻击者还会刻意的将普通转账的 gasLimit 设置为大于 21000,让用户误以为是在与合约交互。

因为欺诈成本较低,这类攻击在多个热门项目中都曾出现过,初次接触 NFT 项目的小白用户容易被蒙骗。

官方 Discord 权限被盗

很多项目方安全意识薄弱,对 Discord 权限配置不熟悉,内部权限管控不严,导致权限被盗的事件时有发生;当攻击者拿到权限后发送虚假网址信息,用户看到消息是官方渠道发出的,也降低了警惕度,从而让攻击者有机可乘。

例如,社区 Mod 管理员账户未设置二次验证,账户被盗后,攻击者通过被盗 Mod 账户向用户发送私信;Discord 群组聊天频道权限配置有误,允许任何人 @evenyone 发送公告信息。其中不乏存在由于项目方管理员权限丢失,上万人的 Discord 社区被攻击者劫持,导致项目方不得不重新创建 Discord 社区的事件。

PaNews @PANewsCN 在快讯中披露过多起类似事件,这里不再赘述。

更多伪装欺诈的方式..

在 Google 搜索出来虚假的网址相似网站,通过冒充 OpenSea 官方发送邮件等,诸如此类的伪装手段层出不穷。此前,我们也揭露过使用 Twitter 蓝标认证用户发布虚假空投消息,盗取用户 NFT 资产的事件,攻击者在钓鱼网站中,检查了用户地址中是否存在值钱的 NFT 资产,点击领取空投按钮,就会发起转移 NFT 资产的交易;为了避免被追踪,攻击者还会定时更换接收窃取 NFT 和 Token 资产的收款地址。

所有的钓鱼攻击都是通过伪装获取用户信任后,骗取用户资产;当攻击者通过欺诈信息,将用户引导到精心准备的虚假网站中,才完成了第一步。攻击者是如何窃取用户钱包里的资产的?

索要私钥

当用户打开虚假网站连接钱包后(如下图,伪造的 OpenSea 虚假网页),比较直白的方式,会让用户直接填写私钥。当你填写后,这个钱包的资产就不再属于你了,会被攻击者的清道夫程序时刻监控起来,不仅会将当前地址中的资产席卷一空,还会将后续向该地址转移的任何资产快速清空。

直接转账

在虚假网页中展示倒计时,或动态减少的剩余可 mint 数量,利用用户的 fomo 心态,让用户来不及仔细辨别发起交易的详细信息;用户唤醒 MetaMask 弹窗,直接向攻击者地址转移 Token 或 NFT 资产,等到交易成功后才追悔莫及。

骗取签名

当用户在虚假网页中点击领取空投或铸造 NFT 按钮时,唤醒 MetaMask 让用户进行签名。例如 Dai Token 合约实现了 EIP-2612 中的 permit 函数,只需要通过签名就可以操作用户地址的 Dai 资产,而不需要用户发起一笔上链的交易。攻击者拿到签名后,就可以神不知鬼不觉的将地址中的 Dai 资产转走。

授权交易

在虚假网页中,如果发起的交易是将地址中的 Token 资产或 NFT 资产授权给攻击者地址操作,那么该地址中对应的资产对于攻击者来说,犹如探囊取物。需要尽快取消授权,我们可以通过 etherscan 查询 Token 授权情况。

上面列举了一些比较常见的钓鱼攻击方式,实际场景中还有更多变化多端的欺诈手段,比如 NFT 稀有度插件拥有修改网页的权限, 可以在用户访问正确的网站时,篡改发起交易的目标地址。

防止被钓鱼的措施

  1. 不点击不明链接,就算是官方发出的链接也需要多方确认
  2. 不在任何地方填写私钥或助记词
  3. 发起交易时,看清钱包弹窗中的详细信息(签名、授权、交易)再确认
  4. 不安装来路不明的插件或者软件

如果已经被钓鱼攻击导致资产损失,可以及时反馈给项目方或求助安全公司(知道创宇 https://knownseclab.com),对攻击者地址进行同源分析和资金流向分析,并监控地址交易异动信息。

关于我们

Web3Eye 是一个专注于技术研究和分享的 Web3 加密技术社区,团队拥有多年区块链研发经验和安全技术能力,以帮助更多人安全地进入 Web3 世界,欢迎关注我们的 Twitter 帐号,了解最新动态。