Lack of adequate input/output validation for ABB eSOMS versions 4.0 to 6.0.2 might allow an...
Description: app/Model/feed.php in MISP before 2.4.124 allows administrators to choose arbitrary files that should be...
LearnDash WordPress plugin version below 3.1.6 is vulnerable to Unauthenticated SQL Injection. Source link
写在前面的话 在对Java Web应用程序进行研究时,不安全的反序列化漏洞现在已经成为了攻击者或研究人员的常见目标了。这些漏洞将导致他人在目标设备上可靠地实现远程代码执行,而且这类漏洞通常很难修复。在这篇文章中,我们将对漏洞CVE-2020-2555(ZDI-20-128)进行分析。这是一个严重漏洞,CVSS评分为9.8,该漏洞将影响Oracle Coherence库,而这个库在Oracle WebLogic Server等流行产品中都有广泛使用。目前,该漏洞已在1月份的更新补丁中被修复。 通过分析补丁来寻找漏洞源 这个漏洞存在于一个Java方法中,攻击者将能够通过受控参数来调用该方法。在Java中,为了重新创建对象图,代码将会自动调用一个类中的readObject()或readExternal()方法,而这两个方法以及其他的方法都可以被看作是一种有效的小工具反序列化漏洞源。 CVE-2020-2555的漏洞补丁引入了一个非常有意思的修改,补丁代码修改了LimitFilter类中的toString()方法: 所有针对extract()方法的调用都被从toString()方法中移除了。extract()方法的重要性我们暂时先不做讨论,而这种修改的有趣之处就在于,各种标准的JRE类都可以通过readObject()方法来调用和访问toString()方法,比如说BadAttributeValueExpException: 我们可以从上面的代码中看到,BadAttributeValueExpException类的序列化实例就可以用来调用任意类中的toString()方法,而这种技术就可以用来调用LimitFilter类中的toString()方法。没错,就是存在漏洞的LimitFilter类。 有关使用toString()方法作为入口点的小工具示例,请参阅ysoserial项目的CommonsCollections5 小工具。 深入分析 众所周知,Java中的Sink方法调用是存在安全风险的。比如说以下几个场景: 1、通过调用FileOutputStream.write()方法创建任意文件;...
Page 1 of 291 2 3 29