一款新型的Linux挖矿木马来袭

2018-11-17 小惟 116

#

事件描述

样本分析

1.对一系列矿池地址进行DNS查询请求,如下:

图片1.png相应的矿池地址列表如下:

pool.minexmr.com、xmr-eu1.nanopool.org、xmr-eu2.nanopool.org

xmr-us-east1.nanopool.org、xmr-us-west1.nanopool.org、xmr-asia1.nanopool.org

xmr-jp1.nanopool.org、xmr-au1.nanopool.org、xmr.crypto-pool.fr

fr.minexmr.com、de.minexmr.com、ca.minexmr.com、sg.minexmr.com

pool.supportxmr.com、xmr-usa.dwarfpool.com、xmr-eu.dwarfpool.com

xmr.prohash.net、xmrpool.eu、mine.ppxxmr.com、jw-js1.ppxxmr.com

xmr.f2pool.com、xmr.pool.minergate.com、monerohash.com

pool.monero.hashvault.pro、gulf.moneroocean.stream

us-east.cryptonight-hub.miningpoolhub.com

europe.cryptonight-hub.miningpoolhub.com

asia.cryptonight-hub.miningpoolhub.com

2.通过chattr -i删除掉文件保护属性,重新感染主机系统,如下:

图片2.png3.通过进程/proc/[进程ID]/exe,获取文件的路径,如下:

图片3.png4.在内存中拼接字符串,如下所示:

图片4.png相应的命令行如下:

图片5.png5.运行/bin/sh执行之前拼接出来的命令,复制自身,添加相应的自启动项,进行持久化操作,如下所示:

图片6.png相应的反汇编代码如下:

图片7.png6.通过rm -f进行自删除操作,如下:

图片8.png7.修改resolv.conf配置文件,如下:

图片9.png相应的反汇编代码如下:

图片10.png修改之后的resolv.conf文件如下:

图片11.png8.修改crontab定时任务文件,如下:

图片12.png相应的反汇编代码,如下:

图片13.png9.修改之后的定时文件内容,如下:

图片14.png10.判断是否可以读取如下文件,如下:

图片15.png11.修改原系统中的top程序,如下:

图片16.png将内存中的数据,写入新生成的top程序,如下:

图片17.png12.修改复制后的文件保护属生,如下:

图片18.png13.生成临时记录文件mmlog,如下:

图片19.png14.设置系统内存属性等,如下:

图片20.png15.干掉其它网络请求程序,如下:

图片21.png16.干掉其它挖矿进程,如下:

图片22.png通过/bin/sh执行如下命令:

图片23.png17.启动新的挖矿进程,然后进行挖矿操作,挖矿的进程名从列表中随机选取,如下:

图片24.png随机进程列表如下:

[aio][async][ata][ata_aux][bdi-default][cpuset][crypto][ecryptfs-kthrea]

[events][ext4-dio-unwrit][flush-251:0][flush-8:0][jbd2][kacpi_hotplug]

[kacpi_notify][kacpid][kblockd][kconservative][kdmflush][khelper][khubd]

[khungtaskd][kintegrityd][kmmcd][kmpath_handlerd][kmpathd][kondemand]

[kpsmoused][kseriod][ksmd][ksnapd][ksoftirqd][kstriped][ksuspend_usbd]

[kswapd0][kswapd1][kthreadd][migration][netns][pm][scsi_eh_0][sync_supers]

[usbhid_resumer][watchdog][xfs_mru_cache][xfsaild][xfsbufd][xfsconvertd]

[xfsdatad][xfslogd][xfssyncd]

18.内置的挖矿程序,通过配置文件启动挖矿程序,进行挖矿,如下:

图片25.png19.同时发现程序内置了一个py脚本,执行下载执行程序,由于远程服务器地址失效了,无法下载相应的样本,导致无法分析,提取出来的相应的py脚本如下:

图片26.png20.抓获取的相应的数据包如下,此样本批量DNS请求相应的矿池地址,如下:

图片27.png挖矿的网络数据包,如下:

图片28.png跟踪TCP数据流如下:

图片29.png把矿池的IP地址到VT上进行查询,如下:

图片30.png钱包地址:

462ESZn57F4fBneHKXhnEM4TmgCvgrsErGJBLY1T61fmKGymjFuEZup6pnqhT3iJtw4fgbsjdPLwUgsGnr1zzDKuFSkZaF1

通过钱包地址查询,如下:

图片31.png

相关IOC

MD5

8D80041CDEA7DC172FFF87A6758ED548


解决方案

该Linux挖矿木马清除解决方案如下:

1.结束相关的进程,通过ps查找相关进程,挖矿的进程名在随机进程列表中

图片32.png进程[xfslogd]占用CPU较高,通过kill -9 24984结束此进程,同时可以看到此进程是由我们分析的母体进行创建的

图片33.png2.清理定时任务

图片34.png清除掉最后一行定时任各启动libiacpkmn.so.3

3.清除/usr/lib/目录下的libiacpkmn.so.3文件,清除文件保护属性后删除

图片35.png4.清除/bin和/etc/init.d两个目录下的nfstruncate文件,清除文件保护属性后删除

图片36.png

图片37.png

5.清除rc*.d文件下的文件链接,分别为rc0.d-rc6.d文件中的S01nfstruncate文件

图片38.png