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

电子厂家网站建设网上开店如何推广自己的网店

电子厂家网站建设,网上开店如何推广自己的网店,全国优秀施工企业查询,广州公司宣传片目录 一、了解pop链 1、pop链#xff1a; 2、pop链触发规则#xff1a; #xff08;1#xff09;通过普通函数触发#xff1a; #xff08;2#xff09;通过魔术方法触发#xff1a; 3、pop链魔术方法例题#xff1a; 一、了解pop链 1、pop链#xff1a; pop链…目录 一、了解pop链 1、pop链 2、pop链触发规则 1通过普通函数触发 2通过魔术方法触发 3、pop链魔术方法例题 一、了解pop链 1、pop链 pop链全称Property Overwrite Protection是一种通过反序列化来构造的攻击载荷。 2、pop链触发规则 1通过普通函数触发 打开靶场观察源代码 ?php highlight_file(__FILE__); error_reporting(0); class index {private $test;public function __construct(){$this-test new normal();}public function __destruct(){$this-test-action();} } class normal {public function action(){echo please attack me;} } class evil {var $test2;public function action(){eval($this-test2);} } unserialize($_GET[test]); ? 观察到eval()函数说明我们需要利用eval()函数来拿到用户信息eval()函数是通过 函数action() 来调用的所以我们去上面找谁能够调用action函数我们发现 类index中的_destruct()函数能够调用eval()函数但是调用的是类normal中的action函数我们只需要构造序列化字符串让_destruct()函数中的test属性调用类evil中的action()函数即可。并将我们的恶意代码赋值给$test2上传给[test]就可以打到目的。 注意序列化字符串中由于$test为私有属性所以要将indextest改写为 %00index%00test。 赋值给[test]并上传 用户id信息成功显示。 2通过魔术方法触发 打开靶场观察源代码 ?php highlight_file(__FILE__); error_reporting(0); class fast {public $source;public function __wakeup(){echo wakeup is here!!;echo $this-source;} } class sec {var $benben;public function __tostring(){echo tostring is here!!;} } $b $_GET[benben]; unserialize($b); ? 目标同时触发_wakeup()和_toString()两个函数 _wakeup()在反序列化时自动调用。_toString()在将对象作为字符串时自动调用。 对[benben]进行赋值后_wakeup()函数一定会被触发。 对于_toString()函数我们只需要构造payload将类sec的实例化对象赋值给类fast的实例化对象这样就可以触发_toString方法。 构造payload: 将payload赋值给[benben]页面结果如下 3、pop链魔术方法例题 ?php //flag is in flag.php highlight_file(__FILE__); error_reporting(0); class Modifier {private $var;public function append($value){include($value);echo $flag;}public function __invoke(){$this-append($this-var);} }class Show{public $source;public $str;public function __toString(){return $this-str-source;}public function __wakeup(){echo $this-source;} }class Test{public $p;public function __construct(){$this-p array();}public function __get($key){$function $this-p;return $function();} }if(isset($_GET[pop])){unserialize($_GET[pop]); } ? 第一步根据 flag is in flag.php应将$value赋值为 flag.php 第二步触发_invoke()函数来调用append()函数_invoke函数的触发条件是将对象当作函数来进行使用。 第三步将类Test中的属性p赋值为类Modifier的实例化对象并将其赋值给$function凭借return function()来调用_invoke()函数。 第四步触发_get()函数_get()函数的调用方法是调用一个类中没有的属性将类Show中的$str赋值为类Test的实例化对象Test的实例化对象中不存在属性$source这样调用类中不存在的属性就可以_get()函数。 第五步触发_toString()函数将类Show的实例化对象show赋值给$source利用反序列化时调用_wakeup()函数的机会来触发_toString()函数。 我们通过以上分析来尝试构造payload: 注意类Modifier中的$var属性为私有属性我们应该在 Modifier的两边加上 %00 再将其填写到url中去。 可以看到 flag 成功回显。
http://www.w-s-a.com/news/86201/

相关文章:

  • 网站建设费税率dz论坛seo设置
  • 推销网站话术商业网站开发与设计
  • 金华网站建设哪个网站做欧洲旅行比较好
  • 东莞市住房和城乡建设局网站trswcm网站建设
  • 郑州做网站企业h5编辑器免费版
  • 加强公司窗口网站建设陕西省外省入陕建筑信息平台
  • 成都网站优化实战大连企业网站建设模板
  • 服务器硬件影响网站速度seo网站推广价格
  • 学院网站开发竞争对手分析买网站送域名
  • 手机网站 jsp个人网页制作成品代码五个页面
  • ppt做长图网站wordpress文章页面图片自动适应
  • 做泌尿科网站价格京东商城网站建设教程
  • 像网站的ppt怎么做的移动app与网站建设的区别
  • 怎么建个人网站网站收录有什么用
  • 广州市医院网站建设广州头条新闻最近一周
  • 广州移动 网站设计中国交通建设监理协网站
  • 甘肃省第八建设集团公司网站wordpress topnews
  • 公司网站建设维保协议wordpress会员可看
  • 合肥百度网站排名优化深圳集团网站开发公司
  • 可以直接打开网站的方法手机回收站
  • 山西免费网站制作中天建设集团有限公司第九建设公司
  • 好的网站有哪些企业微信开发者工具
  • 网站通栏代码老外做的中国汉字网站
  • 东莞公司建站哪个更便宜wordpress宝塔伪静态
  • 六安网站建设价格做网站好吗
  • 中小企业网站建设咨询湖南省邵阳建设局网站
  • 分类网站一天做几条合适南安网络推广
  • 案例学 网页设计与网站建设百度竞价关键词出价技巧
  • 做公司网站要那些资料南雄网站建设
  • 自己做的网站发布到网上视频播放不了网页游戏奥奇传说