7?月?17日,据慢雾区情报反馈,Premint遭遇黑客攻击。慢雾安全团队在第一时间进行分析和预警。
本文来自慢雾区伙伴ScamSniffer的投稿,具体分析如下:
攻击细节
打开任意Premint项目页面,可以看到有个cdn.min.js注入到了页面中,看调用栈该js是由(https://s3-redwood-labs.premint.xyz/theme/js/boomerang.min.js)注入,目前该s3-redwood-labs-premint-xyz.com域名已经停止解析,无法正常访问了。
华策影视:公司元宇宙业务在当前阶段以内容为主:7月18日消息,华策影视表示,公司元宇宙业务在当前阶段以内容为主,现阶段在数字藏品、影视协同宣发、虚拟角色创作和运营等方面处于探索和尝试阶段,已推出多轮数字藏品发行等,其未来进展存在较大不确定性,对公司当期业务影响较小,公司提醒广大投资者审慎决策、理性投资,注意风险。[2022/7/18 2:19:48]
查询Whois,该域名在2022-07-16注册于TucowsDomainsInc:
打开virustotal.com可以看到该域名之前曾解析到CloudFlare:
元宇宙服务商宙予科技获数千万元战略融资,蓝色光标等参投:6月14日消息,元宇宙营销技术服务商宙予科技昨日宣布,已完成数千万元战略融资,险峰K2VC、凡创资本和蓝色光标等参投。本轮融资过后,宙予科技将继续扩大团队规模、优化产品服务、完善引擎等基础能力的建设。
宙予科技成立于2019年,公司定位于“帮助电商平台和品牌方迈入元宇宙的技术服务商”,有AI虚拟主播“宙予全天播”等产品。宙予科技是京东618元宇宙项目的独家技术服务商,还是京东其他生态平台的服务商。(ZAKER)[2022/6/14 4:24:48]
打开源代码可以看到boomerang.min.js是Premint用到的一个UI库:
苏宁易购与元初世界合作推出元宇宙农业电商项目:4月22日消息,苏宁易购与元初世界合作落地元宇宙农业电商项目“五个农民数字奶牛”,消费者可在虚拟牧场养殖,在元宇宙内实现确权、流转交易与产奶收益,在现实生活中收到高品质牛奶商品。据悉,“五个农民”是苏宁易购旗下苏宁宜品的生态圈品牌,主打肉禽蛋奶生鲜果蔬等生鲜品类。(中华网)[2022/4/22 14:41:26]
该js是在s3-redwood-labs.premint.xyz域名下,猜测:
上传文件接口有漏洞可以上传任意文件到任意Path
黑客拿到了他们这个AmazonS3的权限,从而可以注入恶意代码
这个第三方库被供应链攻击污染了
把boomerang.min.js代码下载下来,前面都是正常的代码,但是末尾有一段经过加密的代码:
Web3社交媒体Metalk推特宣布将于今日开启NFT元宇宙篮球赛:金色财经消息,日前世界重量级拳击冠军泰森(Mike Tyson)于推特宣布担任Web3社交媒体Metalk社区大使,并表示要与Metalk一起打破Web2社交媒体框架。
今日Metalk再创NFT新玩法,宣布举办ALL STAR 2022 Metalk元宇宙篮球赛,BAYC、CryptoPunks、Azuki等十个蓝筹项目的持有者可以参与比赛,赢取总价值高达1000枚ETH的空投和奖励,包含210枚ETH、3500万枚META和MNS,MNS(Metalk Name Service)是Metalk用户数字身份,同时持有MNS可以获得Dialoger - Metalk Genesis白名单。[2022/4/2 14:01:08]
数据:99.9%的“元宇宙”商标在2021年申请,北京申请数量最多:11月17日消息,数据显示,截至11月17日,我国共申请“元宇宙”商标达4368件,涉及公司达689家。其中2021年申请了4366件,涉及公司688家。也就是说,99.9%的“元宇宙”商标均于2021年注册申请。逐月来看,今年9月共申请“元宇宙”商标1995件,10月共申请“元宇宙”商标1515件,是今年的申请高峰月。此外,从“元宇宙”相关商标的注册地分布来看,广东以1295件位列第一,其次是北京、浙江,分别有810件、545件。(企查查)[2021/11/17 6:56:03]
这段代码负责把代码s3-redwood-labs-premint-xyz.com/cdn.min.js注入到页面。
恶意代码cdn.min.js
根据代码内容,可以大致看到有通过调用dappradar.com的接口来查询用户的NFT资产列表。
如果用户持有相关NFT资产:
恶意代码会以Two-stepwallet验证的借口,发起setApprovalForAll让用户授权给他们后端接口返回的地址。
如果用户点了Approve,攻击者还会调用监测代码通知自己有人点击了:
如果当用户地址没有NFT资产时,它还会尝试直接发起转移钱包里的ETH的资产请求:
另外这种代码变量名加密成_0xd289_0x开头的方式,我们曾经在play-otherside.org,thesaudisnfts.xyz这些钓鱼网站也见到过。
根据用户资产发起setApprovalForAll或者直接转移ETH,并且阻止用户使用开发者工具debug。
预防方式
那么作为普通用户如何预防?现阶段MetaMask对ERC721的setApprovalForAll的风险提示,远没有ERC20的Approve做得好。
即使很多新用户无法感知到这个行为的风险,但我们作为普通用户看到带Approve之类的交易一定要仔细打开授权给相关地址,看看这些地址最近的交易是否异常,避免误授权!
这种攻击和上次Etherscan上Coinzilla利用广告注入恶意的攻击方式挺相似的,那么在技术上有没有可能预防?
理论上如果已知一些恶意js代码的行为和特征:
比如说代码的加密方式
恶意代码关键特征
代码会反debug
会调用opensea,debank,dappradar等API查询用户资产
根据这些恶意代码的行为特征库,那么我们可以尝试在客户端网页发起交易前,检测页面有没有包含已知恶意特征的代码来探测风险,或者直接更简单一点,对常见的网站设立白名单机制,不是交易类网站发起授权,给到足够的风险提醒等。
接下来ScamSniffer和慢雾安全团队也会尝试探索一下如何在客户端来预防此类的攻击发生!
Ps.感谢作者ScamSniffer的精彩分析!
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。