加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程 > 正文

深入浅析PHP的session反序列化裂痕题目

发布时间:2021-01-18 19:54:57 所属栏目:编程 来源:网络整理
导读:在php.ini中存在三项设置项: 以上的选项就是与PHP中的Session存储和序列话存储有关的选项。 在行使xampp组件安装中,上述的设置项的配置如下: 在上述的设置中,session.serialize_handler是用来配置session的序列话引擎的,除了默认的PHP引擎之外,还存在

在__tostring中会挪用unserialize($this->attr),由于后头用到token和ticket,以是显然时TOPA工具。后头判定必要$this->obj->token === $this->obj->ticket,以是在序列化的时辰举办指针引用使$a->ticket = &$a->token;,即可绕过判定。

至于为什么(string)$this->obj会输出flag,靠山写的login也许是__tostring吧。

个中反序列化字符串中会有一个__wakeup()函数清空内里的参数,我问可以通过一个cve来绕过:CVE-2016-7124。将Object中暗示数目的字段改成比现实字段大的值即可绕过wakeup函数。

最后的代码为:

username = 0; $testa->password = 0; $testa->ticket = &$testa->token; $sa = serialize($testa); $testc->attr = $testb; $testb->attr = $sa; $test = serialize($testc); echo $test;

最终payload为:

以上所述是小编给各人先容的PHP的session反序列化裂痕,但愿对各人有所辅佐。措施员碰着题目城市上(编程之家52php.cn)查找题目解答要领!假如认为站点还不错,顺手转发给措施员伴侣一下!

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读