JAVA安全

干货 | HW中盛行的Java内存马,如何全面检测?

1. 背景1.1. Java内存马是什么?内存马是一种仅在内存中运行、没有文件落地的恶意程序,因此具有较强的隐蔽性,能够避开常规的基于文件系统的检测。Java内存马是针对Java语…

深入探析jdk7u21到jdk8u20原生反序列化

仅需JDK在指定版本,有反序列化入口,但无需其他的依赖包比如CC,CB能否直接打入反序列化?其中一个答案就是java原生反序列化链JDK7u21jdk7u21原生反序列化没有CC依…

CC1链_全网最菜的分析思路

1 你必须知道的点1.1 反序列化利用链的起点是readObject()方法Java的序列化机制允许将对象的状态保存到一个字节流中,之后可以从这个字节流中恢复(或“反序列化”)出对…

JAVA安全 | Classloader:理解与利用一篇就够了

前言ClassLoader 作为 JAVA 安全研究基础又核心的部分, 本篇文章将从0到1理解 ClassLoader, 并在理解 ClassLoader 途中融入 ClassLo…

深入剖析Java内存马:Tomcat下的Servlet、Filter与Listener攻击技术

前言Java作为企业级应用最广泛使用的编程语言之一,其生态的复杂性和广泛性使得JavaWeb内存马技术尤为引人注目。JavaWeb内存马通过直接在内存中注入并执行恶意代码,绕过了传…

基于动态代理构造的LazyMap版 CC及利用二次反序列化的修复

前置知识:Java动态代理静态代理假设现在有这么一个需求:创建了一个接口A,里面有display()函数、select()函数、add()函数,类AImpl实现了这三个函数,类As…

CommonCollections1入门详解

CC链的介绍Apache Commons 当中有⼀个组件叫做 Apache Commons Collections ,主要封装了Java 的 Collection(集合) 相关类对…

Java字节码技术之ASM

基本概念介绍Java字节码是Java虚拟机(JVM)的执行语言。每当我们编写Java代码并将其编译时,Java编译器将源代码转换为一个平台独立的二进制格式,即字节码。字节码是Jav…

Java字节码技术之JavaAssist

引言在Java开发中,字节码操作是一个高级技术,用于在运行时修改或生成类的行为。JavaAssist是一个开源的字节码操作库,它提供了一种相对简单的方式来处理Java字节码,使开发…

java字节码技术之JavaAgent 和 SecurityManager

Java平台提供了两个强大的机制,JavaAgent和SecurityManager,用于增强和保护应用的运行时环境。这些机制不仅允许开发者在运行时修改类的行为,还能够强制实施安全…