網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

LaytonWang發表於2023-12-10

 

1 問題復現

(1)登入DVMA後,設定DVWA Security為Low。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

 

(2)進入File Inclusion,訪問dvwa/vulnerabilities/fi目錄下的的test.txt檔案(自己建立的測試檔案)。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

 

(3)報錯ERROR: File not found! 找不到檔案。

 

2 抓包分析

(1)使用BurpSuit抓包。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

訪問test.txt檔案的請求中,Cookie有兩個security鍵;導致設定DVWA Security為Low沒有成功。

 

(2)在瀏覽器中檢視“設定DVWA Security為Low”時,服務端Set Cookie情況。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

在Set SessionId時指定了使用路徑;而Set Security是沒有指定路徑。

 

(3)Cookie的屬性。

屬性

描述

name

Cookie的名稱,Cookie一旦建立,名稱便不可更改

value

Cookie的值。如果值為Unicode字元,需要為字元編碼。如果值為二進位制資料,則需要使用BASE64編碼

maxAge

Cookie失效的時間,單位秒。如果為正數,則該Cookie在maxAge秒之後失效。如果為負數,該Cookie為臨時Cookie,關閉瀏覽器即失效,瀏覽器也不會以任何形式儲存該Cookie。如果為0,表示刪除該Cookie。預設為-1。

secure

該Cookie是否僅被使用安全協議傳輸。安全協議。安全協議有HTTPS,SSL等,在網路上傳輸資料之前先將資料加密。預設為false。

path

Cookie的使用路徑。如果設定為“/sessionWeb/”,則只有contextPath為“/sessionWeb”的程式可以訪問該Cookie。如果設定為“/”,則本域名下contextPath都可以訪問該Cookie。注意最後一個字元必須為“/”。

domain

可以訪問該Cookie的域名。如果設定為“.google.com”,則所有以“google.com”結尾的域名都可以訪問該Cookie。注意第一個字元必須為“.”。

comment

該Cookie的用處說明,瀏覽器顯示Cookie資訊的時候顯示該說明。

version

Cookie使用的版本號。0表示遵循Netscape的Cookie規範,1表示遵循W3C的RFC 2109規範

 

3 修復服務端程式碼

(1)檢視服務端setcookie的php程式碼。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

發現沒有給security指定使用路徑。

 

(2)修改setcookie()中security的路徑為“/”。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

 

(3)PHP setcookie()函式。

語法:setcookie(name,value,expire,path,domain,secure)

引數

描述

name

必需。規定 cookie 的名稱。

value

必需。規定 cookie 的值。

expire

可選。規定 cookie 的有效期。

path

可選。規定 cookie 的伺服器路徑。

domain

可選。規定 cookie 的域名。

secure

可選。規定是否透過安全的 HTTPS 連線來傳輸 cookie。

 

4 驗證結果

(1)清除瀏覽器Cookie。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

 

(2)重新登入DVMA,再次設定DVWA Security為Low。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

Set SessionId的路徑和Set Security的路徑一致。

 

(3)進入File Inclusion,訪問dvwa/vulnerabilities/fi目錄下的的test.txt檔案。

網安靶場環境_DVWA-讀取檔案報錯File not found! Cookie中有兩個security鍵

成功讀取到檔案內容,並且請求Cookie中只有一個security鍵。

 

相關文章