白名单+winhex
生活随笔
收集整理的這篇文章主要介紹了
白名单+winhex
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
1.地址
2.代碼解析
3.%00
4.上傳木馬文件
5.使用連接工具進行連接
原upload-labs靶場第11關,flag文件在C:\Windows\flag下
2.代碼解析
$is_upload = false; $msg = null; if(isset($_POST['submit'])){$ext_arr = array('jpg','png','gif');$file_ext = substr($_FILES['upload_file']['name'],strrpos($_FILES['upload_file']['name'],".")+1);if(in_array($file_ext,$ext_arr)){$temp_file = $_FILES['upload_file']['tmp_name'];$img_path = $_GET['save_path']."/".rand(10, 99).date("YmdHis").".".$file_ext;if(move_uploaded_file($temp_file,$img_path)){$is_upload = true;} else {$msg = '上傳出錯!';}} else{$msg = "只允許上傳.jpg|.png|.gif類型文件!";} }可以看出這是使用了白名單,但是文件保存路徑外漏 , 而00截斷通常用來繞過白名單的限制。?
3.%00
一種基于操作系統的漏洞,在識別字符串時,當讀取到\0字符時,就認為讀取到了一個字符串的結束符號。因此,我們可以通過修改數據包,插入\0字符的方式,達到字符串截斷的目的。
a.asp%00.jpg 就會變成a.asp,后面的.jpg就會被%00截斷了
使用條件
- php版本小于5.3.29
- magic_quotes_gpc = Off
要不會使用%00的時候會上傳錯誤
4.上傳木馬文件
上傳一個php文件,使用bp抓包進行修改
上傳成功
5.使用連接工具進行連接
找到flag文件下的圖片將起下載下來
6.使用winhex查看
總結
以上是生活随笔為你收集整理的白名单+winhex的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DITA与DocBook对比分析
- 下一篇: 网上订票软件测试工资,软件测试实践《Lo