序列化就是将对象的信息状态转为可以存储或传输形式的过程
反序列化就是从存储的数据重新转化为对象的过程
JAVA中的序列化函数为
writeObject()
JAVA中反序列化的函数为
readObject()
如何判断是否存在JAVA的反序列化漏洞
一般JAVA进行序列化传输的过程中会使用base64编码或者16进制
如果发现以下特征的数据传输格式
一段数据以rO0AB 开头 基本上可以确定这串就是java序列化base64加密的数据
一段数据以aced 开头,那么他就是一段java序列化的16进制
就可以去尝试反序列化漏洞利用。
java反序列化利用时候可以使用工具 ysoserial
可以生成payload