一.php反序列化
1.无类,主要涉及到两个方面就是serialize与unserialize,前者是将执行结果序列化,后者是反过来,在ctf如果是无类的需要注意他的逻辑问题,一些小坑
2.有类,魔术方法,这个东西是一系列函数,他会在不经意之间就被调用
__construct() //当一个对象创建时被调用
__destruct() //对象被销毁时触发
__wakeup() //使用unserialize时触发
__sleep() //使用serialize时触发
__toString() //把类当做字符串时触发
__get() //用于从不可访问的属性读取数据
__set() //用于将数据写入不可访问的属性
漏洞(CVE-2016-7124)使序列化字符串中表示对象属性个数的值大于真实的属性个数,
以此跳过__wakeup 的执行,达到绕过的目的
二.java反序列化
三.xxe漏洞
1.XML(Extensible Markup Language)意为可扩展性标记语言,XML 文档结构包括 XML 声明、文档类型定义(DTD)、文档元素,xxe的产生就是他接受了,xml文本,这个文本有漏洞,他可以做反弹shell