• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

GrrrDog/Java-Deserialization-Cheat-Sheet: The cheat sheet about Java Deserializa ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

GrrrDog/Java-Deserialization-Cheat-Sheet

开源软件地址:

https://github.com/GrrrDog/Java-Deserialization-Cheat-Sheet

开源编程语言:


开源软件介绍:

Java-Deserialization-Cheat-Sheet

A cheat sheet for pentesters and researchers about deserialization vulnerabilities in various Java (JVM) serialization libraries.

Please, use #javadeser hash tag for tweets.

Table of content

Java Native Serialization (binary)

Overview

Main talks & presentations & docs

Marshalling Pickles

by @frohoff & @gebl

Exploiting Deserialization Vulnerabilities in Java

by @matthias_kaiser

Serial Killer: Silently Pwning Your Java Endpoints

by @pwntester & @cschneider4711

Deserialize My Shorts: Or How I Learned To Start Worrying and Hate Java Object Deserialization

by @frohoff & @gebl

Surviving the Java serialization apocalypse

by @cschneider4711 & @pwntester

Java Deserialization Vulnerabilities - The Forgotten Bug Class

by @matthias_kaiser

Pwning Your Java Messaging With Deserialization Vulnerabilities

by @matthias_kaiser

Defending against Java Deserialization Vulnerabilities

by @lucacarettoni

A Journey From JNDI/LDAP Manipulation To Remote Code Execution Dream Land

by @pwntester and O. Mirosh

Fixing the Java Serialization mess

by @e_rnst

Blind Java Deserialization

by deadcode.me

An Overview of Deserialization Vulnerabilities in the Java Virtual Machine (JVM)

by @joaomatosf

Automated Discovery of Deserialization Gadget Chains

by @ianhaken

An Far Sides Of Java Remote Protocols

by @_tint0

Payload generators

ysoserial

https://github.com/frohoff/ysoserial

ysoserial 0.6 payloads:

payload author dependencies impact (if not RCE)
AspectJWeaver @Jang aspectjweaver:1.9.2, commons-collections:3.2.2
BeanShell1 @pwntester, @cschneider4711 bsh:2.0b5
C3P0 @mbechler c3p0:0.9.5.2, mchange-commons-java:0.2.11
Click1 @artsploit click-nodeps:2.3.0, javax.servlet-api:3.1.0
Clojure @JackOfMostTrades clojure:1.8.0
CommonsBeanutils1 @frohoff commons-beanutils:1.9.2, commons-collections:3.1, commons-logging:1.2
CommonsCollections1 @frohoff commons-collections:3.1
CommonsCollections2 @frohoff commons-collections4:4.0
CommonsCollections3 @frohoff commons-collections:3.1
CommonsCollections4 @frohoff commons-collections4:4.0
CommonsCollections5 @matthias_kaiser, @jasinner commons-collections:3.1
CommonsCollections6 @matthias_kaiser commons-collections:3.1
CommonsCollections7 @scristalli, @hanyrax, @EdoardoVignati commons-collections:3.1
FileUpload1 @mbechler commons-fileupload:1.3.1, commons-io:2.4 file uploading
Groovy1 @frohoff groovy:2.3.9
Hibernate1 @mbechler
Hibernate2 @mbechler
JBossInterceptors1 @matthias_kaiser javassist:3.12.1.GA, jboss-interceptor-core:2.0.0.Final, cdi-api:1.0-SP1, javax.interceptor-api:3.1, jboss-interceptor-spi:2.0.0.Final, slf4j-api:1.7.21
JRMPClient @mbechler
JRMPListener @mbechler
JSON1 @mbechler json-lib:jar:jdk15:2.4, spring-aop:4.1.4.RELEASE, aopalliance:1.0, commons-logging:1.2, commons-lang:2.6, ezmorph:1.0.6, commons-beanutils:1.9.2, spring-core:4.1.4.RELEASE, commons-collections:3.1
JavassistWeld1 @matthias_kaiser javassist:3.12.1.GA, weld-core:1.1.33.Final, cdi-api:1.0-SP1, javax.interceptor-api:3.1, jboss-interceptor-spi:2.0.0.Final, slf4j-api:1.7.21
Jdk7u21 @frohoff
Jython1 @pwntester, @cschneider4711 jython-standalone:2.5.2
MozillaRhino1 @matthias_kaiser js:1.7R2
MozillaRhino2 @_tint0 js:1.7R2
Myfaces1 @mbechler
Myfaces2 @mbechler
ROME @mbechler rome:1.0
Spring1 @frohoff spring-core:4.1.4.RELEASE, spring-beans:4.1.4.RELEASE
Spring2 @mbechler spring-core:4.1.4.RELEASE, spring-aop:4.1.4.RELEASE, aopalliance:1.0, commons-logging:1.2
URLDNS @gebl jre only vuln detect
Vaadin1 @kai_ullrich vaadin-server:7.7.14, vaadin-shared:7.7.14
Wicket1 @jacob-baines wicket-util:6.23.0, slf4j-api:1.6.4

Plugins for Burp Suite (detection, ysoserial integration ):

Full shell (pipes, redirects and other stuff):

How it works:

ysoserial fork with additional payloads

https://github.com/wh1t3p1g/ysoserial

  • CommonsCollection8,9,10
  • RMIRegistryExploit2,3
  • RMIRefListener,RMIRefListener2
  • PayloadHTTPServer
  • Spring3
JRE8u20_RCE_Gadget

https://github.com/pwntester/JRE8u20_RCE_Gadget

Pure JRE 8 RCE Deserialization gadget

ACEDcup

https://github.com/GrrrDog/ACEDcup

File uploading via:

  • Apache Commons FileUpload <= 1.3 (CVE-2013-2186) and Oracle JDK < 7u40
Universal billion-laughs DoS

https://gist.github.com/coekie/a27cc406fc9f3dc7a70d

Won't fix DoS via default Java classes (JRE)

Universal Heap overflows DoS using Arrays and HashMaps

https://github.com/topolik/ois-dos/

How it works:

Won't fix DoS using default Java classes (JRE)

DoS against Serialization Filtering (JEP-290)
Tool to search gadgets in source
Additional tools to test RMI:
Remote class detection:

Exploits

no spec tool - You don't need a special tool (just Burp/ZAP + payload)

RMI

ysoserial

Additional tools

JMX

ysoserial

mjet

JexBoss

JMXMP
JNDI/LDAP

https://github.com/zerothoughts/jndipoc

https://github.com/welk1n/JNDI-Injection-Exploit

JMS

JMET

JSF ViewState
  • if no encryption or good mac

no spec tool

JexBoss

vjdbc
  • JDBC via HTTP library
  • all version are vulnerable
  • Details

no spec tool

T3 of Oracle Weblogic

loubia (tested on 11g and 12c, supports t3s)

JavaUnserializeExploits (doesn't work for all Weblogic versions)

WLT3Serial

CVE-2018-2628 sploit

IIOP of Oracle Weblogic

CVE-2020-2551 sploit

Oracle Weblogic (1)
Oracle Weblogic (2)

Exploit

IBM Websphere (1)

JavaUnserializeExploits

serialator

CoalfireLabs/java_deserialization_exploits

IBM Websphere (2)
  • When using custom form authentication
  • WASPostParam cookie
  • Full info

no spec tool

IBM Websphere (3)

Metasploit

IIOP of IBM Websphere
Red Hat JBoss (1)
  • http://jboss_server/invoker/JMXInvokerServlet
  • Default port - 8080/tcp
  • CVE-2015-7501

JavaUnserializeExploits

https://github.com/njfox/Java-Deserialization-Exploit

serialator

JexBoss

Red Hat JBoss 6.X
  • http://jboss_server/invoker/readonly
  • Default port - 8080/tcp
  • CVE-2017-12149
  • JBoss 6.X and EAP 5.X
  • Details

no spec tool

Red Hat JBoss 4.x
  • http://jboss_server/jbossmq-httpil/HTTPServerILServlet/
  • <= 4.x
  • CVE-2017-7504

no spec tool

Jenkins (1)

JavaUnserializeExploits

JexBoss

Jenkins (2)

ysoserial

Jenkins (s)
  • Jenkins CLI LDAP
  • *Default port - High number/tcp
  • <= 2.32
  • <= 2.19.3 (LTS)
  • CVE-2016-9299
CloudBees Jenkins

Sploit

JetBrains TeamCity
  • RMI

ysoserial

Restlet
  • <= 2.1.2
  • When Rest API accepts serialized objects (uses ObjectRepresentation)

no spec tool

RESTEasy
  • *When Rest API accepts serialized objects (uses @Consumes({"*/*"}) or "application/*" )

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap