__wakeup绕过版本_PHP__wakeup()方法
生活随笔
收集整理的這篇文章主要介紹了
__wakeup绕过版本_PHP__wakeup()方法
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
__wakeup函數(shù)是在php在使用反序列化函數(shù)unserialize()時(shí),會(huì)自動(dòng)調(diào)用的函數(shù)。只要序列化的中的成員數(shù)大于實(shí)際成員數(shù),即可繞過(guò)
<?php class xctf {public $flag = '111';public function __wakeup(){exit('bad requests');} }$a=new xctf(); var_dump(serialize($a));得到
string(36) "O:4:"xctf":1:{s:4:"flag";s:3:"111";}"所以把成員數(shù)"1",改為"2"即可繞過(guò)。
下面再詳細(xì)講講wakeup()方法。
_ _wakeup()作為魔術(shù)方法本身有一個(gè)漏洞,漏洞編號(hào) CVE-2016-7124,當(dāng)序列化字符串中表示對(duì)象屬性個(gè)數(shù)的值大于真實(shí)的屬性個(gè)數(shù)時(shí)會(huì)跳過(guò)__wakeup 的執(zhí)行。
正常構(gòu)造序列化對(duì)象:
O:7:"gxatest": 1 :{S:4:"test
總結(jié)
以上是生活随笔為你收集整理的__wakeup绕过版本_PHP__wakeup()方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 晶体三极管的三个工作区域及温度对特性的影
- 下一篇: 动态规划算法php,php算法学习之动态