一、__wakeup()魔法函數(shù)繞過:
在PHP中,__wakeup()是一個(gè)魔術(shù)方法,用于在反序列化對(duì)象時(shí)自動(dòng)調(diào)用。當(dāng)反序列化字符串中的對(duì)象屬性個(gè)數(shù)大于實(shí)際屬性個(gè)數(shù)時(shí),可以利用這個(gè)漏洞進(jìn)行繞過。
觸發(fā)條件:
- PHP版本為5.6.25或早期版本,或者PHP7版本小于7.0.10。
- 反序列化字符串中的對(duì)象屬性個(gè)數(shù)的值大于實(shí)際屬性個(gè)數(shù)。
二、正則繞過:(代碼可能有些問題)
可以使用正則表達(dá)式中的加號(hào)+來進(jìn)行繞過,通過添加位置來改變類名的個(gè)數(shù)。下面是一個(gè)例子:
0:4:"Demo":1:{s:10:"Demo file";s:8:"flag.php";}
如果要進(jìn)行繞過,可以使用加號(hào)來添加位置:
0:+4:"Demo":1:{s:10:"Demo file";s:8:"flag.php";}文章來源:http://www.zghlxwxcb.cn/news/detail-800620.html
if (preg_match('/[oc]:\d+:/i', $Svar)) {
die("stop hacking!");
} else {
unserialize($Svar);
}
三、實(shí)戰(zhàn)
靶場地址:
BUUCTF在線評(píng)測 (buuoj.cn)?或 搜索&#x文章來源地址http://www.zghlxwxcb.cn/news/detail-800620.html
到了這里,關(guān)于PHP反序列化漏洞-魔術(shù)方法繞過的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!