怎么捡漏weblogic及反馈给weblogic补丁


本篇文章给大家分享的是有关怎么捡漏weblogic及反馈给weblogic补丁,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。下面给大家分享一下怎么捡漏weblogic和怎么反馈给weblogic补丁。既然我们谈到挖weblogic。weblogic框架非常大,初次接触的老哥可能无从下手不知道从哪里开始挖洞。我们可以从补丁来分析一下历史漏洞。在这里还有很多漏洞类型没有覆盖,这种情况不要见怪,这只是一个最基础的讲解。在你挖到漏洞后,最好安装weblogic的最新补丁来校验一下你的exp是否在最新补丁下生效。weblogic使用Opatch来管理补丁。在某些补丁中,补丁包对于Opatch最小版本是有要求,这时候我们需要升级Opatch补丁号为[28186730: OPATCH 13.9.4.2.4 FOR FMW/WLS 12.2.1.3.0, 12.2.1.4.0 AND 14.1.1.0.0]来解决这个问题 https://support.oracle.com/epmos/faces/PatchHome?_adf.ctrl-state=1cdjuh74ay_4&_afrLoop=92240149765348#下载后,解压至任意文件夹 Windows 执行下面的命令java -jar opatch_generic.jar -J-Doracle.installer.oh_admin_acl=true -silent oracle_home=其它系统执行下面的命令java -jar /6880880/opatch_generic.jar -silent oracle_home=有不懂的,看压缩包里的Readme下载补丁后,解压至任意文件夹即可 在Oracle_home 安装目录中,找到Opatch文件夹,执行升级操作即可 Opatch appl免费云主机域名y 补丁解压的文件夹(注意是最内层文件夹 我们只关心安全补丁,下面说下怎么下载补丁 登录Oracle support网站,找到Patchs&Updates 栏目,点击进去 查询条件,自己根据需要构造即可 REC的补丁,并且被标记为security,且Generic Platform平台,即是补丁注意,oracle每年发布四次安全补丁,安全补丁可以跨版本打,也就是说,老补丁同时也集成在新补丁中,这点一定注意。weblogic中的补丁,其实是一个个编译好的class文件,我们直接使用idea打开补丁文件夹,就可以利用idea的反编译功能区分析补丁。补丁中,每个class文件,都对应weblogic 实际目录中的一个class文件,打补丁你可以认为强行替换weblogic 中相关jar包中的class文件。下面讲一下分析要点。对于这种安全补丁中,只有关于weblogic自身的安全问题,才会在这里体现,一般第三方包的安全漏洞,不会在该补丁中。直接看filesoracle.wls.jrf.tenancy.common.sharedlib12.2.1.4.0wls.common.symbolmodulescom.bea.core.utils.jarweblogicutilsio文件夹下的WeblogicFilterConfig.class文件因为weblogic 的漏洞,绝大多数都是T3协议、IIOP协议的java反序列化漏洞。而weblogic为了修复该漏洞,最简单的办法是设置反序列化黑名单并添加黑名单列表。如果反序列化时遇到的类存在于黑名单中,则中止反序列化过程。我们只需要diff黑名单列表,自己研究构造poc即可。有的时候不一定是rce,也有可能是其他问题。如果触发反序列化的类在正常业务中可能需要,或者因为其他原因不能屏蔽,weblogic的修复方法为直接修改相关的类。如果一个类在readObject方法中,自己私自调用ObjectInputStream去执行反序列化操作而不是用weblogic提供的FilterInputStream执行反序列化操作,这样的话会导致weblogic的黑名单失效。这也就是反序列化中的反序列化漏洞,这种漏洞在weblogic中挺常见的。(不限于T3协议例如 SOAPInvokeStat我们diff中,可以明显发现weblogic的补丁将ObjectInputStream更改为FilterInputStream。在weblogic中,只有FilterInputStream才会在反序列化的流程中检查黑名单类。然后,我们根据这个类中的参数,自己构造一个类即可。在idea中,覆盖一个类最简单的办法是,在自己的项目中创建一个与被覆盖的类包名相同类名相同的类,然后修改你想要修改的代码即可。例如在这个反序列化中,我要修改writeExternal方法。直接强行替换成cve-2020-2555的gadget。一般情况下该类漏洞都是在继承自Exterinalizable的类 中,在自定义序列过程时,将类的某些字段,作为XML去存储在反序列化的信息中。反序列化时候,读取序列化信息中相关的字符串作为XML去解析。解析的过程中没有考虑到XXE攻击。这次我捡漏的cve就是该类型的漏洞。在weblogic.wsee.security.wssc.sct.SCCredential#readExternal方法中 this.appliesTo是反序列化得到的字符串,如果以开头,就会调用DOMUtils.toXMLNode去解析。其实也就是当成xml解析,并且没有任何过滤。 poc如下 网上查了一圈,好像没有太多讲解,正好我在这里分享一下我的提交过程。这个xxe cve-2020-2211漏洞,是我去年12月的某天晚上失眠而挖到的一个洞。别大惊小怪,就是一个简单的xxe。然后写邮件给oracle。oracle提交漏洞的邮箱是secalert_us@oracle.com。在邮件的主题中,注明你这次挖到的洞是什么类型。邮件要用英文书写,反正也别说乱七八糟的客套话,老外也看不懂。开门见山直接分析漏洞,扔给他poc,截几张图就行了。![](https://potatso-1253210846.cos.ap-beijing.myqcloud.com/20210421131555.png一般等两三天左右,oracle就会回复你的邮件,确认漏洞分配一个内部编号。然后再回复你一封邮件,告诉你不要将这个漏洞透露给任何人。 然后就坐等cve编号即可。我这个漏洞等了将近半年,才发下cve编号。一般在oracle补丁日前两三天发邮件告诉你的cve编号,影响等等各种信息。至此,就获得一个cve编号。以上就是怎么捡漏weblogic及反馈给weblogic补丁,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注云编程开发博客行业资讯频道。

相关推荐: Windows暴露CryptoAPI证书验证严重安全漏洞CVE-2020-0601是怎样的

Windows暴露CryptoAPI证书验证严重安全漏洞CVE-2020-0601是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Window系统爆一个严重的安全漏洞,该漏洞使Crypt…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 02/05 16:14
Next 02/05 16:14