关于Dr.Mine

Dr.Mine是一款功能强大的Node脚本,该脚本旨在帮助广大研究人员以自动化的形式检测浏览器内的挖矿(加密)劫持行为。检测浏览器中发生的事情,最准确方法是通过浏览器本身。因此,Dr.Mine使用了puppeteer来自动化捕捉浏览器发送的任何在线加密货币挖矿请求。当检测到任何与在线加密货币挖矿相关的请求时,该工具都会标记相应的URL和正在使用的加密货币挖矿工具。因此,无论代码是如何编写或混淆的,Dr.Mine都会捕捉到它。其中,加密货币挖矿工具列表是从CoinBlockerLists获取的,结果也会保存到文件中以供研究人员后续使用。

工具运行机制

1、首先,该工具会直接对通过命令行传递进来的单个URL地址进行解析;

2、处理第一个请求页面中所有发现的同源链接地址;

3、所有的配置选项都存储在config.js文件中,以便用户修改;

4、为了减少额外的带宽和资源消耗,工具不会对如字体、图像、媒体和样式表之类的资源发送请求;

值得一提的是,该工具还使用了bluebird来提升工具的运行速度和效率。

工具依赖&安装

下列三行命令可以帮助广大研究人员在Arch发行版系统中完成Dr.Mine的安装和配置:

pacman -S nodejs npm

git clone https://github.com/1lastBr3ath/drmine.git && cd drmine

npm install

需要注意的是,请确保你使用了Node v7.6.0+版本环境。

工具使用

Dr.Mine支持接受一个URL地址或一个文件作为输入参数,文件中则需要包含有效的URL地址,使用样例如下:

node drmine.js list.txt

其中的list.txt内容样例如下:

http://cm2.pw

http://cm2.pw/xmr/

https://example.com/

如果需要直接通过命令行解析目标URL地址的话,可以使用下列命令:

node drmine.js http://cm2.pw/xmr/

工具运行截图

项目地址

Dr.Mine:【GitHub传送门

参考资料

https://github.com/GoogleChrome/puppeteer

https://gitlab.com/ZeroDot1/CoinBlockerLists

https://github.com/petkaantonov/bluebird

https://nodejs.org/en/download/package-manager/

https://docs.npmjs.com/getting-started/installing-node

https://github.com/puppeteer/puppeteer#puppeteer-core

本文作者:Alpha_h4ck, 转自FreeBuf