狠狠色丁香婷婷综合尤物/久久精品综合一区二区三区/中国有色金属学报/国产日韩欧美在线观看 - 国产一区二区三区四区五区tv

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

IIS網(wǎng)站安全管理之URL路徑穿越漏洞

admin
2024年3月18日 18:39 本文熱度 1041

No.0

簡介


路徑穿越其實就是目錄遍歷,它可以讓攻擊者查看運行了存在此漏洞的應(yīng)用的服務(wù)器上的任意文件,包括:

程序代碼、數(shù)據(jù);

后臺系統(tǒng)憑證;

敏感的操作系統(tǒng)文件。

在某些情況下還可能允許攻擊者上傳文件到任意目錄下(比如文件上傳漏洞同時存在路徑穿越),從而使得攻擊者可以修改服務(wù)器的配置文件,甚至最終完全控制服務(wù)器。



No.1

常見位置


1、文件、模版下載;

2、URL參數(shù),如 file、f、path、download、filename、load 等,相關(guān)的字典網(wǎng)上多的是我就不列舉了;

3、圖片鏈接。

測試方法

這沒什么好說的 ../ 就完事了,再不濟 ..%2F。


No.2

如何修復(fù)或者預(yù)防路徑穿越


其實要預(yù)防路徑穿越漏洞的方法就是不要把用戶提供的參數(shù)完全輸入給文件系統(tǒng)的API,而是寫死在代碼里,限制用戶只能下載指定的文件。

那如果必須要用戶輸入呢,可以添加下面的驗證流程:

如果可能得話,驗證用戶輸入是否在白名單列表中;如果不行,就驗證用戶輸入是否只包含文字或數(shù)字;如果再不行,就校驗用戶輸入是否包含 ../ ..%2F 之類的 payload

設(shè)置指定的文件路徑,在拼接用戶輸入后獲取真實的文件路徑,查看其是否與預(yù)設(shè)相同,示例代碼如下:

import os


input_path = input("請輸入路徑: ")

full_path = os.path.realpath(os.path.join("D:\ProjectPython\\test", input_path))   # 將用戶輸入的路徑與/etc/abc拼接成完整的路徑,使用os.path.realpath()函數(shù)獲取完整路徑的真實路徑

common_path = os.path.commonpath([full_path, "D:\ProjectPython\\test"])   # 使用os.path.commonpath()函數(shù)找到完整路徑和/etc/abc的共同路徑。如果共同路徑為/etc/abc,則表示路徑合法;否則,表示路徑不合法。


if common_path == "D:\\ProjectPython\\test":

 print("路徑合法")

else:

print("路徑不合法")

 


No.3

案例詳解


一個簡單的路徑穿越

任務(wù)簡報

這個實驗室包含路徑穿越漏洞,你要讀取到 /etc/passwd 文件。

任務(wù)過程

在網(wǎng)站上有一些商品的圖片,這些圖片的src=/image?filename=48.jpg,那我們是不是可以修改它的值來查看對應(yīng)的文件呢?

現(xiàn)在我們把 filename 的值改成 "/../../../../../etc/passwd" 看看:

修改之后它的圖片就沒有啦,我們看看 burp 的流量是什么:

OK  成功拿下。



No.3

一些常見的繞過方法


絕對路徑繞過

有些應(yīng)用會檢測用戶輸入中是否含有 ../ 這種跨越目錄的命令,但是如果它們使用的是一些函數(shù)進行目錄拼接時如果你輸入的是一個絕對路徑,那么它們就會自動忽略你前面預(yù)設(shè)的目錄,這里我使用 python 作為演示,輸入正常的文件名:

此時一切安好,那我們輸入帶有 payload 的路徑呢:

此時雖然最終執(zhí)行的 /etc/passwd 但是我們的規(guī)則校驗已經(jīng)識別出它有問題了,在實際中并不會被執(zhí)行,那么我們輸入絕對路徑試試 /etc/passwd,按照我們的理解,這里最后應(yīng)該執(zhí)行的是 /home/test/etc/passwd 這個路徑,那么結(jié)果是不是這樣呢,下面揭曉:

哈  傻了吧,最后的結(jié)果是 /etc/passwd 而且我們的校驗規(guī)則認(rèn)為這個用戶輸入是沒有問題的,這也就使得對方的攻擊成功了,他成功繞過了我們的校驗。

這主要是因為,os.path.join() 函數(shù)會根據(jù)傳入的參數(shù)自動拼接路徑,并處理其中的目錄分隔符。然而,如果傳入的參數(shù)中包含了絕對路徑(以根目錄開始的路徑),則之前的路徑部分將被忽略。

那么我們接下來就在靶場中看一下吧。



No.4

案例詳解


任務(wù)簡報

這個網(wǎng)站設(shè)置了一個默認(rèn)的工作目錄,應(yīng)用程序阻止遍歷序列,但將提供的文件名視為相對于默認(rèn)工作目錄,你要做的是讀取到 /etc/passwd 文件。

任務(wù)過程

我們還是使用 ../ 試一下運行的結(jié)果。

可以看到是不行的,現(xiàn)在我們換成絕對路徑看看 /etc/passwd。

看 和我們的演示代碼是一樣的結(jié)果,絕對路徑繞過了它的 ../ 檢測。

雙寫繞過

有的開發(fā)會在識別到 ../ 之后將其直接置換為空,以此對抗路徑穿越,但是我們都知道,這種策略我們可以通過雙寫來繞過,下面我們來看看。

任務(wù)簡報

這個網(wǎng)站會把用戶提交的 ../ 剝離,你要做的是讀取到 /etc/passwd 文件。

任務(wù)過程

我們還是提交一個 ../ 看看情況。

這里我們可以看到在使用 ../3.jpg 的情況下還是正常顯示了圖片,這說明程序就是把 ../ 給去掉了,畢竟上一層目錄是不會有 3.jpg 這個文件的,那我們就開始工作吧 ....//....//....//....//....//etc/passwd。

成功繞過,收工。

URL 編碼繞過

對于上面的情況,我們也可以使用 URL 編碼進行繞過,有時候也可以嘗試 雙層 URL 編碼繞過。

任務(wù)簡報

這個實驗室包含路徑穿越漏洞,你要讀取到 /etc/passwd 文件。

任務(wù)過程

還是輸入 ../ 看看情況。

這里可以看到,還是和上一節(jié)一樣的情況,這次我們改一下,用 ..%2F 試試。


還是不行,好好好,那我就直接雙重編碼。


這次應(yīng)該是成了,我們直接上:

payload %25%32%65%25%32%65%25%32%66%25%32%65%25%32%65%25%32%66%25%32%65%25%32%65%25%32%66%25%32%65%25%32%65%25%32%66%25%32%65%25%32%65%25%32%66%25%32%65%25%32%65%25%32%66%25%36%35%25%37%34%25%36%33%25%32%66%25%37%30%25%36%31%25%37%33%25%37%33%25%37%37%25%36%34

OK  成功繞過,下班下班。

截斷繞過

有些網(wǎng)站可能會通過驗證文件后綴來判斷要訪問的是不是系統(tǒng)文件,畢竟大多數(shù)Linux系統(tǒng)的文件都是沒有后綴的,對于這種情況,我們可以通過之前文件上傳漏洞時使用的 00 截斷來繞過。

任務(wù)簡報

這個實驗室包含路徑穿越漏洞,你要讀取到 /etc/passwd 文件。

任務(wù)過程

這次我們直接用 ../images/38.jpg 試試水。

這里可以正常回顯圖片,說明這個地方?jīng)]有對 ../ 做處理,那我們就直接上 payload 了。

這里可以看到是不行的,那我們試試 00 截斷

OK  現(xiàn)在就可以了,具體原理可以參考上一篇文件上傳的文章,這里就不過多贅述了。



No.5

總結(jié)


好了,本篇文章主要就是介紹了一些路徑穿越的常見位置、測試方法、常見的繞過手段、修復(fù)建議,相同的方法都可以用在文件下載上面,這兩個的原理都是一樣的,就不單獨介紹啦。


該文章在 2024/3/18 18:39:37 編輯過
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點晴ERP是一款針對中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國內(nèi)大量中小企業(yè)的青睞。
點晴PMS碼頭管理系統(tǒng)主要針對港口碼頭集裝箱與散貨日常運作、調(diào)度、堆場、車隊、財務(wù)費用、相關(guān)報表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點,圍繞調(diào)度、堆場作業(yè)而開發(fā)的。集技術(shù)的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點晴WMS倉儲管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質(zhì)期管理,貨位管理,庫位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務(wù)都免費,不限功能、不限時間、不限用戶的免費OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved