java序列化和反序列化的概念:序列化:把Java对象转换为字节流的过程。反序列化:把字节流恢复为Java对象的过程。对象的序列化主要有两种用途:把对象的字节序列永久地保存到硬盘上,通常存放在一个文件...
FastJson原生反序列化链
0x01 前言好久不见,此次分析源于一次fastjson实战,遇到了其他链打不了,发现原生的链可以打,本着知其然,必要知其所以然的态度,做了一次学习复现,留做笔记。0x02 漏洞分析01 环境搭建老规...
Java反序列化利用:commons-beanutils(cb链)简单分析
前言上篇文章了解了shiro反序列化漏洞是如何挖掘出来的,接下来看看如何利用各种链条来执行命令 本文分析commons-beanutils链条 简称cb链java反序列化漏洞先简单了解下java反序列...
JavaScript 前端对抗那些事儿
0x01 简介 文章较长,为保证有效传递知识,已经为大家准备了 PDF 版本,放在了文末JavaScript代码混淆是一种通过对代码进行转换和修改,使其难以理解和逆向工程的技术。它的主要目的是增加代码...
JS代码混淆 | js 逆向系列
0x01 简介 文章较长,为保证有效传递知识,已经为大家准备了 PDF 版本,放在了文末JavaScript代码混淆是一种通过对代码进行转换和修改,使其难以理解和逆向工程的技术。它的主要目的是增加代码...
LDAP 学习笔记
LDAP: Lightweight Directory Access Protocol 轻量级目录访问协议. ldap 用树状结构存储数据, 类似于电话簿, 也能作为类似于 windows 的域环境....
ClassLoader动态类加载
在JNDI、RMI等攻击中,我们常会用到这么一段测试代码 public class Exec { static { try { Runtime.getRuntime().exec("calc"); }...
写出漂亮代码的45个小技巧
大家好,我是三友~~不知道大家有没有经历过维护一个已经离职的人的代码的痛苦,一个方法写老长,还有很多的if else ,根本无法阅读,更不知道代码背后的含义,最重要的是没有人可以问,此时只能心里默默地...
原创 | ClassLoader动态类加载
在JNDI、RMI等攻击中,我们常会用到这么一段测试代码public class Exec { static { try { Runtime.getRuntime().exec("calc"); } ...
【A9】Fastjson反序列化漏洞原理
“A9 Team 甲方攻防团队,成员来自某证券、微步、青藤、长亭、安全狗等公司。成员能力涉及安全运营、威胁情报、攻防对抗、渗透测试、数据安全、安全产品开发等领域,持续分享安全运营和攻防的思考和实践。”...
【基础漏洞】不安全的反序列化
什么是序列化和反序列化漏洞介绍复现过程pickle 模块介绍魔术方法 `__reduce__()`漏洞场景举例复现漏洞危害修复建议 什么是序列化和反序列化 序列化和反序列化是指用于将对象或数据结构转换...
JAVA安全|基础篇:浅谈序列化协议解析及应用
本文为JAVA安全系列文章第二十八篇,主要学习序列化协议语法以及序列化协议的实战应用。0x01 原始序列化数据的解析现在有如下一个实现了java.io.Serializable接口的简单P...
5