一个License认证机制靶场-反序列化场景 这个题是在国外的一个渗透赛里面弄到的standoff渗透赛 起初是git泄露,用GitHack可以拉取源码 然后代审了一下, LicenseController展示了网站的部分路由,其中主要是登录鉴权的一些操作 比如说可以这样鉴权 读入你传的License文件,然后调用解密函数进行解密 因为这是靶场,所…
apache Dubbo 反序列化攻击 CVE系列 原理 Apache Dubbo 默认支持泛化引用由服务端 API 接口暴露的所有方法,这些调用统一由 GenericFilter 处理。GenericFilter 将根据客户端提供的接口名、方法名、方法参数类型列表,根据反射机制获取对应的方法,再根据客户端提供的反序列化方式将参数进行反序列化成 p…
通过 JVM 参数或者配置文件进行配置 对于 RegistryImpl 在 RegistryImpl 中含有一个静态字段 registryFilter ,所以在 new RegistryImpl对象的时候,会调用 initRegistryFilter 方法进行赋值: initRegistryFilter方法会先读取 JVM 的 sun.rmi.re…
rmi中采用的局部过滤 我们之前是调试过rmi的各种利用的,但是这里补充一个新的点(其实应该也能发现,有些地方比如SAC的确正是如此):rmi中的registerImpl也就是注册中心并不是必须的,参考:深入理解rmi原理 - 简书 (jianshu.com) RMIRegistry 是必须的吗? No,RMIRegistry 起到的作用只是为了方…
JEP290 理论部分 漫谈 JEP 290 (seebug.org) JEP 介绍 JDK Enhancement Proposal 简称JEP,是 JDK 增强提议的一个项目,目前索引编号已经达到了JEP415,本文重点来谈谈什么是JEP290,JEP290做了哪些事,JEP290绕过的方法总结等。 JEP290 介绍 JEP290的描述是Fi…
c3p0反序列化 参考JAVA反序列化之C3P0 - 跳跳糖 (tttang.com) 环境搭建 记得maven换源 <dependency> <groupId>com.mchange</groupId> <artifactId>c3p0</artifactId> <version&…
JDK动态代理 讲一下静态代理 User.java public interface User { void show(); } UserImpl.java public class UserImpl implements User { public UserImpl(){} public void show(){ System.out.print…
java序列化基础知识 Java反序列化漏洞专题-基础篇(21/09/05更新类加载部分)_哔哩哔哩_bilibili 随便写个类 直接对他System.out.println(test);的话是这个效果 为了更加直观,我们给他加个魔术方法__tostring public String toString(){ System.out.println…
Apache Commons BeanUtils 环境搭建 <dependency> <groupId>commons-beanutils</groupId> <artifactId>commons-beanutils</artifactId> <version>1.9.4&l…
Rome1.0 之前见过,当时参考这个ROME反序列化分析 (c014.cn) yso里的rome1.0利用链如下 TemplatesImpl.getOutputProperties() NativeMethodAccessorImpl.invoke0(Method, Object, Object[]) NativeMethodAccessorIm…