当前位置: 首页 > news >正文

北京疫情情况 最新消息今天关键词优化排名查询

北京疫情情况 最新消息今天,关键词优化排名查询,上海网站制作全包,做app必须有网站前言 最近在打西电的新生赛&#xff0c;有道反序列化的题卡了很久&#xff0c;今天在NSS上刷题的时候突然想到做法&#xff0c;就是利用字符串逃逸去改变题目锁死的值&#xff0c;从而实现绕过 为了研究反序列化的字符串逃逸 我们先简单的测试下 原理 <?php class escape…

前言

最近在打西电的新生赛,有道反序列化的题卡了很久,今天在NSS上刷题的时候突然想到做法,就是利用字符串逃逸去改变题目锁死的值,从而实现绕过

为了研究反序列化的字符串逃逸
我们先简单的测试下

原理

<?php
class escape{                                                                   public $name;                                                 public $psword;                                            public $flag;       public function __construct($u,$p){$this->name = $u;$this->psword = $p;$this->flag = 0;}                   
}
$a=new escape('admin','123456');
echo serialize($a);
?> 

输出结果为

O:6:"escape":3:{s:4:"name";s:5:"admin";s:6:"psword";s:6:"123456";s:4:"flag";i:0;}

假设我们增加一个检测函数,去替换我们序列化之后的值,则

<?php
class escape{                                                                   public $name;                                                 public $psword;                                            public $flag;       public function __construct($u,$p){$this->name = $u;$this->psword = $p;$this->flag = 0;}                   
}
function filter($s){return str_replace("admin","hacker",$s);
}$a=new escape('admin','123456');
$a_filter = filter(serialize($a));
echo $a_filter;
?> 

输出结果为

O:6:"escape":3:{s:4:"name";s:5:"hacker";s:6:"psword";s:6:"123456";s:4:"flag";i:0;}

我们比对下这两串输出结果

O:6:"escape":3:{s:4:"name";s:5:"admin";s:6:"psword";s:6:"123456";s:4:"flag";i:0;}
O:6:"escape":3:{s:4:"name";s:5:"hacker";s:6:"psword";s:6:"123456";s:4:"flag";i:0;}

可以发现下面那一串的hacker的长度与实际长度不匹配
假设当$flag=1时回显flag,由于题目是改不了的,那么我们就可以利用字符串逃逸来实现

目标字符串

O:6:"escape":3:{s:4:"name";s:5:"admin";s:6:"psword";s:6:"123456";s:4:"flag";i:1;}

我们可以把";s:6:"psword";s:6:"123456";s:4:"flag";i:1;}写入到name的值里面,然后通过admin替换hacker的长度差值与之相等即可

我们先写入name里,然后计算下长度为44+5

O:6:"escape":3:{s:4:"name";s:49:"admin";s:6:"psword";s:6:"123456";s:4:"flag";i:1;}";s:6:"psword";s:6:"123456";s:4:"flag";i:0;}

由于我们要挤掉后面长度为44的字符串,构造44*admin
payload

O:6:"escape":3:{s:4:"name";s:49:"adminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadminadmin";s:6:"psword";s:6:"123456";s:4:"flag";i:1;}";s:6:"psword";s:6:"123456";s:4:"flag";i:0;}

即实例化上传的为

<?php
class escape{                                                                   public $name;                                                 public $psword;                                            public $flag;       public function __construct($u,$p){$this->name = $u;$this->psword = $p;$this->flag = 0;}                   
}
function filter($s){return str_replace("admin","hacker",$s);
}$a=new escape('adminadminadminadminadminadminadmin
adminadminadminadminadminadminadminadminadminadmin
adminadminadminadminadminadminadminadminadminadmin
adminadminadminadminadminadminadminadminadminadmin
adminadminadminadminadminadminadmin";s:6:"psword";s:6:"123456";s:4:"flag";i:1;}','123456');$a_filter = filter(serialize($a));
$a_filter_unseri = unserialize($a_filter);
var_dump($a_filter_unseri);

我们可以看到flag的值变为1,成功绕过
在这里插入图片描述

http://www.ds6.com.cn/news/61215.html

相关文章:

  • 郑州疫情到底有多严重seo关键词推广价格
  • php网站开发技术前景站长工具网站备案查询
  • 大连网站建设宁波seo外包费用
  • php网站模版360指数
  • 地方性网站做本地推广案例如何在各种网站投放广告
  • 东昌府聊城做网站公司公司建网站多少钱
  • 新手怎么做跨境电商seow是什么意思
  • wordpress 点赞函数搜索引擎优化行业
  • 山东网站建设最便宜网页设计需要学什么
  • 咸阳网站建设学校超级优化大师
  • 杭州集团网站建设长沙排名推广
  • 域名注册后怎么建网站seo优化推广公司
  • 修车店怎么做网站百度搜索数据查询
  • 做网站设计所遇到的问题大型seo公司
  • 画廊网站模板 frontpage企业宣传网站
  • 免费查询企业电话网站优化网
  • 网站可以做多少个关键词百度应用商店
  • 如何网站里做照片seo系统培训哪家好
  • 北流网站建设百度首页优化排名
  • 网站建设课程教学改革山东最新资讯
  • 网站引导页分为三个板块设计风格营销策划方案公司
  • flash做网站的流程商城网站开发公司
  • 扬州网站建设 开元百度访问量统计
  • 网站设计 日语网站建设公司苏州
  • 网站开发经验总结与教训哪里能买精准客户电话
  • seo网站设计优化网络的软件下载
  • 常州网站建设运营网站优化方案案例
  • 网站开发学java吗电子商务网络营销
  • 做电子商务系统网站建设网站运营策划书
  • jsp网站开发源码实例指数工具