Weblogic的CoordinatorPortUSB Type-C 接口接口有什么用

关于近期发生的利用weblogic漏洞进行挖矿事件的漏洞简要分析
最早我们看到黑产利用该漏洞(CVE-)进行批量挖矿,后续又发现利用该漏洞的绕过去批量扫描攻击。我们先来看一下这次使用漏洞的成因是什么,依据捕获到的攻击数据包可知利用的是一个web service的服务,为了分析方便,我直接使用简单的PoC。
漏洞编号:CVE-
调试环境:win7 x64+Idea
jdk版本:java 1.8.0_131
WebLogic版本:10.3.6.0(无补丁)
POST&/wls-wsat/CoordinatorPortType&HTTP/1.1
Host:&localhost:7001
User-Agent:&Mozilla/5.0&(Windows&NT&6.1;&WOW64;&rv:57.0)&Gecko/&Firefox/57.0
Accept:&text/html,application/xhtml+xml,application/q=0.9,*/*;q=0.8
Accept-Language:&zh-CN,q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,q=0.2
Accept-Encoding:&gzip,&deflate
Cookie:&wp-settings-time-1=
Connection:&close
Upgrade-Insecure-Requests:&1
Content-Type:&text/xml
Content-Length:&407
&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.8.0_131&&class=&java.beans.XMLDecoder&&
&&&&&&&&&&&&&&&&&&&&&&&&...
&&&&&&&&&&&&&&&&&&&&&&&&...
&&&&&/work:WorkContext&&
&&&/soapenv:Header&&&
&&&soapenv:Body/&&&/soapenv:Envelope&
直接入口点是wls-wsat.war这个war提供的web service服务,然后通过WLSServletAdapter进行处理,在WorkContextServerTube类中进行处理POST数据包中的XML数据。
大体函数调用图,如下
这里我们分析数据解析的过程WorkContextServerTube类的processRequest函数。
public&NextAction&processRequest(Packet&var1)&{&&&&&&&&
this.isUseOldFormat&=&&&&&&&&&
if&(var1.getMessage()&!=&null)&{
&&&&&&&&&&&&HeaderList&var2&=&var1.getMessage().getHeaders();
&&&&&&&&&&&&Header&var3&=&var2.get(WorkAreaConstants.WORK_AREA_HEADER,&true);&&&&&&&&&&&&
&&&&&&&&&&&&if&(var3&!=&null)&{&&&&&&&&&&&&&&&&
&&&&&&&&&&&&this.readHeaderOld(var3);&&&&&&&&&&&&&&&&
&&&&&&&&&&&&this.isUseOldFormat&=&
&&&&&&&&&&&&}
&&&&&&&&&&&&Header&var4&=&var2.get(this.JAX_WS_WORK_AREA_HEADER,&true);&&&&&&&&&&&&
&&&&&&&&&&&&if&(var4&!=&null)&{&&&&&&&&&&&&&&&&
&&&&&&&&&&&&this.readHeader(var4);
&&&&&&&&&&&&}
&&&&&&&&}&&&&&&&&return&super.processRequest(var1);
var3这个对象获取了和&/work:WorkContext&相关的内容。然后执行readHeaderOld这个方法。我们来跟进一下。
protected&void&readHeaderOld(Header&var1)&{&&&&&&&&
&&&&&&&&&&&&XMLStreamReader&var2&=&var1.readHeader();
&&&&&&&&&&&&var2.nextTag();
&&&&&&&&&&&&var2.nextTag();
&&&&&&&&&&&&XMLStreamReaderToXMLStreamWriter&var3&=&new&XMLStreamReaderToXMLStreamWriter();
&&&&&&&&&&&&ByteArrayOutputStream&var4&=&new&ByteArrayOutputStream();
&&&&&&&&&&&&XMLStreamWriter&var5&=&XMLStreamWriterFactory.create(var4);
&&&&&&&&&&&&var3.bridge(var2,&var5);
&&&&&&&&&&&&var5.close();
&&&&&&&&&&&&WorkContextXmlInputAdapter&var6&=&new&WorkContextXmlInputAdapter(new&ByteArrayInputStream(var4.toByteArray()));&&&&&&&&&&&&
&&&&&&&&&&&&this.receive(var6);
&&&&&&&&}&catch&(XMLStreamException&var7)&{&&&
&&&&&&&&&&&&&&&&&
&&&&&&&&throw&new&WebServiceException(var7);
&&&&&&&&}&catch&(IOException&var8)&{&&&&&&&
&&&&&&&&&&&&&
&&&&&&&&throw&new&WebServiceException(var8);
这里var4存储了java对象XML序列化后的数据。这里执行WorkContextXmlInputAdapter的构造函数,触发反序列化过程。
public&final&class&WorkContextXmlInputAdapter&implements&WorkContextInput&{&&&&
private&final&XMLDecoder&xmlD&&&&
public&WorkContextXmlInputAdapter(InputStream&var1)&{&&&&&&&&
this.xmlDecoder&=&new&XMLDecoder(var1);
四月份发布的补丁简要说明
public&WorkContextXmlInputAdapter(InputStream&is)&&{
&&&&ByteArrayOutputStream&baos&=&new&ByteArrayOutputStream();&&&&try
&&&&{&&&&&&int&next&=&0;
&&&&&&next&=&is.read();&&&&&&while&(next&!=&-1)
&&&&&&&&baos.write(next);
&&&&&&&&next&=&is.read();
&&&&}&&&&catch&(Exception&e)
&&&&{&&&&&&throw&new&IllegalStateException(&Failed&to&get&data&from&input&stream&,&e);
&&&&validate(new&ByteArrayInputStream(baos.toByteArray()));&&&&this.xmlDecoder&=&new&XMLDecoder(new&ByteArrayInputStream(baos.toByteArray()));
&&private&void&validate(InputStream&is)&&{
&&&&WebLogicSAXParserFactory&factory&=&new&WebLogicSAXParserFactory();&&&&try
&&&&&&SAXParser&parser&=&factory.newSAXParser();
&&&&&&parser.parse(is,&new&DefaultHandler()
&&&&&&{&&&&&&&&public&void&startElement(String&uri,&String&localName,&String&qName,&Attributes&attributes)
&&&&&&&&&&throws&SAXException&&&&&&&&{&&&&&&&&&&if&(qName.equalsIgnoreCase(&object&))&{&&&&&&&&&&&&throw&new&IllegalStateException(&Invalid&context&type:&object&);
&&&&&&&&&&}
&&&&}&&&&catch&(ParserConfigurationException&e)
&&&&{&&&&&&throw&new&IllegalStateException(&Parser&Exception&,&e);
&&&&}&&&&catch&(SAXException&e)
&&&&{&&&&&&throw&new&IllegalStateException(&Parser&Exception&,&e);
&&&&}&&&&catch&(IOException&e)
&&&&{&&&&&&throw&new&IllegalStateException(&Parser&Exception&,&e);
只是在反序列化之前增加了一个validate函数,如果qName等于object,就抛出异常终止。可谓简单暴力,然而,这里的黑名单这种修复,很难彻底修复完整。值得深思…
最后,为什么一定要打十月份补丁呢!
因为,Oracle官方四月份补丁对该漏洞修复不彻底,可以绕过补丁,依旧执行远程命令。目前绕过的漏洞在官方发布的十月份的补丁中已修复。
1.可以触发漏洞的url为wls-wsat.war&xml中所有url-pattern
2.关于XmlDecoder安全性及利用请参看
3.请大家尽快登录Oracle官方网站,下载WebLogic十月份补丁并安装。
本文作者360攻防实验室 &&由安全客原创发布&如若转载,请注明出处:&
必填(保密)
快来写下你的想法吧!
感谢楼主分享。
不过本人使用了对应的POC,而且目标也确实存在问题,但是一直没有复现,是否可以帮忙解答一下。
按照POC尝试后,发现右侧出现的是415,换了多个POC效果一样,请大神帮忙,谢谢![img=uploads/comments//28_208.jpg][img=uploads/comments//28_660.jpg][img=uploads/comments//29_351.jpg]
(C) 安全脉搏 沪ICP备号Access denied | www.xbear.me used Cloudflare to restrict access
Please enable cookies.
What happened?
The owner of this website (www.xbear.me) has banned your access based on your browser's signature (ed953d2-ua98).weblogic10.36 部署时出错&BEA-149265&_百度知道
weblogic10.36 部署时出错&BEA-149265&
&Error&&Deployer&&BEA-149265&&FailureoccurredintheexecutionofdeploymentrequestwithID'9'fortask'0'.Erroris:'weblogic.management.DeploymentException:Errorencoun...
&Error& &Deployer& &BEA-149265& &Failure occurred in the execution of deployment request with ID '9' for task '0'. Error is: 'weblogic.management.DeploymentException: Error encountered during prepare phase of deploying WebService module 'ifs'. Class not found for link: WordPrintServiceServlethttp:
avaialbe:{com.sun.xml.ws.rm.jaxws.runtime.client.DummyProvider=class com.sun.xml.ws.rm.jaxws.runtime.client.DummyProvider, com.sun.xml.ws.mex.server.MEXEndpoint=class com.sun.xml.ws.mex.server.MEXEndpoint, com.glorycube.ifs.sop.server.product.WordPrint=class com.glorycube.ifs.sop.server.product.WordPrint, weblogic.wsee.wstx.wsc.v11.endpoint.RegistrationRequesterPortImpl=class weblogic.wsee.wstx.wsc.v11.endpoint.RegistrationRequesterPortImpl, weblogic.wsee.async.AsyncResponseBean=class weblogic.wsee.async.AsyncResponseBean, com.sun.xml.ws.tx.webservice.member.coord.ActivationCoordinatorPortTypeImpl=class com.sun.xml.ws.tx.webservice.member.coord.ActivationCoordinatorPortTypeImpl, com.sun.xml.ws.tx.webservice.member.coord.ActivationRequesterPortTypeImpl=class com.sun.xml.ws.tx.webservice.member.coord.ActivationRequesterPortTypeImpl, weblogic.wsee.wstx.wsc.v11.endpoint.RegistrationPortImpl=class weblogic.wsee.wstx.wsc.v11.endpoint.RegistrationPortImpl, weblogic.wsee.wstx.wsc.v10.endpoint.RegistrationPortTypeRPCPortImpl=class weblogic.wsee.wstx.wsc.v10.endpoint.RegistrationPortTypeRPCPortImpl, .................................此后由于字数限制省略
答题抽奖
首次认真答题后
即可获得3次抽奖机会,100%中奖。
Class not found for link: WordPrintServiceServlethttp:
avaialbe:{com......从这句来看是某个类文件没有加载,找不到所需要的配置文件导致,查一查是什么类没有找到,如果有,优先加载它。
为你推荐:
其他类似问题
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。&&&&&&博客详情&&&&&&博客详情
WebLogic漏洞分析——利用华为云WAF实现防御
0x00 漏洞背景近期,WebLogic爆出相关安全漏洞和漏洞的exploit,并在网络中广泛流传。由于此次漏洞利用方式简单,通过构造HTTP请求就能直接获取目标服务器的控制权限,进行远程命令执行,因此影响范围很广。比如最近大量部署了WebLogic服务的主机被植入挖矿恶意程序,就是此漏洞的利用方式之一。此次漏洞产生的原因在于WebLogic的WLS组件直接使用XMLDecoder来解析XML数据。而Oracle官方在今年四月份提供的补丁检查能力较弱,很容易被bypass。因此,建议使用WebLogic服务的用户下载安装Oracle官方在今年十月份提供的补丁程序。0x01 漏洞分析此次漏洞形成的原因在于,WLS组件wls-wast.war中使用了WebLogic自带的webservice服务,通过WLSServeletAdapter处理SOAP请求。其中,WorkContextServerTube类中的相关函数负责处理POST请求中的XML数据,readHeaderOld方法负责处理&work:WorkContext&所包含的数据,最终由XMLDecoder来解析(反序列化),从而产生了反序列化漏洞。关于XMLDecoder安全性及利用可参考: 此次漏洞出现两处CVE编号(CVE-,CVE-)是由于Oracle官方在今年四月份的补丁中只对XML中存在&Object&节点的情况做了检查,但是很容易被bypass(如改为&void&即可)。因此,Oracle在十月份对该补丁又进行了一次更新。0x02漏洞复现测试环境 Docker 1.12.6 / WebLogic 10.3.6.0 / JDK 1.6 / CentOS构造一个恶意HTTP POST请求,使得目标主机主动对控制端服务器发起连接请求,从而实现shell反弹。WebLogic漏洞利用POC(利用postman向目标站点发送恶意HTTP请求)Shell反弹效果(通过nc在7777端口发送ls命令,可看到图中上方控制台打印出了目标主机的文件目录)0x03 华为云WAF防御WebLogic漏洞12月22日晚,华为云安全团队紧急下发了防御WebLogic漏洞的虚拟补丁。 下面将介绍如何使用华为云WAF防御WebLogic漏洞:1.使用华为云WAF的内置规则,一键开启防护。(对WAF实例开启防护后,在防护策略界面选择拦截并保存策略,如下图所示)对目标站点发送payload,进入安全总览页面,可以看到通过华为云WAF的内置规则,此次漏洞利用的请求行为被成功拦截。2.使用华为云WAF的精准防护策略,配置自定义规则。进入WAF实例-&防护策略-&精准防护界面,点击添加规则,按下图所示添加自定义规则。(规则内容为/wls-wsat/CoordinatorPortType)对目标站点发送payload,再次进入华为云WAF控制台,进入安全总览界面,可以看到华为云WAF成功拦截了此次WebLogic漏洞利用攻击。
攻击请求被华为云WAF拦截的界面0x04 防御策略与建议1.华为云WAF针对此次WebLogic的相关漏洞,已经在第一时间更新了内置规则。可以将站点接入华为云WAF,一键开启防护。(华为云WAF正在免费公测,仅剩一个月!)申请链接(需注册/登录华为云):2.若您的业务接入了其他WAF产品,可通过添加自定义规则实现漏洞防御,参考上文中配置华为云WAF精准防护的规则。3.临时防护建议:若WebLogic服务集群未使用WLS组件,可在临时备份后,根据实际环境路径将此组件删除。待具备此漏洞的防护能力后再进行恢复。·删除wlls-wsat组件:rm –f /home/WebLogic/Oracle/Middleware/wlserver_10.3/server/lib/wls-wsat.warrm –f /home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.war rm - rf /home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat ·重启WebLogic域控制器服务:DOMAIN_NAME /bin/stopWeblogic.shDOMAIN_NAME /bin/startManagedWebLogic.sh4.官方补丁更新:Oracle官方对于WebLogic WLS 组件漏洞(CVE-)在10月份的更新补丁中已经进行了修复,建议及时下载安装,并升级WebLogic。参考
链接复制成功
复制链接到剪贴板
分享文章到微博
分享文章到朋友圈
展开全部内容
展开全部内容
没有评论了
您确认删除博客吗?
账号与支付
关注华为云
华为云微信
手机扫码分享给好友WebLogic XMLDecoder反序列化漏洞
由 匿名 (未验证)
漏洞说明:Oracle Fusion Middleware的Oracle WebLogic Server组件中的WLS Security子组件存在安全漏洞。WebLogic主机挖矿病毒利用的正是此漏洞。涉及范围:所有使用版本为Oracle WebLogic Server10.3.6.0.0, 12.1.3.0.0, 12.2.1.1.0, 12.2.1.2.0的WebLogic主机服务器。修复方法:WebLogic XMLDecoder反序列化漏洞的解决方案有以下两种:第一种方案如下:1.1、对访问wls-wsat的资源进行访问控制。1.2、根据实际环境路径,删除WebLogic程序下列war包及目录。rm -f/home/WebLogic/Oracle/Middleware/wlserver_10.3/server/lib/wls-wsat.warrm -f/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/.internal/wls-wsat.warrm -rf/home/WebLogic/Oracle/Middleware/user_projects/domains/base_domain/servers/AdminServer/tmp/_WL_internal/wls-wsat第二种方案如下:下载并安装weblogic补丁Weblogic 10 月份漏洞补丁公告: 手动验证方法:临时处置方案修复后,请确认以下链接访问为404则说明修复成功:http://{ip:port}/wls-wsat/CoordinatorPortType11

我要回帖

更多关于 Type-C耳机转接口 的文章

 

随机推荐