目錄
歷史命令
masscan
nmap
searchsploit
nc
Burp Suite
python
sudo -l
sudo nmap --interactive -> !sh
目標
目標 Beep 在 10.10.10.7
。
能學到什麼?
什麼是 LFI(Local File Inclusion)?
LFI (Local File Inclusion)是代碼中的一種漏洞表現形式。不是語言本身的問題,而是程序員在開發的過程中,對於語言的特性理解不夠,給攻擊者留下了可趁之機。
可以說是“臭名昭著”的兩個 PHP 方法,include
和 require
,使用不當的情況下,就會造成 LFI 的存在。
LFI 可以讓攻擊者在網頁端訪問目標服務器上的任意有讀權限的文件。造成信息泄露,更加嚴重的情況下,造成目標機器被攻破,對企業內網造成巨大威脅。
因此,爲了一定程度上消除 LFI 的威脅,必須對用戶輸入做安全校驗。
LFI 的原理
用 PHP 舉例。
<?php
if (isset($_GET['language'])) {
include($_GET['language'] . '.php');
}
?>
開發者的本意是想在請求中,帶上一個 language
參數,例如 language=english
,然後 PHP 代碼將 english.php
包含到運行時。
但是,沒有對用戶輸入做校驗的後果是攻擊者可以構造如下請求:
# 使用 %00 null byte 去掉程序中的默認 php 擴展名 (PHP 5.3 之前可用)
http://example.com/index.php?language=../../../../../../../../../etc/password%00
那麼,/etc/passwd
文件的內容就泄露了。
如何利用 LFI 漏洞?
Elastix FreePBX 遠程代碼執行漏洞
Elastix FreePBX 是有遠程代碼執行漏洞的,漏洞鏈接在這裏。
仔細閱讀了一下 這篇原理分析,是利用了 recordings/misc/callme_page.php
頁面中的 $to
參數沒有做安全校驗造成的。根據下圖的解釋,只需要知道目標上有什麼插件,那麼就可以利用這個插件在 VoIP 服務器上遠程執行任意代碼。
如何利用目標機器的漏洞?
在 masscan 和 nmap 運行之後,發現了 80
端口開放。
看一下 Web 提供的服務。
第一次連接報了證書不受信。
不管上面的警告繼續連接,主頁是這樣的。
這是一個很具體的應用,elastix
,做一下搜索看有什麼漏洞可以利用。
雖然不知道目標上的 Elastix 是什麼版本,但是總要試一下。
到 Exploit-DB 下載代碼,查看一下。
按需修改一下參數。這裏有個 extension,後面需要對這個參數做調整。
將 url 丟到 Burp Decoder,也就是注入了 reverse shell 的命令。
本地監聽 443
端口,然後運行。
報錯。
跟上面那個證書不受信的報錯有關。
根據 ippsec 的方法,用本機做代理,然後用 Burp Suite 將請求轉發到目標機器,就不用代碼去做 SSL Handshake 了。
首先將 rhost
改成 localhost
,將協議改成 http
。
然後到 Burp 的 Proxy 一欄,增加一個 80
端口監聽,
將 Request Handling
修改成如下所示
現在所有到本機 80
端口的流量都會被轉發到目標機器。
再次運行腳本,沒有報錯,但是也沒有 shell。
查看一下 Burp 中服務端的返回
現在就是 extension id
不對的問題。
前文說到了 kali 的工具 svwar
,可以幫助我們掃描 SIP 系統,找到活躍的插件 id。
# 安裝 sip 工具包
apt install sipvicious
INVITE
方式是通訊的起始步驟。這裏使用 INVITE
方式發送請求,只爲了判斷目標插件是否在線,類似於 TCP 中的 SYN 掃描。
svwar -m INVITE -e100-1000 10.10.10.7
這裏有關於 VoIP Phone Hacking 的詳細好文,有興趣的讀者可以參考。
233
是目標 id,修改腳本,再次運行。
成功獲取到 shell。
提權就十分簡單了,之前的系列文章都說過,獲取到 linux shell,前幾個命令一定是 whoami/id/sudo -l
nmap
在列,看一下版本
記得是 4.12 之前的版本都有 interactive mode
。提權到 root。
I’m in…
除了這一種進入目標的方式,強烈建議 看 IPPSEC 用其他三種方式進入目標機器。能學到包括 LFI,Shellshock 在內的以噸計的東西。
- https://en.wikipedia.org/wiki/File_inclusion_vulnerability
- https://www.offensive-security.com/vulndev/freepbx-exploit-phone-home/
- https://www.exploit-db.com/exploits/18650
- https://www.offensive-security.com/vulndev/freepbx-exploit-phone-home/
- https://tools.kali.org/sniffingspoofing/sipvicious
- https://en.wikipedia.org/wiki/Session_Initiation_Protocol
- https://codemonkeyism.co.uk/htb-beep/
- https://www.youtube.com/watch?v=XJmBpOd__N8
- https://hakin9.org/voip-hacking-techniques/