靶機練習-TROLLCAVE: 1.2
靶機簡介
Name: Trollcave: 1.2
Difficulty:easy
Flag : root/flag.txt
靶機下載地址:
https://www.vulnhub.com/entry/trollcave-12,230/
實驗環境
攻擊機:本機(192.168.11.1)、kali(192.168.11.143)
靶機:Linux,IP自動獲取
攻擊機與靶機都使用nat網絡連接,在同一網段下
滲透測試步驟
1、使用namp掃描網段,獲得靶機IP
nmap -sn 192.168.11.0/24

2、使用masscan快速探測目標開放的端口
masscan -p1-65535 192.168.11.162 --rate=10000

3、使用nmap對開放的端口進行服務探測
nmap -sC -p 80,22 192.168.11.162

4、訪問目標80端口

大概看了一下是個博客網站,可以登錄,不可以注冊
5、掃描網站目錄
python dirsearch.py -u http://192.168.11.162/

6、找到登錄口,對用戶進行密碼爆破發現沒成功,看看用的是什么cms

7、查找該cms存在的漏洞發現有路徑穿越漏洞,但是發現這里并沒有該漏洞。于是去發布的博客中找信息,發現有一條admin發布的關于重置密碼的博客,里面提到password_resets

8、通過搜索關鍵字,得知這是ruby on rails進行密碼重設的

9、訪問http://192.168.11.162/password_resets/new 重置密碼,填寫username之后會返回一個重置密碼的鏈接

10、訪問返回的重置密碼的鏈接,發現 ?name=xer ,想到可能是根據這個修改對應用的密碼的,所以將xer改為King,嘗試是否能修改超級管理員King的密碼,發現重置成功,并登錄到King賬戶

11、登錄之后發現有個文件上傳點,并且在admin panel模塊中可以打開文件上傳的功能

12、隨后試一試先上傳一個php木馬,在preferences模塊中看到了上傳后的文件路徑

訪問發現并不能解析
13、雖然不能上傳web后門,但是發現上傳點可以指定上傳后的路徑,又想到目標開啟了22端口,于是嘗試上傳 authorized_keys 到root用戶下的.ssh就可以免密碼登錄ssh
ssh-keygen -f root # 生成ssh密鑰,生成公鑰root.pub和私鑰root mv root.pub authorized_keys


然后將 authorized_keys 上傳到 /root/.ssh/

發現上傳失敗,應該是沒有權限。
14、隨后又想到之前收集ruby on rails相關信息的時候,發現它在安裝成功后會新建rails用戶,于是嘗試上傳authorized_keys到rails用戶下的.ssh看能不能成功
ssh-keygen -f rails mv rails.pub authorized_keys
將authorized_keys上傳到 /home/rails/.ssh/

發現上傳成功

15、ssh登錄目標成功
mv rails id_rsa-rails chmod 600 id_rsa-rails ssh -i id_rsa-rails rails@192.168.11.162

16、查看內核版本,去查找該版本是否有漏洞,發現有一個可以利用

17、下載該漏洞利用的c文件,在kali上編譯好之后,上傳到目標機



18、運行exp成功提權

19、成功讀取flag文件

總結
比較綜合的一個靶場,從信息收集,看他是什么框架,搜集框架信息,看有沒有現成可以利用的漏洞,到后面利用邏輯漏洞重置管理員密碼進行登錄,找到上傳點,發現無法利用php等web后門,但是可以指定上傳的路徑,于是生成ssh密鑰,上傳到目標機的/home/username/.ssh/ 目錄下就能夠免密碼登錄ssh了,之后利用內核版本已有的漏洞進行提權,最終拿到flag。