URLDNS

URLDNS为ysoserial工具中的一条反序列化利用链,一般用于检测是否存在反序列化漏洞。

该利用链有以下特点:

  • 不限制JDK版本,不使用第三方依赖
  • 只能发起DNS请求,不能进行其他利用,只能验证是否存在反序列化

ysoserial源码中列出的利用链为如下

1
2
3
4
5
*   Gadget Chain:
* HashMap.readObject()
* HashMap.putVal()
* HashMap.hash()
* URL.hashCode()

其调用链为:Deserializer.deserialize() -> HashMap.readObject() -> HashMap.putVal() -> HashMap.hash() -> URL.hashCode() -> getHostAddress()

最终通过getHostAddress()发出dns请求。

参考: