Web网络攻防文件上传。.
Web網絡攻防文件上傳
上傳漏洞靶場upload-labs安裝
upload-labs 是由php 語言靶場,因此需要在PhpStudy下進行使用。
靶場文件下載:https://github.com/Tj1ngwe1/upload-labs
下載完成后將壓縮包解壓并放到Phpstudy的網站目錄phpstudy\www(根據自己的安裝路徑),并將文件名改為upload-labs
打開PhpStudy——其他選項菜單——PhpStudy設置——
允許目錄列表
瀏覽器輸入http://localhost/upload-labs/
或者:http://127.0.0.1/upload-labs/ 即可進入靶場
JS檢測繞過攻擊
JS檢測繞過上傳常用于用戶選擇文件上傳的后綴不被允許,則會彈框告知,上傳文件的數據包并沒有發送到服務端,只是在客戶端瀏覽器使用JavsScript對數據包進行檢測,所以我們只需要繞過前端的JS檢測就行了
利用瀏覽器查看網站第一關源碼我們可以看到只有文件后綴為 .jpg、.png、.gif才能被上傳
這里我們要用到hph的一個腳本文件 ”大馬“
先將文件shell.php的改為可上傳的文件shell.jpg
上傳shell.jpg 用Burp進行抓包
找到shell.jpg改為shell.php后放包
到文件上傳地址
http://127.0.0.1/upload-labs/upload/shell.php
可以看到這個頁面就表示成功了
輸入默認密碼admin可以進入操作頁面
文件后綴繞過攻擊
Pass-4(第四關)
我們可以看到服務端代碼中限制了某些后綴的文件不允許上傳,即黑名單??梢钥吹竭@一關沒有禁止上傳.htaccess后綴的文件
我們可以創建.htaccess文件(.htaccess名字必須為空,只有后綴.htaccess)
文件內容
AddType application/x-httpd-hph .jpg
這行代碼意味著 將文件所在目錄 所以jpg文件都以php形式運行
下面我們直接上傳.htaccess文件
上傳成功 查網頁源碼.htaccess文件已經上傳到upload文件夾下,再上傳shell.jpg就把shell文件當成php文件運行
進入文件地址
http://127.0.0.1/upload-labs/upload/shell.jpg
文件類型繞過攻擊
Pass-2(第二關)
可以看出使用了MIME類型來驗證上傳文件的合法性,允許上傳的格式有 image/jpeg,image/png,image/gif 這三種類型的文件
分別上傳png,php類型文件抓包
可以看到當上傳png文件時Content-Type的值是image/png
當上傳php文件時Content-Type的值是application/octet-stream,
上傳shell.php
將Content-Type的值改為 image/png 放包
進入網站:http://127.0.0.1/upload-labs/upload/shell.php
出現登陸頁面即上傳成功
文件截斷繞過攻擊
Pass-12(第十二關)
我們看一下這關源碼
利用這個php對%00后字段的截斷(只有php5.3.4以下的版本才有這個漏洞),我們可以把shell.php改為jpg格式,上傳抓包修改img_path,加上shell.php%00。這樣就會生成img_path=…/shell.php%00…,最后php會自動截斷%00后的代碼生成的文件將是shell.php
首先將php版本改為5.2.17
打開php配置文件php.ini
打開php.ini查找到magic_quotes_gpc將On改為Off(注意大小寫)
下面就可以上傳了上傳木馬文件shell.jgp攔截上傳抓包
在upload/后加入shell.php%00放包
進入
http://127.0.0.1/upload-labs/upload/shell.php
出現登錄頁面即成功
總結
以上是生活随笔為你收集整理的Web网络攻防文件上传。.的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql ipv6 禁用_使用ip6t
- 下一篇: Cifar10数据集度盘下载