CVE-2020-2551漏洞分析与检测

admin 2021年12月29日05:21:39评论1,200 views字数 1163阅读3分52秒阅读模式

weblogic调试环境搭建

  1. 下载weblogic10.3.6的安装包,后台回复weblogic即可获取安装包下载链接(百度云盘)。注意,不需要安装jdk,安装包中自带一个jdk1.6

  2. windows下点击安装,下一步下一步即可CVE-2020-2551漏洞分析与检测

  3. 修改OracleMiddlewareuser_projectsdomainsbase_domainbinsetDomainEnv.cmd  任意位置加入一行 set debugFlag=true。开启调试功能。weblogic默认调试端口为8453.

  4. 拷贝OracleMiddlewaremodules等jar包至idea目录下。配置idea调试。如图CVE-2020-2551漏洞分析与检测

漏洞分析

漏洞分析都一个样,放几张图就行了。payload错误堆栈CVE-2020-2551漏洞分析与检测

我们可以打断点,然后触发调试,即可一步一步跟踪漏洞。CVE-2020-2551漏洞分析与检测CVE-2020-2551漏洞分析与检测

玩法一

上面知道了,目前来说可以反序列化任意类。目前网上公布的exp都是基于rmi打法。如果遇到高版本的weblogic是有一定概率无法检测的。既然说了,可以反序列化任意类,也就是说,该处反序列化没有经过任何过滤。所以我们可以尝试使用ysoserial的dnsurl payload去反序列化,并检测是否存在iiop漏洞。如图CVE-2020-2551漏洞分析与检测

该种检测不限制weblogic版本,实测weblogic10,12都可以正常检测

玩法二

可以结合cve-2020-2555 的gadget,实现高版本weblogic+jdk1.8 不需要rmi即可执行命令。缺点暂时无法回显CVE-2020-2551漏洞分析与检测代码大致如下,聪明的你肯定会写出来

BadAttributeValueExpException badAttributeValueExpException = new
BadAttributeValueExpException(null);Field field =
badAttributeValueExpException.getClass().getDeclaredField("val");
field.setAccessible(true);field.set(badAttributeValueExpException, limitFilter);
Context context = createIIopContext(ip, port);

context.rebind("Fucker"+System.nanoTime(), badAttributeValueExpException);

工具简单介绍

根据网上大佬们的代码,杂七杂八凑出来的东西,看一下使用简介大家就知道怎么使用了。不过公开版是没有2555的gadget,只可以用来检测weblogic是否存在iiop。当然,后台私聊有机会获取2555gadget版本的weblogic利用工具哟

CVE-2020-2551漏洞分析与检测


CVE-2020-2551漏洞分析与检测


本文始发于微信公众号(宽字节安全):CVE-2020-2551漏洞分析与检测

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年12月29日05:21:39
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   CVE-2020-2551漏洞分析与检测https://cn-sec.com/archives/498032.html

发表评论

匿名网友 填写信息