WebLogic接二连三被曝漏洞,到底是为啥?
WebLogic是美国甲骨文(Oracle)公司的一款知名应用服务中间件,它被用来开发、集成、部署和管理多种大型分布式系统,极大的方便了系统管理,以及简化部署步骤,在世界范围内被广泛运用。在中国常见于电信、政府行业和金融行业。
CNVD秘书处对WebLogic服务在全球范围内的分布情况进行分析,结果显示该服务的全球用户规模约为6.9万,其中位于我国境内的用户规模约为2.9万。
WebLogic历代反序列化漏洞(不完全统计):
漏洞编号 | 涉及组件/协议 |
CVE-2015-4852 | T3协议 |
CVE-2016-0638 | T3协议 |
CVE-2017-3506 | http协议/wls-wsat组件 |
CVE-2017-10271 | http协议/wls-wsat组件 |
CVE-2018-2628 | T3协议 |
CVE-2018-2893 | T3协议 |
CNVD-C-2019-48814 | http协议/wls-wsat和wls9-async组件 |
本次!这个!
本次爆出的CNVD-C-2019-48814漏洞,存在于部分版本WebLogic默认包含的一级应用包wls9_async_response,该包为WebLogic sever提供异步通讯服务。由于该WAR包在反序列化处理输入信息时存在缺陷,攻击者可以发送精心构造的恶意HTTP请求,获得目标服务器的权限,在未授权的情况下远程执行命令。目前,官方补丁尚未发布,漏洞细节未公开。
CNVD对该漏洞的综合评级为“高危”。
影响版本如下:
WebLogic 10.X
WebLogic 12.1.3
▶▶什么是序列化和反序列化?
Java 序列化是指把Java对象转换为字节序列的过程,来便于保存在内存、文件、数据库中,反序列化即逆过程,由字节流还原成对象,ObjectInputStream类的 readObject()方法用于反序列化。
常见的应用场景例如处理Web服务器中的Session对象。当有大量用户并发访问时,会创建大量session对象,这种时候为了避免内存的大量消耗,Web容器就会把一些seesion先序列化到硬盘中,需要用时再把硬盘中的对象反序列化还原到内存中。
XML序列化同理,使用XMLDecoder解析,进行反序列化。
WebLogic在多种组件中进行了序列化反序列化过程。
▶▶为什么WebLogic的反序列化漏洞修修补补总是被爆出?
WebLogic反序列化漏洞的补丁大都采用黑名单方式过滤不安全的反序列化类,这种修复方式很容易被黑客绕过,典型例如一系列有关T3协议的反序列化漏洞。
历史曾加过的黑名单包括:
WebLogic.rjvm.InboundMsgAbbrev.class :: ServerChannelInputStream
WebLogic.rjvm.MsgAbbrevInputStream.class
WebLogic.iiop.Utils.class
WebLogic.jms.common.StreamMessageImpl
WebLogic.corba.utils.MarshalledObject
java.rmi.registry.Registry
java.rmi.activation.Activator
....................
全部列出来估计就“太长不看”了......
WebLogic的反序列化漏洞由于修补不完全,外加WebLogic使用面广漏洞可利用性高,影响面尤其广泛,很多漏洞的CVSS评分都是9.8、9.9甚至为10,多个漏洞被利用在黑产层面,例如挖矿程序。因此受关注度高,总被攻击者盯上,导致频繁被爆出漏洞。
▶▶什么是T3协议,什么是wls-wsat组件?
T3协议是WebLogic内部的通讯协议,并且默认都是开启的。
wls-wsat是WebLogic Server大部分版本都默认包含的核心组件之一。
▶▶针对以上漏洞,应该如何防御?
1.针对部分已提供补丁的漏洞,您可以通过及时更新官方补丁进行防御;
2.如果官方暂未发布正式修复补丁,可执行官方提供的缓解措施,如删除受影响的组件(该操作存在一定风险,修改前请备份)并重启服务器;
3.您可部署腾讯云Web应用防火墙,将业务通过Web应用防火墙进行代理转发,Web应用防火墙主动阻断T3协议,防止T3协议相关漏洞利用,同时可防御上诉非T3协议WebLogic漏洞。您还可以开启Web应用防火墙AI防御,AI智能学习,可针对不同的业务形态,对未知0day漏洞进行防御。
4.针对T3协议相关漏洞,除了执行以上步骤,您还可以
关闭受影响的协议进行缓解, WebLogic Server提供了名为
WebLogic.security.net.ConnectionFilterImpl
的默认连接筛选器,用户可通过控制T3协议的访问来临时阻断
Step1:打开WebLogic控制台,进入base_domain配置页面,找到右侧“安全”下方的“筛选器”页面,进入连接筛选器配置界面;
Step2:在连接筛选器中输入:WebLogic.security.net.ConnectionFilterImpl,在连接筛选器规则中输入:127.0.0.1 * * allow t3 t3s,0.0.0.0/0 * * deny t3 t3s(T3 和 T3S 协议的所有端口只允许本地访问);
Step3:保存后规则即可生效.无需重新启动。
5.针对wls-wsat组件相关漏洞,您还可以
1)通过访问策略控制禁止外部/_async/* 及 /wls-wsat/*路径的URL访问;
2)通过控制台云安全组限制指定源 IP 对WebLogic默认端口7001的访问,进行应用加固;
▶▶什么是腾讯云Web应用防火墙?
千余条防御规则全面防护各种Web入侵攻击,专业攻防团队7x24小时实时迭代防护系统,云端自动升级,保障您的网站防御系统永远处于行业前沿。
在防御永远比漏洞晚出现的情况下。Web应用防火墙使用AI学习经验数据,形成行为模型,然后对目标事件做出判断和预测,使产品具备自学习、自进化、自适应的特性,这从检测机制上改变了WAF应对未知0day攻击的被动局面。
将机器学习应用到WAF攻击检测中,理论上可以进一步提升当前传统WAF 的能力,帮助企业安全团队从被动防护的困局中突破出来。
有关AI WAF相关更多的信息,请点击:
AI in WAF | 腾讯云网站管家 WAF AI 引擎实践(下篇)
稳定的低延时高性能VIP专线服务,在隐藏保护源站IP的同时,优质加速线路可保障毫秒级业务延时。更为您提供BOT行为管理/智能防刷、DNS劫持监测、垃圾访问过滤等防护功能,更有价值,更满足业务安全运营和防护的需求。
一键无缝接入百G抗DDoS能力,应对敏感大流量DDoS攻击问题,无惧突发风险。
点击下方阅读原文,部署腾讯云Web应用防火墙
点右下角「在看」
开始我们的故事