随笔分类 -  JAVA安全

记录java安全学习历程
摘要:1.前言 这篇文章继续分析commoncollections4利用链,这篇文章是对cc2的改造,和cc3一样,cc3是对cc1的改造,cc4则是对cc2的改造,里面chained的invoke变成了instantiateTransformer,所以不用invoke反射调用方法,所以外层queue里面 阅读全文
posted @ 2020-03-03 22:29 tr1ple 阅读(1139) 评论(0) 推荐(0) 编辑
摘要:前言: 这篇文章主要分析commoncollections3,这条利用链如yso描述,这个与cc1类似,只是反射调用方法是用的不是invokeTransformer而用的是InstantiateTransformer,整个调用过程如下图 利用链分析: 如上图所示,入口点还是Annotationinv 阅读全文
posted @ 2020-03-01 21:45 tr1ple 阅读(1323) 评论(2) 推荐(0) 编辑
摘要:前言: 这篇主要分析commonCollections2,调用链如下图所示: 调用链分析: 分析环境:jdk1.8.0 反序列化的入口点为src.zip!/java/util/PriorityQueue.java 此时将会对队列调用siftdown函数,其中队列中包含了两个元素,其中一个即为temp 阅读全文
posted @ 2020-02-29 20:14 tr1ple 阅读(1498) 评论(2) 推荐(0) 编辑
摘要:前言: ysoserial很强大,花时间好好研究研究其中的利用链对于了解java语言的一些特性很有帮助,也方便打好学习java安全的基础,刚学反序列化时就分析过commoncollections,但是是跟着网上教程,自己理解也不够充分,现在重新根据自己的调试进行理解,这篇文章先分析URLDNS和co 阅读全文
posted @ 2020-02-28 21:59 tr1ple 阅读(5884) 评论(2) 推荐(2) 编辑
摘要:影响范围: Fastjson<=1.2.62 需要开启autotype poc: String text1 = "{\"@type\":\"org.apache.xbean.propertyeditor.JndiConverter\",\"AsText\":\"rmi://127.0.0.1:109 阅读全文
posted @ 2020-02-23 11:30 tr1ple 阅读(17103) 评论(2) 推荐(4) 编辑
摘要:环境搭建: sudo docker pull duonghuuphuc/tomcat-8.5.32 sudo docker run -d -it -p 8080:8080 -p 8009:8009 --name ghostcat duonghuuphuc/tomcat-8.5.32 tomcat调试 阅读全文
posted @ 2020-02-22 20:41 tr1ple 阅读(1850) 评论(0) 推荐(0) 编辑
摘要:1.关于RMI 只启用RMI服务时,这时候RMI客户端能够去打服务端,有两种情况,第一种就是利用服务端本地的gadget,具体要看服务端pom.xml文件 比如yso中yso工具中已经集合了很多gadget chain 本地利用yso的打rmi注册表的模块 java -cp .\ysoserial. 阅读全文
posted @ 2020-02-20 12:09 tr1ple 阅读(6906) 评论(3) 推荐(0) 编辑
摘要:1.关于URLConnection 应用程序利用url与远程通信的所有类的超类 jdk1.8中支持的协议包括以上这些,gopher在jdk8中取消了。 java中默认对(http|https)做了一些事情,比如: 默认启用了透明NTLM认证 默认跟随跳转 httpURLconnection可能jdk 阅读全文
posted @ 2020-02-06 20:07 tr1ple 阅读(644) 评论(0) 推荐(0) 编辑
摘要:代理模式是Java中常用的设计模式,主要由公共接口、被代理类和代理类等三部分组成,代理类持有被代理类的实类,代理为执行具体的类方法。其中代理类与被代理类有同样的接口。 代理类的对象本身并不真正实现服务,而是通过调用被代理类对象的方法来提供特定的服务。 代理分为静态代理和动态代理,编译时能确定被代理的 阅读全文
posted @ 2020-02-06 14:42 tr1ple 阅读(445) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2020-02-04 18:29 tr1ple 阅读(91) 评论(0) 推荐(0) 编辑
摘要:关于JNDI: 命名系统是一组关联的上下文,而上下文是包含零个或多个绑定的对象,每个绑定都有一个原子名(实际上就是给绑定的对象起个名字,方便查找该绑定的对象), 使用JNDI的好处就是配置统一的管理接口,下层可以使用RMI、LDAP或者CORBA来访问目标服务 要获取初始上下文,需要使用初始上下文工 阅读全文
posted @ 2020-01-24 22:07 tr1ple 阅读(1306) 评论(0) 推荐(0) 编辑
摘要:原文地址:https://www.anquanke.com/post/id/194384#h3-3 1.java rmi反序列化 RMI 允许一个应用程序访问另外一个服务器或虚拟机上的对象,方法和服务,它使远程方法调用就像在本地调用一样简单。它为用户屏蔽了底层的网络传输细节,使用的时候只需适当处理异 阅读全文
posted @ 2020-01-23 23:25 tr1ple 阅读(1034) 评论(0) 推荐(0) 编辑
摘要:反射java.lang.Runtime 之前在p牛的知识星球中也学过反射机制调用Runtime来执行命令时需要用getruntime来返回Runtime类的实例,因为Runtime类设计是单例模式,并且该类的构造方法是私有的,因此无法直接通过newinstance来实例化该类,因此除了通过getRu 阅读全文
posted @ 2020-01-22 23:42 tr1ple 阅读(483) 评论(0) 推荐(1) 编辑
摘要:本文首发于先知社区: https://xz.aliyun.com/t/7096 前言 作为一名安全研究人员(java安全菜鸡),知道拿到exp怎么打还不够,还得进一步分析exp构造原理与漏洞原理才行。本篇文章主要分析FastJson1.2.24中针对TemplatesImpl链的构造原理以及ysos 阅读全文
posted @ 2020-01-16 16:33 tr1ple 阅读(1444) 评论(0) 推荐(0) 编辑
摘要:Class类加载流程 实际上就是ClassLoader将会调用loadclass来尝试加载类,首先将会在jvm中尝试加载我们想要加载的类,如果jvm中没有的话,将调用自身的findclass,此时要是findclass重写了,并且传入了我们想要加载的类的字节码,那么应该调用defineclass在j 阅读全文
posted @ 2019-12-30 20:48 tr1ple 阅读(378) 评论(0) 推荐(0) 编辑
摘要:1.Java 文件名空字节截断漏洞(%00 Null Bytes) 受空字节截断影响的JDK版本范围:JDK<1.7.40 实际上修复就是检查文件名中是否包含\u0000,包含则为非法路径 find usages看一下可以看到跟文件名相关的函数基本上都调用了此函数来进行校验,比如这里用java1.6 阅读全文
posted @ 2019-12-25 21:57 tr1ple 阅读(418) 评论(0) 推荐(0) 编辑
摘要:Servlet是在Java Web容器上运行的小程序,通常我们用Servlet来处理一些较为复杂的服务器端的业务逻辑。值得注意的是在Servlet3.0之后(Tomcat7+)可以使用注解方式配置Servlet了。 Servlet3.0之前的版本都需要在web.xml中配置,Servlet是两对标签 阅读全文
posted @ 2019-12-25 00:13 tr1ple 阅读(532) 评论(0) 推荐(0) 编辑
摘要:一.反射篇1 classloader就是java的类加载器,告诉虚拟机如何加载这个类。默认情况下根据类名来加载类,类名必须是完整路径 public class class_init { { System.out.println("123"); } static { System.out.printl 阅读全文
posted @ 2019-12-22 00:03 tr1ple 阅读(2310) 评论(2) 推荐(0) 编辑
摘要:本文首发于先知:https://xz.aliyun.com/t/6914 漏洞分析 FastJson1.2.24 RCE 在分析1.2.47的RCE之前先对FastJson1.2.24版本中的RCE进行一个简单的漏洞链分析,为在本篇文章后面1.2.47中漏洞的调用过程做个铺垫。在本文中的1.2.24 阅读全文
posted @ 2019-12-12 18:41 tr1ple 阅读(2568) 评论(0) 推荐(0) 编辑
摘要:环境搭建: 漏洞影响版本: fastjson在1.2.24以及之前版本存在远程代码执行高危安全漏洞 环境地址: https://github.com/vulhub/vulhub/tree/master/fastjson/vuln 正常访问页面返回hello,world~ 此时抓包修改content- 阅读全文
posted @ 2019-11-24 20:50 tr1ple 阅读(4212) 评论(2) 推荐(1) 编辑