国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

Phar反序列化超詳細介紹

瀏覽:18日期:2022-06-05 18:00:37
目錄
  • Phar是什么
  • 如何創建一個Phar 文件
  • 如何反序列化利用

Phar是什么

在百度中得到介紹是這樣的:

在軟件中,PHAR(PHP歸檔)文件是一種打包格式,通過將許多PHP代碼文件和其他資源(例如圖像,樣式表等)捆綁到一個歸檔文件中來實現應用程序和庫的分發。phar文件本質上是一種壓縮文件,會以序列化的形式存儲用戶自定義的meta-data。當受影響的文件操作函數調用phar文件時,會自動反序列化meta-data內的內容。

理解為php特有的一種打包方式,需要使用php代碼進行大包,且無法通過普通的工具進行解壓解包。

如何創建一個Phar 文件

創建之前了解Phar文件的組成結構:

stub:phar文件的標志,必須以 <?php xxx; __HALT_COMPILER();?>, 結尾,否則無法識別。xxx可以為自定義內容。
stub這一部分,在了解時發現其實這樣寫 < __HALT_COMPILER();> 也是可以正常解析的
manifest:phar文件本質上是一種壓縮文件,其中每個被壓縮文件的權限、屬性等信息都放在這部分。這部分還會以序列化的形式存儲用戶自定義的meta-data,這是漏洞利用最核心的地方。
content:被壓縮文件的內容
signature (可空):簽名,放在末尾。

開始之前需要修改配置php.ini配置文件,修改phar.readonly 配置為Off,之后重啟生效

最常見的創建Phar 文件php代碼

<?phpclass Test{   public  $test="test";}$p = new Test();$phar = new Phar("test.phar");//要創建的Phar文件名,必須是phar后綴$phar->startBuffering();//寫入之前開始緩沖Phar寫入操作$phar->setStub("<?php __HALT_COMPILER();?>");//設置stub$phar->setMetadata($p);//將自定義的meta-data存入manifest,這一部分就是把序列化的對象加入到meta-data$phar->addFromString("test.txt", "test");//添加要壓縮的文件(這一步必須要有,如果不設置就無法生成phar文件,文件隨便)$phar->stopBuffering();//簽名自動計算?>

執行代碼后會在當前代碼目錄下生成test.phar文件,以文本格式查看test.phar文件,在內容中可以看到Test類被序列化寫入了。O:4:“Test”:1:{s:4:“test”;N;}

如何反序列化利用

我們在構造特殊的meta-data數據后,在php中如果使用一些文件系統函數去引用調用phar文件就會觸發反序列化,下面是知道創宇測試確認受影響的函數。

這里使用is_dir函數,這是一個判斷傳入的是否是一個目錄的函數,創建與之前設置meta-data 的一個Test類,__wakeup魔術方法與__destruct 魔術方法在反序列化對象時都會觸發,__destruct 魔術方法是在銷毀時觸發。

<?phpclass Test{    function __wakeup()    {echo($this ->test) ;    }}is_dir("phar://test.phar");//以phar偽協議的格式傳入?>

輸出結果,meta-data中的數據被反序列化觸發了__wakeup魔術方法,打印了test

在學習過程中,發現存在偽協議phar://關鍵詞不能出現在開頭的情況,師傅們的繞過方法是,使用下面的方式也能達到一樣的效果。

如果在上傳對phar文件頭進行校驗的檢測,可以根據相應的文件修改添加文件頭,如gif(GIF89a)

compress.bzip://phar:///test.phar/test.txt
compress.bzip2://phar:///test.phar/test.txt
compress.zlib://phar:///home/sx/test.phar/test.txt
php://filter/resource=phar:///test.phar/test.txt

到此這篇關于Phar反序列化超詳細介紹的文章就介紹到這了,更多相關Phar反序列化內容請搜索以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持!

標簽: PHP
相關文章:
主站蜘蛛池模板: 人人99| 免费无遮挡毛片 | 精品小视频在线观看 | 色老久久精品偷偷鲁一区 | 国产精品99久久久久久小说 | 日韩精品一区二区三区不卡 | 国产自愉自愉全免费高清 | 国产一区二区中文字幕 | 91porny九色国产首页在线 | 国产视频二区在线观看 | 久久国产精品久久国产片 | 奇米影视7777久久精品 | 久久99国产亚洲精品 | 玖玖99视频 | 多人伦精品一区二区三区视频 | 国产三级精品久久三级国专区 | 97免费在线 | 一级一级 a爱片免费视频 | 黄色美女免费网站 | 男人av的天堂 | 亚洲第一中文字幕 | 日韩欧美特级毛片 | 亚洲国产成人久久综合野外 | 午夜欧美成人香蕉剧场 | 怡红院免费在线视频 | 国产精品福利午夜h视频 | 成人18网站 | 高清色黄毛片一级毛片 | 欧美一区二区三区不卡免费 | 成人免费夜片在线观看 | 久久综合九九亚洲一区 | 午夜一级成人 | 在线观看精品视频网站www | 男女性高爱潮免费网站 | 91在线免费观看网站 | 成人三级做爰在线观看男女 | 国产美女无遮挡软件 | 国产成人精品男人的天堂网站 | 国产美女一区二区在线观看 | 色久视频| 免费在线成人网 |