工具介紹

一款hessian反序列化利用工具,支持Hessian JDK原生利用鏈、Rome + JdbcRowSetImpl、Rome + TemplatesImpl + SignedObject 二次反序列化、Hessian Resin反序列化鏈。作者:LINGX5

Hessian反序列化利用工具_反序列化

Hessian反序列化利用工具_bc_02

【利用鏈】:Hessian JDK原生利用鏈
【利用鏈描述】:Hessian JDK原生利用鏈, 可以實現無依賴,不出網打內存馬利用
【利用鏈】:Rome + JdbcRowSetImpl
【利用鏈描述】:Rome + JdbcRowSetImpl鏈:利用JdbcRowSetImpl,實現JNDI注入
【利用鏈】:Rome + TemplatesImpl + SignedObject 二次反序列化
【利用鏈描述】:Rome + TemplatesImpl + SignedObject 二次反序列化,可以實現類加載,不出網打內存馬等利用
【利用鏈】:Hessian Resin反序列化鏈
【利用鏈描述】:Hessian Resin反序列化鏈:
1.需要依賴 Resin 才可以觸發
2.目標出網
3.目標jdk版本中trustURLCodebase屬性為true

工具使用

Remo鏈命令執行

點擊查看幫助,可以看到幫助信息

Hessian反序列化利用工具_#開發語言_03

Remo+Templates 二次反序列化

這裏用的:https://party.memshell.news/

Hessian反序列化利用工具_bc_04

成功寫入

冰蠍成功連接

Hessian反序列化利用工具_#開發語言_05

JDK原生鏈使用

直接生成內存馬base64

Hessian反序列化利用工具_apache_06

發送

Hessian反序列化利用工具_bc_07

成功連接

Hessian反序列化利用工具_apache_08

Resin利用鏈

test命令執行

Hessian反序列化利用工具_apache_09

內存馬

生成一個內存馬點擊下載

Hessian反序列化利用工具_反序列化_10

方式一

利用jclasslib編輯class文件,把文件索引改為 SOAPUtils

Hessian反序列化利用工具_#java_11

SOAPUtils.class文件放到http服務器根目錄

payload輸入:http://127.0.0.1:8000/SOAPUtils

Hessian反序列化利用工具_bc_12

方式二

可以選擇新建目錄結構

org\apache\logging\cqCAf\SOAPUtils.class

payload輸入:http://127.0.0.1:8000/org.apache.logging.cqCAf.SOAPUtils

參考文章:

https://www.freebuf.com/articles/424308.html

工具下載

https://github.com/LINGX5/HessianExploit-tool