米安程式碼審計 04 截斷漏洞剖析
本文記錄 PHP 程式碼審計的學習過程,教程為暗月 2015 版的 PHP 程式碼審計課程
1. 環境
- 虛擬機器搭建的環境
- web環境: phpstudy php5.4
- 程式版本:dvwa
- %00 截斷所需要的 php 版本必須小於 5.3.4,否則不執行
2. 漏洞復現
-
簡介
該漏洞存在於php的move_uploaded_file()函式中,這個函式一般在上傳檔案時被使用,用途是將上傳的檔案移動到新位置。
-
語法
move_uploaded_file ( string $filename , string $destination )
-
測試
這次的漏洞就出現在 $destination 這個引數中,這個引數代表的是上傳檔案移動的最終目的地址。如果 $destination 變數是從使用者 $_GET 或 $_POST 中獲得的並且我們可控,那麼我們可以利用空字元 %00 來截斷後面的擴充名,從而造成任意檔案上傳。
利用 DVWA 的 high 難度來演示,首先我們把 move_uploaded_file() 函式的第二個引數改成我們可控的 $_POST[‘xxname’]。
上傳檔案,這裡把POST的xxname引數利用空字元進行截斷。
上傳的檔案
受影響的 php 版本:
5.4.38~5.6.6,同時由於php 5.2版本本身就受到00截斷漏洞的影響,所以也在受影響的行列之中。
相關文章
- 米安程式碼審計 07 越權漏洞
- 米安程式碼審計 05 檔案上傳漏洞
- 米安程式碼審計 06 PHPYUN V3.0 任意檔案上傳漏洞PHP
- 米安程式碼審計 08 ThinkSNS 垂直平行越權
- [JavaWeb]Shiro漏洞集合——程式碼審計JavaWeb
- [程式碼審計]php上傳漏洞總結PHP
- java程式碼審計人工漏洞檢測方法Java
- Java程式碼審計篇 - ofcms系統審計思路講解 - 篇4 - XXE漏洞審計Java
- 程式碼審計之邏輯上傳漏洞挖掘
- Java程式碼審計篇 - ofcms系統審計思路講解 - 篇2 - SQL隱碼攻擊漏洞審計JavaSQL
- PHP程式碼審計04之strpos函式使用不當PHP函式
- 網站程式碼漏洞審計挖掘與修復方法網站
- Java程式碼審計篇 - ofcms系統審計思路講解 - 篇3 - 檔案上傳漏洞審計Java
- 網站漏洞檢測 wordpress sql注入漏洞程式碼審計與修復網站SQL
- PHP程式碼審計03之例項化任意物件漏洞PHP物件
- buu 程式碼審計
- JFinalcms程式碼審計
- CSCMS程式碼審計
- 04夢斷程式碼閱讀筆記筆記
- 什麼是程式碼審計?程式碼審計有什麼好處?
- 程式碼審計————目錄
- Graudit程式碼安全審計
- 程式碼審計是什麼?程式碼審計操作流程分為幾步?
- python 安全編碼&程式碼審計Python
- 通過程式碼審計找出網站中的XSS漏洞實戰(三)網站
- 通過程式碼審計找出網站中的 XSS 漏洞實戰 (三)網站
- 哪些業務場景需要做程式碼審計?程式碼審計很重要嗎?
- oasys系統程式碼審計
- Zip Slip漏洞審計實戰
- Java程式碼審計入門篇Java
- 程式碼審計入門總結
- Hackthebox bagel.dll 程式碼審計
- 為什麼要做程式碼審計?
- Java 程式碼審計 — 1. ClassLoaderJava
- Java審計之檔案操作漏洞Java
- 某小型CMS漏洞復現審計
- webgoat白盒審計+漏洞測試WebGo
- PHP程式碼審計——Day 5-postcardPHP