CVE-2017-10271
CVE-2017-10271漏洞产生的原因大致是Weblogic的WLS Security组件对外提供webservice服务,其中使用了XMLDecoder来解析用户传入的XML数据,在解析的过程中出现反序列化漏洞,导致可执行任意命令。攻击者发送精心构造的xml数据甚至能通过反弹shell拿到权限。
漏洞地址
/wls-wsat/CoordinatorPortType
/wls-wsat/RegistrationPortTypeRPC
/wls-wsat/ParticipantPortType
/wls-wsat/RegistrationRequesterPortType
/wls-wsat/CoordinatorPortType11
/wls-wsat/RegistrationPortTypeRPC11
/wls-wsat/ParticipantPortType11
/wls-wsat/RegistrationRequesterPortType11
环境部署
推荐几个漏洞复现的docker
https://github.com/vulhub/vulhub
https://hub.docker.com/u/vulfocus
https://hub.docker.com/u/vulshare
https://hub.docker.com/u/vultarget
找到对应漏洞的docker pull就可以了
利用方式
利用msf
exploit/multi/http/oracle_weblogic_wsat_deserialization_rce
payload/cmd/unix/generic
验证
或者
exploit/multi/misc/weblogic_deserialize_asyncresponseservice
payload/cmd/unix/generic
验证
CVE-2020-2883
在Oracle官方发布的2020年4月关键补丁更新公告CPU(Critical Patch Update)中,两个针对 WebLogic Server ,CVSS 3.0评分为 9.8的严重漏洞(CVE-2020-2883、CVE-2020-2884),允许未经身份验证的攻击者通过T3协议网络访问并破坏易受攻击的WebLogic Server,成功的漏洞利用可导致WebLogic Server被攻击者接管,从而造成远程代码执行。
T3协议网络:T3也称为丰富套接字,是BEA内部协议,功能丰富,可扩展性好。T3是多工双向和异步协议,经过高度优化,只使用一个套接字和一条线程。借助这种方法,基于Java的客户端可以根据服务器方需求使用多种RMI对象,但仍使用一个套接字和一条线程。
大概就是说T3是个BEA公司的内部通信协议,根据T3协议搭建的网络就叫T3网络。
Weblogic 默认开启 T3 协议,攻击者可利用T3协议进行反序列化漏洞实现远程代码执行。
环境搭建
docker pull vulfocus/weblogic-cve_2020_2883
利用方式
exploit multi/misc/weblogic_deserialize_badattr_extcomp
payload/linux/x64/exec
验证
或者
利用POC
# -*- coding: utf-8 -*-
import socket
import time
import ssl
import binascii
import urlparse
import argparse
import sys
globalProxies = {}
hea