Add files via upload
This commit is contained in:
@@ -0,0 +1,11 @@
|
||||
### JBoss 反序列化漏洞原理
|
||||
|
||||
在 CVE-2017-7504 的利用中,攻击者通常会利用 **Apache Commons Collections** 库中的 Gadget Chain。这个库在许多 Java 应用中都非常常见,因此它成为了反序列化漏洞攻击的理想目标
|
||||
|
||||
攻击步骤如下:
|
||||
|
||||
1. **构造恶意对象:** 攻击者首先在本地构建一个恶意的 Java 对象,该对象利用 Apache Commons Collections 中的某些类,例如 `InvokerTransformer`。这个类可以用来反射调用任意方法,例如 `java.lang.Runtime.exec()`
|
||||
2. **将对象序列化:** 攻击者将这个恶意对象序列化成字节流
|
||||
3. **发送恶意请求:** 攻击者通过 JBoss Remoting 协议,将这个恶意的字节流发送给存在漏洞的 JBoss 服务器
|
||||
4. **服务器反序列化:** JBoss 服务器接收到数据后,会调用 `ObjectInputStream.readObject()` 方法对其进行反序列化
|
||||
5. **触发 Gadget Chain:** 在反序列化的过程中,Java 会按照字节流中的描述,依次还原对象并调用其中的方法。当执行到攻击者预设的 `InvokerTransformer` 时,它会反射调用 `java.lang.Runtime.exec()` 方法,并执行攻击者指定的命令
|
||||
Reference in New Issue
Block a user