事件背景
5月25日,推特用户@0xLosingMoney称监测到ID为@Dvincent_的用户通过钓鱼网站p2peers.io盗走了29枚Moonbirds系列NFT,价值超70万美元,钓鱼网站目前已无法访问。该用户表示,域名sarek.fi和p2peers.io都曾在过去的黑客事件中被使用。
搜集相关信息
慢雾安全团队收到相关情报并针对此次被盗事件进行朔源分析。我们开始在Twitter上搜集并分析此钓鱼事件的相关信息时,发现@Dvincent_就是黑客的Twitter账号,目前该账户已经被注销。而根据5月10日的记录,推特用户@just1n_eth就表示@Dvincent_曾与其联系交易BAYCNFT,但由于对方坚持使用p2peers.io,交易最后并未达成。
在该推特评论下用户@jbe61表示自己曾遇到同一个人并给出了对话截图:
5月25日晚,@0xLosingMoney继续在Twitter公布了黑客的钱包等相关信息。
下面是@0xLosingMoney给出的黑客地址:?0xe8250Bb4eFa6D9d032f7d46393CEaE18168A6B0D?0x8e73fe4d5839c60847066b67ea657a67f42a0adf?0x6035B92fd5102b6113fE90247763e0ac22bfEF63?0xBf41EFdD1b815556c2416DcF427f2e896142aa53?0x29C80c2690F91A47803445c5922e76597D1DD2B6相关地址分析
由于整个被盗事件都提到“p2peers.io”这个钓鱼网站,所以我们从此处开始入手。这个在芬兰某域名公司注册的p2peers网站已被暂停使用,我们最终在谷歌网页快照中寻找到了该网站首页的信息。
根据网页快照可以发现https://p2peers.io/的前端代码,其中主要的JS代码是“js/app.eb17746b.js”。由于已经无法直接查看JS代码,利用Cachedview网站的快照历史记录查到在2022年4月30日主要的JS源代码。
通过对JS的整理,我们查到了代码中涉及到的钓鱼网站信息和交易地址。在代码912行发现approve地址:0x7F748D5fb52b9717f83Ed69f49fc4c2f15d83b6A
在代码3407行同样发现关于approve相关操作的地址:0xc9E39Ad832cea1677426e5fA8966416337F88749
我们开始分析这两个地址的交易记录:0x7F748D5fb52b9717f83Ed69f49fc4c2f15d83b6A0xc9E39Ad832cea1677426e5fA8966416337F88749首先在Etherscan查询发现0x7F7...b6A是一个恶意合约地址:
而这个恶意合约的创建者是地址:0xd975f8c82932f55c7cef51eb4247f2bea9604aa3,发现这个地址有多笔NFT交易记录:
我们在NFTGO网站进一步查看,根据该地址目前NFT持有情况,发现被盗NFT目前都停留在此地址上还没有售出,总价值约为225,475美元。
而使用NFTSCAN发现NFT数量一共是21个,价值96.5枚ETH。
继续使用MistTrack分析攻击者地址交易历史:
可以发现该地址的ETH交易次数并不多只有12次,余额只有0.0615枚ETH。
0xc9E39Ad832cea1677426e5fA8966416337F88749也是合约地址,合约创建者是0x6035B92fd5102b6113fE90247763e0ac22bfEF63,这个地址在@0xLosingMoney公布的黑客地址名单中也有提到。
使用MistTrack发现这个地址余额同样不多,入账有21笔而出账有97笔,其中已转出共106.2枚ETH。
查看入账和出账信息,可以发现多笔转到Tornado.Cash,说明黑客已经通过各种手法将盗来的币进行来转移。黑客使用moralis服务作恶
我们在JS代码409行发现使用到了域名为usemoralis.com的服务接口:
其中2053端口是API地址,而2083端口则是后台登录地址。
通过查询发现usemoralis.com这个域名上有大量NFT相关网站,其中不少是属于钓鱼网站。通过谷歌搜索发现不少NFT的站点,并发现多个子域信息。
于是我们遍历和查询usemoralis.com的子域名,发现共存在3千多个相关子域站点部署在cloudflare上。
进一步了解我们发现这些站点都是来自moralis提供的服务:
moralis是一个专门提供针对Web3开发和构建DApps的服务。
我们发现注册后就可以得到接口地址和一个管理后台,这使得制作钓鱼网站作恶成本变得非常低。
发现后台并关联到钓鱼事件
继续分析JS代码,在368行发现有将受害者地址提交到网站域名为pidhnone.se的接口。
经过统计,域名为pidhnone.se的接口有:https://pidhnone.se/api/store/loghttps://pidhnone.se/api/self-spoof/https://pidhnone.se/api/address/https://pidhnone.se/api/crypto/进一步分析发现https://pidhnone.se/login其实是黑客操作的控制后台,用来管理资产等信息。
根据后台地址的接口拼接上地址,可以看到攻击地址和受害者的地址。
后台还存留关于图片信息和相关接口操作说明文字,可以看出来是非常明显的网站操作说明。
我们分析后台里面涉及的信息,如图片:https://pidhnone.se/images/recent.png?f53959585e0db1e6e1e3bc66798bf4f8https://pidhnone.se/images/2.gif?427f1b04b02f4e7869b1f402fcee11f6https://pidhnone.se/images/gif.gif?24229b243c99d37cf83c2b4cdb4f6042https://pidhnone.se/images/landing.png?0732db576131facc35ac81fa15db7a30https://pidhnone.se/images/ss-create.png?1ad1444586c2c3bb7d233fbe7fc81d7dhttps://pidhnone.se/images/self-spoof.png?25e4255ee21ea903c40d1159ba519234这里面涉及黑客历史使用过的的钓鱼网站信息,如nftshifter.io:
以nftshifter.io这个钓鱼网站为例:
在Twitter上查找相关记录可以看到2022年3月25日有受害者访问过该钓鱼网站并公布出来。
使用相同的方式分析nftshifter.io:
得到JS源代码并进行分析:
可以发现同样也是采用moralis的服务和https://pidhnone.se/这个后台进行控制。其中相关的恶意地址:钓鱼者合约:0x8beebade5b1131cf6957f2e8f8294016c276a90f合约创建者:0x9d194CBca8d957c3FA4C7bb2B12Ff83Fca6398ee创建合约时间:Mar-24-202209:05:33PM+UTC
同时我们发现与这个攻击者相同的恶意合约代码有9个:
随机看一个恶意合约0xc9E...749,创建者地址为0x6035B92fd5102b6113fE90247763e0ac22bfEF63:
相同的手法,都已经洗币。每个恶意合约上都已经有受害者的记录,此处不一一分析。我们再来看下受害者时间:
刚好是在攻击者创建恶意钓鱼之后,有用户上当受。攻击者已将NFT售出,变卖为ETH,我们使用MistTrack分析攻击者地址0x9d194cbca8d957c3fa4c7bb2b12ff83fca6398ee:
可以看到51ETH已经转入Tornado.Cash洗币。同时,目前Twitter上攻击者的账户@nftshifter_io已经被冻结无法查看。总结
可以确认的是,攻击一直在发生,而且有成熟的产业链。截止到发文前黑客地址仍有新的NFT入账和交易进行。黑客进行钓鱼攻击往往已成规模化批量化,制作一个钓鱼模版就可以批量复制出大量不同NFT项目的钓鱼网站。当作恶成本变得非常低的时候,更需要普通用户提高警惕,加强安全意识,时刻保持怀疑,避免成为下一个受害者。如何避免陷入欺诈的境地?慢雾安全团队建议如下:1.不要点击来源不明的链接或附件,不要随意泄露您的助记词2.使用强密码并启用双重身份验证以保护您的帐户。3.不确定的情况下,向多方进行验证确认。4.不要在网上传输敏感信息,攻击者可以通过分析这些信息和数据向用户发送有针对性的网络钓鱼电子邮件。5.建议阅读:《区块链黑暗森林自救手册》
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。