先上学习链接: https://www.freebuf.com/column/202607.html https://www.cnblogs.com/ichunqiu/p/10484832.html https://blog.csdn.net/weixin_44077544/article/details/102703489 https://www.jianshu.com/p/3b44e72444c1 知识点:PHP反序列化漏洞,字符逃逸. 着重记录一点:[转自https://www.jians…
目录 刷题记录:[0CTF 2016]piapiapia 一.涉及知识点 1.数组绕过正则及相关 2.改变序列化字符串长度导致反序列化漏洞 二.解题方法 刷题记录:[0CTF 2016]piapiapia 题目复现链接:https://buuoj.cn/challenges 参考链接:0CTF-2016-piapiapia 一.涉及知识点 1.数组绕过正则及相关 参考利用数组绕过问题小总结 md5(Array()) = null sha1(Array()) = null ereg(pattern…
一道非常有意思的反序列化漏洞的题目 花费了我不少时间理解和记忆 这里简单记录其中精髓 首先打开是一个登陆页面 dirsearch扫描到了www.zip源码备份 update.php <?php require_once('class.php'); if($_SESSION['username'] == null) { die('Login First'); } if($_POST['phone'] && $_POST['email'] && $_POST['nickn…
我尝试了几种payload,发现有两种情况. 第一种:Invalid user name 第二种:Invalid user name or password 第一步想到的是盲注或者报错,因为fuzz一波有一些是没有过滤掉的. 对于后台的拦截我想到的可能是黑名单或者是正则表达式匹配. 先不管,用字典扫一遍扫到源码直接下载下来. 每个文件都看了一遍发现root的username是可以使用的,提示出来是Invalid password 这一段是class.php的源代码 public function…
步骤: nickname[]=wherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewherewhere";}s:5:"photo";s:10:"config.php";} 这题大佬的WP已经很…
序列化 序列化说通俗点就是把一个对象变成可以传输的字符串 php serialize()函数 用于序列化对象或数组,并返回一个字符串.序列化对象后,可以很方便的将它传递给其他需要它的地方,且其类型和结构不会改变. <?php $sites = array('Google', 'Microsoft', 'Facebook'); $serialized_data = serialize($sites); echo $serialized_data . PHP_EOL; ?> 输出: a:3:{i:…
目录 0x00 first 前几天joomla爆出个反序列化漏洞,原因是因为对序列化后的字符进行过滤,导致用户可控字符溢出,从而控制序列化内容,配合对象注入导致RCE.刚好今天刷CTF题时遇到了一个类似的场景,感觉很有意思,故有本文. 0x01 我打我自己之---序列化问题 关于序列化是什么就不再赘述了,这里主要讲几个跟安全相关的几个点. 看一个简单的序列化 <?php $kk = "123"; $kk_seri = serialize($kk); //s:3:"123…
序列化与反序列化 序列化用途:方便于对象在网络中的传输和存储 0x01 php反序列化漏洞 在PHP应用中,序列化和反序列化一般用做缓存,比如session缓存,cookie等. 常见的序列化格式: 二进制格式 字节数组 json字符串 xml字符串 序列化就是将对象转换为流,利于储存和传输的格式 反序列化与序列化相反,将流转换为对象 例如:json序列化.XML序列化.二进制序列化.SOAP序列化 而php的序列化和反序列化基本都围绕着 serialize(),unserialize()这两个…
简介  原题复现:  考察知识点:反序列化.数组绕过  线上平台:https://buuoj.cn(北京联合大学公开的CTF平台) 榆林学院内可使用信安协会内部的CTF训练平台找到此题 漏洞学习 数组绕过 1.1 url传递数组当我们要向服务器传递数组时,我们可以通过 http://127.0.0.1/index.php?a[]=hello&a[]=world 来传递,这样,在后端, $a = $_GET['a']; 就可以接收到 $a[0]="hello", $a[1]=&q…
catalog . 漏洞描述 . PHP SESSION持久化 . PHP 序列化/反序列化内核实现 . 漏洞代码分析 . POC构造技巧 . 防御方案 . Code Pathc方案 1. 漏洞描述 Joomla在处理SESSION序列化数据的时候,对序列化格式未进行严格规范,导致攻击者可以构造畸形HTTP包,实现对象注入 Relevant Link: https://developer.joomla.org/security-centre/630-20151214-core-remote-co…