博客园 首页 私信博主 显示目录 隐藏目录 管理
Live2D

随笔分类 -  不安全的反序列化

摘要:题目 拿到题目 分析 第一个绕过 if(isset($text)&&(file_get_contents($text,'r') "welcome to the zjctf")) file_get_contents($text,'r')是读取文件的内容,说明我们首先要上传一个文件,并且它的内容还得是" 阅读全文
posted @ 2020-09-11 17:52 My_Dreams 阅读(851) 评论(0) 推荐(1) 编辑
摘要:本题是某信有一次内部比赛的题目,涉及到pop链的构造问题,所以在这里与大家分享一下 题目 查看源码 逻辑是当参数fn存在且不包含string、zlib、flag这三个字符串时,进行文件包含这里的过滤是为了防止我们直接读取到flag.php的源码,因为毕竟题名是反序列化如果不存在fn,对code进行反 阅读全文
posted @ 2020-09-05 11:08 My_Dreams 阅读(1381) 评论(0) 推荐(1) 编辑
摘要:那次某信内部比赛中有道pop链问题的题目,我当时没有做出来,所以在此总结一下,本次以buu上复现的[MRCTF2020]Ezpop为例。 题目 1 Welcome to index.php 2 <?php 3 //flag is in flag.php 4 //WTF IS THIS? 5 //Le 阅读全文
posted @ 2020-09-05 09:57 My_Dreams 阅读(516) 评论(0) 推荐(0) 编辑
摘要:我们一般利用反序列漏洞,一般都是借助unserialize()函数,不过随着人们安全的意识的提高这种漏洞利用越来越来难了,但是在今年8月份的Blackhat2018大会上,来自Secarma的安全研究员Sam Thomas讲述了一种攻击PHP应用的新方式,利用这种方法可以在不使用unserializ 阅读全文
posted @ 2020-06-02 12:53 My_Dreams 阅读(8687) 评论(2) 推荐(13) 编辑
摘要:1.POP链原理简介: 在反序列化中,我们能控制的数据就是对象中的属性值,所以在PHP反序列化中有一种 漏洞利用方法叫"面向属性编程",即POP( Property Oriented Programming)。 在反序列化漏洞利用中,最理想的情况就是漏洞能利用的点在那几个魔幻函数中, 而实际上往往是 阅读全文
posted @ 2020-06-01 12:35 My_Dreams 阅读(701) 评论(0) 推荐(1) 编辑
摘要:一道浙大的题目 题目地址:http://web.jarvisoj.com:32784 拿到这道题目, 是一道反序列化的题目,题目源码很简单,当创建OowoO()这个类的对象时,会自动调用__construct()这个魔术方法,给mdzz这个变量赋值为"phpinfo();",然后程序执行结束后会自动 阅读全文
posted @ 2020-06-01 12:05 My_Dreams 阅读(530) 评论(0) 推荐(0) 编辑
摘要:拿到题目,是个这, 我们来一波代码审计 1 <?php 2 class Demo { 3 private $file = 'index.php'; 4 public function __construct($file) { 5 $this->file = $file; //构造函数,对类的变量进行 阅读全文
posted @ 2020-05-31 22:47 My_Dreams 阅读(841) 评论(0) 推荐(0) 编辑
摘要:跳过_wakeup()魔法函数__wakeup(): 将在序列化之后立即被调用漏洞原理: 当反序列化字符串中,表示属性个数的值大于其真实值,则跳过__wakeup()执行 对于该题,先可以看到类xctf中有flag变量,并调用了__wakeup(),则考虑实例化xctf类并将其变量序列化。并猜测意图 阅读全文
posted @ 2020-05-31 22:12 My_Dreams 阅读(1529) 评论(0) 推荐(0) 编辑
摘要:先来了解一下关于session的一些基础知识 什么是session?在计算机中,尤其是在网络应用中,称为“会话控制”。Session 对象存储特定用户会话所需的属性及配置信息。这样,当用户在应用程序的 Web 页之间跳转时,存储在 Session 对象中的变量将不会丢失,而是在整个用户会话中一直存在 阅读全文
posted @ 2020-05-30 21:58 My_Dreams 阅读(2164) 评论(1) 推荐(3) 编辑
摘要:0x00 前言 最近也是在复习之前学过的内容,感觉对PHP反序列化的理解更加深了,所以在此总结一下 0x01 serialize()函数 “所有php里面的值都可以使用函数serialize()来返回一个包含字节流的字符串来表示。序列化一个对象将会保存对象的所有变量,但是不会保存对象的方法,只会保存 阅读全文
posted @ 2020-05-30 18:04 My_Dreams 阅读(1552) 评论(0) 推荐(0) 编辑

(function() { $("pre").addClass("prettyprint"); prettyPrint(); })();

点击右上角即可分享
微信分享提示