安全第一 | 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 帐号,了解最新动态。

Subscribe to web3eye.eth
Receive the latest updates directly to your inbox.
Verification
This entry has been permanently stored onchain and signed by its creator.