标题 简介 公开时间
关联规则 关联知识 关联工具 关联文档 关联抓包
参考1(官网)
参考2
参考3
详情
[SAFE-ID: JIWO-2019-2312]   作者:Taber 发表于[2019-03-06]

本文共 [5] 位读者顶过

[出自:jiwo.org]

基于上面的脚本和ELF样本分析可以发现整体入侵和感染流程大概为:

1. 通过Redis未授权访问漏洞入侵机器并修改crontab任务;或者通过遍历known_hosts中的连接历史进行横向扩展;

2. crontab任务执行bash脚本,进行相关清理和下载执行恶意程序watchdogs并横向扩展:

a)      覆写crontab任务;

b)      清理其他恶意程序;

c)      解锁删除相关系统文件;

d)      下载执行watchdogs

e)      横向扫描其他机器;

f)       清理相关文件和痕迹。

3. watchdogs执行实现写开机启动、服务项并释放动态链接库实现隐藏,同时释放执行挖矿程序:

a)      获取进程ID/tmp/.lsdpid

b)      /tmp目录下的watchdogs复制到/usr/sbin/目录并加入开机启动项和服务项;

c)      释放libioset.so并写入/etc/ld.so.preload实现进程等隐藏;

d)      访问ident.me获取机器外网IP

e)      再次覆写crontab任务;

f)       释放挖矿程序ksoftirqds和配置文件config.json并执行;

g)      删除相关生成的文件并检查更新。

最终完成了一个漏洞利用到植入挖矿程序,同时隐藏和横向感染的过程。

而相对与过去我们分析过的隐藏进程的挖矿病毒,在该病毒释放的动态链接库中同步对unlink函数进行了过滤,过滤名称同时包含ld.so.preloadlibioset.so,而同时由于删除、查看等系统命令函数也受过滤影响,就导致通过常规自带的方法无法直接删除libioset.so或者修改ld.so.preload解除恶意进程的隐藏,只能通过busybox 来实现对这些文件的删除清理。

在我们将/usr/local/lib/libioset.so文件清理后,就可以通过top命令看到执行的挖矿进程。

通过捕获的钱包地址查看黑客收益:

(数据来源:f2pool 

该钱包总收益约为56.5门罗币,约合1.9万人民币,过去24小时内收益1.3门罗币,当前算力约为430KH/S

 

修复建议和清理方法

修复建议

Redis未授权访问:

1、为 Redis 添加密码验证(重启Redis才能生效);

2、禁止外网访问 Redis(重启Redis才能生效);

3、以低权限运行Redis服务(重启Redis才能生效) 详细操作请参考:http://bbs.qcloud.com/thread-30706-1-1.html

内网感染:

1、建议不要将连接机器的私钥直接放在服务器上,如有必要建议添加密码;

2、建议通过有限的机器作为跳板机实现对其他内网机器的访问,避免所有机器的随意互联互通,跳板机不要部署相关可能存在风险的服务和业务。

挖矿木马清理方法

1、删除恶意动态链接库/usr/local/lib/libioset.so

2、排查清理/etc/ld.so.preload中是否加载1中的恶意动态链接库;

3、清理crontab异常项,删除恶意任务(无法修改则先执行5-a)

4kill 挖矿进程;

5、排查清理可能残留的恶意文件:

a)      chattr -i /usr/sbin/watchdogs /etc/init.d/watchdogs /var/spool/cron/root /etc/cron.d/root

b)      chkconfig watchdogs off

c)      rm -f /usr/sbin/watchdogs /etc/init.d/watchdogs

6、相关系统命令可能被病毒删除,可通过包管理器重新安装或者其他机器拷贝恢复;

7、由于文件只读且相关命令被hook,需要安装busybox通过busybox rm命令删除;

8、部分操作需要重启机器生效。

评论

暂无
发表评论
 返回顶部 
热度(5)
 关注微信