漏洞说明
这个漏洞的突然蹿红与近一年来比特币的价格飞涨有关,因为这个漏洞很容易被利用,而服务器的硬件配置,包括CPU、网络环境、存储等,一般来说相对较好,正适合拿来做挖矿的肉鸡。
被感染的weblogic主机表现非常明显,CPU资源使用率超高,频繁宕机;在Unix环境下用top命令可以看到watch-smartd、minerd等进程,在Windows环境一般能见到yam.exe。
修复建议
实际上,这并不是一个特别新的漏洞,在17年10月的时候Oracle已经为这个漏洞(CVE-2017-10271)发布了正式补丁,我们的大部分客户也已经陆陆续续做了相关修复。
基于Oracle的产品支持策略,补丁是针对受影响的可支持版本提供的,有补丁的weblogic版本包括:
但实际上受影响的版本并不限于以上几个,理论上只要包含了wls wsat组件的版本都有漏洞风险。只不过它们超出了服务范围,因此没有补丁可以下载。
对于有补丁的版本,更新170717的CPU是最稳妥的方案;而对于没有补丁的版本,通过删除wsat相关组件进行规避同样是可行的。打补丁属于最常规的基础操作,这里不再重复。
关于wsat包的删除
首先我们看一下关于wsat的说明:
WebLogicWeb services enable interoperability with other external transaction processingsystems, such as Websphere, JBoss, Microsoft .NET, and so on, through thesupport of the following specifications:
Web Services Atomic Transaction(WS-AtomicTransaction) Versions 1.0, 1.1, and 1.2
也就是说,从10.3.3开始,weblogic引入了wsat包来支持Web Services Atomic Transaction,而挖矿程序正是利用了这个组件的远程命令执行漏洞。由于客户的绝大部分业务环境中是没有使用涉及外部事务处理的web service的,因此可以根据WebLogic实际环境删除相关war包;对于怀疑已经被植入挖矿程序的系统,还需要清理缓存($DOMAIN_HOME/servers/XXXXX/目录下的cache、tmp、stage等目录)。
为保证包都被找到,建议通过find进行查找,然后rm删除。
Weblogic 11g示例:
WebLogic 12c示例:
所有操作应当在weblogic server停止的情况下完成,清理完毕后重新启动weblogic。重启WebLogic后,可以尝试访问http://x.x.x.x:yyyy/wls-wsat,如果无法访问,则说明删除成功。
当然,万一这个包真的对业务程序有用,那么理论上在应用包里也会包含相关内容,删除weblogic自带的包并不会有什么影响。但这样的话就必须把weblogic升级到可支持版本然后打上补丁了。
相关文档
https://support.oracle.com/epmos/faces/DocumentDisplay?id=2296870.1
https://support.oracle.com/epmos/faces/DocumentDisplay?id=1313723.1
原创文章,版权归本文作者所有,如需转载或合作,请务必联系我们
领取专属 10元无门槛券
私享最新 技术干货