天天看點

[SWPUCTF 2018]SimplePHP

簡單的phar反序列化

首先我們需要将​<code>​php.ini​</code>​中的​<code>​phar.readonly​</code>​選項設定為Off,否則無法生成​<code>​phar​</code>​檔案。

大緻生成代碼如下:

如上面代碼,我們隻需要将需要反序列化的代碼指派給​<code>​$a​</code>​就可以了。運作後就會出現一個phar.phar字尾名的檔案,且它生成後檔案名可以随便修改,不會丢失它檔案的屬性。

進來一個檔案上傳讀取界面,先上傳馬兒檔案失敗,然後回到檢視檔案的位置

[SWPUCTF 2018]SimplePHP

發現​<code>​/file.php?file=​</code>​,讀取​<code>​class.php​</code>​:

提示​<code>​phar:​</code>​反序列化,我們想利用的地方肯定是​<code>​file_get​</code>​,依次尋找鍊子,鍊子如下:

然後就是生成​<code>​phar​</code>​檔案,exp如下:

然後修改字尾為​<code>​jpg​</code>​,上傳上去,再去通路​<code>​/upload​</code>​即可檢視檔案位置,最後payload:

[SWPUCTF 2018]SimplePHP