目錄遍歷是一種惡意技術(shù),很少被用作獲取受害者服務(wù)器上敏感信息的唯一手段。攻擊者首先需要找到目標(biāo)網(wǎng)站的漏洞,并利用該漏洞使瀏覽器顯示所請(qǐng)求的信息。只有在這種情況下,目錄遍歷才能用于瀏覽受害者服務(wù)器上的文件系統(tǒng),以訪問受限目錄。
目錄遍歷漏洞通常與文件包含漏洞相結(jié)合使用。當(dāng)網(wǎng)站未正確清理用戶輸入時(shí),比如使用動(dòng)態(tài)文件包含提供的文件路徑時(shí),就可能出現(xiàn)目錄遍歷漏洞。通過本地文件包含 (LFI) 和目錄遍歷漏洞的結(jié)合,黑客可以訪問目標(biāo)網(wǎng)站文檔根目錄之外的數(shù)據(jù),從而泄露敏感的服務(wù)器信息。
下面舉一個(gè)例子來更好地理解如何利用本地文件包含和目錄遍歷漏洞。假設(shè)有一個(gè)名為 content.php 的網(wǎng)頁,用于根據(jù)用戶的請(qǐng)求動(dòng)態(tài)加載不同的頁面或組件。例如,如果網(wǎng)站訪問者想要查看“聯(lián)系我們”頁面,他們的請(qǐng)求可能會(huì)顯示在瀏覽器地址欄中。
content.php 頁面使用本地文件包含技術(shù)引用與“contact_us”參數(shù)對(duì)應(yīng)的文件,該參數(shù)可能包含請(qǐng)求的“聯(lián)系我們”頁面的 PHP 和 HTML 代碼。在這個(gè)例子中,content.php 充當(dāng)控制器,根據(jù)用戶輸入加載適當(dāng)?shù)奈募韯?dòng)態(tài)生成內(nèi)容。
然而,如果用戶的輸入沒有得到正確驗(yàn)證或清理,攻擊者可能會(huì)利用文件包含和目錄遍歷漏洞來包含任意文件,并將這些文件顯示在瀏覽器中。
舉個(gè)例子,黑客可以將“../../../../../var/log/apache2/access.log”作為頁面查詢參數(shù)的值傳遞。這是一個(gè)目錄遍歷序列,后面跟著 Apache Web 服務(wù)器在文件系統(tǒng)中存儲(chǔ)主要訪問日志的路徑。通過這種方式,攻擊者可以查看日志文件的內(nèi)容,其中包含敏感信息,如 IP 地址、用戶代理字符串和網(wǎng)站訪問者請(qǐng)求的 URL。
由此可見,WordPress建站過程中,我們也要注意WordPress目錄遍歷的問題。





