一·什麼是伺服器配置檔案.htaccess
許多伺服器還允許開發人員在各個目錄中建立特殊的配置檔案,以便覆蓋或新增一個或多個全域性設定。例如,Apache 伺服器將從一個名為(.htaccess如果存在)的檔案中載入
特定於目錄的配置。Web 伺服器使用這些型別的配置檔案,但通常不允許您使用 HTTP 請求訪問它們。但是,您可能偶爾會發現無法阻止您上傳自己的惡意配置檔案的伺服器在
這種情況下,即使您需要的副檔名被列入黑名單,您也可以欺騙伺服器將任意自定義副檔名對映到可執行的 MIME 型別。
如果當你上傳檔案的時候發現你的指令碼檔案被阻止上傳,你可以嘗試上傳.htaccess檔案。在.htaccess檔案裡面將你的副檔名對映到可執行MIME型別。只需要新增一句話:
AddType application/x-httpd-php .html(則html檔案也能執行.php檔案)
AddType application/x-httpd-php .txt(則普通的文字文件也能執行.php檔案)
二·實驗步驟
1.登入之後發現一個檔案上傳的功能
2.嘗試上傳頭像。
檔案上傳成功
3.開啟burp代理,嘗試上傳PHP檔案
可見,.php檔案被阻止
4.嘗試上傳配置檔案.htaccess
其中filename=“.htaccess”
Content-Type=text/plain.
替換檔案內容為AddType application/x-httpd-php .html
發現配置檔案已經上傳成功
5.嘗試上傳.php檔案,將檔案的擴張名修改為.html,伺服器會自動對映成PHP檔案執行
發現上傳成功,
6.嘗試執行上傳的.php檔案
實驗室解決
通過配置檔案(.htaccess)實現檔案上傳
相關文章
- [MRCTF2020]你傳你呢 1 (檔案上傳漏洞,利用.htaccess檔案繞過)TF2
- SpringMVC 通過commons-fileupload實現檔案上傳SpringMVC
- springCloud 微服務通過minio實現檔案上傳和檔案下載介面SpringGCCloud微服務
- PHP實現單檔案、多檔案上傳 封裝 物件導向實現檔案上傳PHP封裝物件
- ajax實現檔案上傳
- springboot上傳檔案配置Spring Boot
- .htaccess檔案使用
- jftp通過sftp協議上傳檔案FTP協議
- Windows 機器通過 FTP 上傳檔案WindowsFTP
- 檔案上傳原理和實現
- 使用Spring實現上傳檔案Spring
- Spring mvc檔案上傳實現SpringMVC
- HttpFileCollection 實現多檔案上傳HTTP
- 使用java的MultipartFile實現layui官網檔案上傳實現全部示例,java檔案上傳JavaUI
- git上傳過濾檔案Git
- 關於node實現檔案上傳
- PHP實現圖片(檔案)上傳PHP
- Feign實現檔案上傳下載
- Java檔案上傳如何實現呢?Java
- SpringMVC多個檔案上傳實現SpringMVC
- SpringBoot專案實現檔案上傳和郵件傳送Spring Boot
- 單個檔案上傳和批量檔案上傳
- js實現帶上傳進度的檔案上傳JS
- 檔案上傳
- 通過反射獲取上傳檔案方法引數中的檔名反射
- 自定義檔案上傳功能實現方法
- 【node】檔案上傳功能簡易實現
- Spring Cloud Feign的檔案上傳實現SpringCloud
- node中間層實現檔案上傳
- SpringMVC實現多檔案上傳原始碼SpringMVC原始碼
- SpringMVC實現檔案上傳&下載(2)SpringMVC
- python+selenium+autoit實現檔案上傳Python
- SpringBoot實現檔案上傳功能詳解Spring Boot
- struts動態多檔案上傳實現
- 使用Spring Boot實現檔案上傳功能Spring Boot
- vue+axio通過獲取dom元素上傳檔案Vue
- 通過 hosts檔案配置本地域名
- SpringMVC檔案上傳下載(單檔案、多檔案)SpringMVC