1. 程式人生 > 程式設計 >用攔截器修改返回response,對特定的返回進行修改操作

用攔截器修改返回response,對特定的返回進行修改操作

簡介
在 Web 後臺開發中,程式設計師往往為了提高效率以及讓程式碼看起來更加簡潔,會使用 “包含” 函式功能。比如把一系列功能函式都寫進 function.php 中,之後當某個檔案需要呼叫的時候直接在檔案頭中寫上一句 就可以呼叫函式程式碼。

但有些時候,因為網站功能需求,會讓前端使用者選擇需要包含的檔案(或者在前端的功能中使用了“包含”功能),又由於開發人員沒有對要包含的這個檔案進行安全考慮,就導致攻擊者可以通過修改檔案的位置來讓後臺執行任意檔案(程式碼)。這種情況稱為“檔案包含漏洞”。

檔案包含漏洞有“本地檔案包含漏洞”和“遠端檔案包含漏洞”兩種。
low
核心程式碼
`<?php

// The page we wish to display

$file = $_GET[ 'page' ];

?>這裡直接get傳參,包含檔案,沒有進行任何過濾 **1、本地檔案包含** 我們可以通過在URL中執行"../"根目錄跳轉方式,獲取伺服器上的資訊,填寫多個"../"可以直接跳轉到根目錄(注:伺服器系統不同,payload也會不同,但都可以通過根目錄跳轉方式獲取資訊)http://127.0.0.1/dvwa/vulnerabilities/fi/?page=../../../../../../../../etc/passwd執行URL後瀏覽器介面會顯示伺服器的資訊 ![](https://img2020.cnblogs.com/blog/1972722/202009/1972722-20200927162141595-1399959322.png)/ **2、遠端檔案包含**

http://127.0.0.1/dvwa/vulnerabilities/fi/?page=http://www.baidu.com/robots.txt`

3、本地檔案包含 Getshell