- 博客(11)
- 资源 (15)
- 收藏
- 关注
原创 Java代码审计——apache log4j CVE-2021-45105
0x00 前言反序列化总纲因需所以对这个漏洞进行一个简要分析和利用。0x01 环境环境使用的还是log4j的基础环境,可以参考Java代码审计——apache log4j 远程命令执行(JNDI)需要额外在resource目录下创建一个资源文件:log4j.xml<?xml version="1.0" encoding="UTF-8"?><Configuration status="info"> <Appenders> <Console n
2021-12-22 16:18:07 2047
原创 Java 代码审计——shiro 1.2.4反序列化(CVE-2016-4437)
0x00 前言shiro124是一个比较老的反序列化漏洞了,一直都没有对这个漏洞进行深刻的了解,直到学习了CC链之后,回过头来在看,才知道所有一切的真相~0x01 shiro124简单的说shiro是一个认证框架,用来做认证的。124的反序列化也是非常简单:shiro利用的首先是rememberMe的反序列化过程,过程分为三步:base64解码解密反序列化同样序列化也分为三步:反序列化加密base64解密其中最重要的就是加密了,如果没有加密的秘钥就没有办法进行伪造,这里感谢
2021-12-17 18:07:15 2234 1
原创 Java代码审计——Commons Collections7 HashTable
0x00 前言最后的这几条链基本上就都是第三段的利用方式了,基本上拼接到A和B就可以了。0x01 HashTable这里是通过HashTable来进行触发LazyMap的。首先肯定是要来看一下HashTable的readObject方法。在HashTable中readObject方法中,调用了reconstitutionPut方法,在reconstitutionPut中最主要的是map,而map是Entry类型的,我们可以通过put方式进行赋值poc:hashtable.put(lazyMa
2021-12-15 17:46:07 1182 2
原创 Java代码审计——Commons Collections6 HashSet
0x00 前言cc6主要还是c部分的利用,就是触发LazyMap的问题。0x01 HashSetcc6中最主要的就是将TiedMapEntry的调用。HashMap的put调用hash然后调用hashcode可以触发 TiedMapEntry的hashCode,然后调用HashMap.put从而触发整条链1.HashMap首先来看HashMap中的hashcodehashcode在hash方法中进行了调用hash在多个方法中进行了调用,这里以put为例那么我们的问题就是如何去触发这个pu
2021-12-15 16:36:53 1154
原创 Java代码审计——apache log4j 远程命令执行(CVE-2021-44228)
0x00 前言反序列化总纲本来是快乐游戏时间的,但是突然就出来这个洞了= =,当然这个突然用的比较夸张了,修复时间应该是在五天前了。本着学习的态度来进行一下简单的分析。0x01 环境首先是pom <dependencies> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>lo
2021-12-13 13:44:04 1895
原创 Java代码审计——Fastjson TemplatesImpl调用链
0x00 前言反序列化总纲除开jdbc调用链,还有一个TemplatesImpl的调用链,这个在CC链中是出现过的。可以参考:调用链主要的要点在满以下三个变量_bytecodes_name_tfactory还有就是调用newTransformer的方法0x01 调用链先上poc: final String CLASS = "com.sun.org.apache.xalan.internal.xsltc.trax.TemplatesImpl"; ParserConfig conf
2021-12-09 17:19:17 2652
原创 Java代码审计——Fastjson JdbcRowSetImpl调用链
0x00 前言反序列化总纲单独的把fastjson的调用链拎出来进行分析。fastjson可参考:https://blog.csdn.net/qq_36869808/article/details/121697765?spm=1001.2014.3001.55010x01 JdbcRowSetImpl这里要是需要使用JNDI就必须通过lookup方法,这个参考:待填坑。首先来看fastjson payload,有两个参数:一个是dataSourceName,另外一个是autoCommit{"@
2021-12-09 10:31:53 1229
原创 Java代码审计——Fastjson1.2.24反序列化漏洞
0x00 前言Fastjson是一个老生常谈的东西,但是之前整理的东西都比较简单和凌乱所以只能开篇重新进行整理,方便复习和学习。0x01 环境idea使用maven创建一个新的工程1.修改pom这里添加1.2.24版本的fastjson库<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w
2021-12-03 16:20:51 1987 1
原创 Java代码审计——Commons Collections5 BadAttributeValueExpException
0x00 前言反序列化总纲cc链无非就是不同的调用拼接在一起形成的,比如cc5就是在cc1的基础上进行调用调整的。0x01 BadAttributeValueExpException在LazyMap的基础上,发现了一个新的调用方式,就是通过 TiedMapEntry+BadAttributeValueExpException的方式进行调用的。在之前,我们知道LazyMap需要调用get方法才可以触发,那么我们的主题就是如果去触发LazyMap的get方法。1.TiedMapEntry首先来看这
2021-12-02 15:39:53 1225
原创 Java代码审计——Commons Collections3 TrAXFilter
0x00 前言反序列化总纲TrAXFilter是cc3中的迭代链前夕,主要是为了可以准确的启动newTransformer0x01 TrAXFilter首先来看TrAXFilter的构造方法。相当于是创建了TrAXFilter,只要实例化了之后就会直接触发newTransformer。那么其实就不用通过InvokerTransformer直接去进行反射了。这里是需要进行实例化即可,不需要使用其他方法,所以不使用InvokerTransformer而是InstantiateTransforme
2021-12-01 15:40:46 1204
SDL安全建设流程落地方法方案
2023-03-05
CVE-2016-3720
2023-02-22
CVE-2022-22963 复现Demo
2022-04-14
marshalsec.jar.7z
2021-12-03
vulhub-master.zip
2019-12-03
Dex文件头结构解析器
2018-03-05
Android逆向-java代码基础(1)
2018-01-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人