Web安全--文件上傳漏洞基礎知識

1. PUT方法上傳文件
HTTP請求方法之一,允許向服務器直接寫入文件。
(1)Apache如何開啓PUT方法
a.:測試Apache是否開啓了put方法

telnet 172.168.128.128  80   測試說明端口可用

OPTIONS / HTTP/1.1
HOST:172.168.128.128 

b:Apache開啓put方法操作
–在apache\modules中檢查是否存在mod_dav.so和mod_dav_fs.so這兩個模塊,需要確定存在
–修改apache\conf\httpd.conf,將以下兩句打開
LoadModule dav_module modules/mod_dav.so
LoadModule dav_fs_module modules/mod_dav_fs.so
–開啓模塊:在文件中添加一行
在這裏插入圖片描述
c:開啓文件鎖
需要在httpd.conf文件的頭部添加下面的一句代碼:

DavLockBD c:\phpstudy\www\DavLock

d:創建文件DavLock
在c:\phpstudy\www裏創建文件 DavLock(文本文件)
(2)上傳文件

PUT /info.php  HTTP/1.1
HOST:172.168.128.128
Content-Length:18

<?php phpinfo();?>

2. 前端限制與繞過
如果文件上傳是在前端進行校驗,那麼是可以輕鬆繞過的,因爲前端JS腳本檢測的安全防禦十分薄弱。前端一般是通過黑名單/白名單檢測進行限制。
(方法一):因爲JS腳本的運行環境是瀏覽器,我們可以修改JS代碼,甚至刪除表單事件。
(方法二):使惡意文件後綴名符合白名單策略,用Burpsuite掛代理抓包,然後修改文件後綴名即可。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章