Vulnhub Walkthrough:Matrix-3

原文鏈接地址:https://www.hackingarticles.in/matrix-3-vulnhub-walkthrough/
Today we are going to take another CTF challenge from the series of Matrix. The credit for making this VM machine goes to “Ajay Verma” and it is another boot2root challenge where we have to root the server and capture the flag to complete the challenge.
你可以在這裏下載該VM
安全等級:中級

滲透方法:
1.掃描
Netdiscover
NMAP
2.枚舉
Web Directory Search
3.開發
Ghidra
SSH
4.提升權限
Exploiting Sudo rights
演練
掃描:
讓我們通過掃描網絡,並確定主機的IP地址開始的。我們可以通過使用Netdiscover確定我們的主機IP爲192.168.1.104。

掃描
然後,我們使用Nmap的端口枚舉。我們發現80端口是開放的,SSH是在端口6464和端口7331上運行在目標機器上打開。
命令: nmap -p- -A 192.168.1.104
在這裏插入圖片描述

枚舉:
正如我們可以看到80端口是開放的,我們試圖在我們的瀏覽器中打開的IP地址,但我們沒有發現任何網頁上的有用。
在這裏插入圖片描述
因此使用dirb進行目錄枚舉。
命令: dirb http://192.168.1.104
用DIRB暴力破解後,我們發現了一個名爲/assets 的目錄
在這裏插入圖片描述

我們在瀏覽器下/assets/ img / URL打開了assets目錄,發現一個名爲Matrix_can-show-you-the-door.png的圖像文件。
在這裏插入圖片描述

我們先打開這個圖片,但沒有找到我們所使用的任何東西。然後,在觀看的文件名正確,我們發現該文件的名稱本身給了我們前進的道路。
所以我們用Martix的URL如下面的圖像中,它爲我們工作。從目錄矩陣的內容,我們知道我們必須使字母的正確組合,以繼續進行。
在這裏插入圖片描述
因此,在嘗試了多種組合之後,我們更積極地利用我們的小大腦,將n/e/o/6/4組合起來,neo是《黑客帝國》電影中演員的名字,64號是我猜這個虛擬機創造者最喜歡的號碼,因爲他到處都在使用它。
在這裏插入圖片描述
我們下載的文件secret.gz,發現它實際上是一個txt文件,幷包含用戶名和密碼。
命令: file secret.gz/下載文件 cat secret.gz//查看文件內容
在這裏插入圖片描述
破解後使用在線工具hashkiller哈希密碼,發現密碼爲passwd文件。

如果從記得NMAP掃描,我們有一個端口7331打開,它與基本身份驗證保護。
因此,我們試圖打開URL http://192.168.1.104:7331並提示進行身份驗證,所以我們用管理員:passwd作爲用戶名和密碼,並能成功登錄。

但是,我們找不到任何有用的數據存在,所以我們用DIRB與已獲得的目錄暴力破解用戶名和密碼。
暴力破解之後,我們發現了一個名爲數據目錄。
命令 : dirb http://192.168.1.104:7331 / -u admin:passwd
在這裏插入圖片描述
在數據目錄中,我們發現它出來是DOS文件的文件名的數據
開發:
我們把需要谷歌我們最好的朋友的幫助下知道如何打開一個DOS文件。而一些研究之後,我們發現了一個名爲Ghidra打開一個DOS文件的工具。
用Ghidra工具打開數據文件後,我們發現一個用戶名和密碼 guest:7R1n17yN30
在這裏插入圖片描述
正如我們已經從我們的nmap掃描知道有SSH在目標計算機上的端口6464上運行,因此我們嘗試用上面找到用戶名和密碼的ssh目標機就能成功的登錄。
命令: ssh [email protected] –p6464
Id
但是我們獲得了restricted bash(rbash)shell,所以我們使用–t選項運行帶有noprofile擴展的ssh,得到了來賓用戶的完整shell.
正在檢查來賓用戶的sudo權限我們發現此用戶可以使用其他用戶trinity的權限運行/bin/cp。
命令: ssh [email protected] –p6464 –t “bash --noprofile”
sudo -l
在這裏插入圖片描述
提升權限:
要提升到一個更加特權的用戶,我們所做的是我們創建了一個新的SSH密鑰對,給讀寫執行權限id_rsa.pub文件,這樣我們就可以把它複製到我們的目標位置。
命令: ssh-keygen
cd .ssh
chmod 777 id_rsa.pub

在這裏插入圖片描述
然後,我們利用sudo權限複製/home/trinity/.ssh/authorized_keys文件夾中的id_rsa.pub文件。現在我們可以使用id_rsa密鑰使用trinity user訪問目標機器的ssh。
檢查trinity的sudo權限它可以使用根權限執行oracle文件。
命令: cp id_rsa.pub /home/guest
cd …
sudo -u trinity /bin/cp ./id_rsa.pub /home/trinity/.ssh/authorized_keys
ssh [email protected] -i /.ssh/id_rsa -p 6464
sudo -l
在這裏插入圖片描述
但是在/home/trinity目錄中沒有名爲oracle的文件,因此我們使用echo命令創建了一個包含/bin/sh的oracle文件。最後,我們用sudo命令執行oracle文件,得到了root shell。
一旦你有了root shell,你就可以很容易地得到flag。
命令 : echo “/bin/sh” > oracle
chmod 777 oracle
sudo ./oracle
id
ls
cat flag.txt
在這裏插入圖片描述
作者:Auqib邇是一個認證的道德黑客,滲透測試,並與超過5年的網絡和網絡安全領域的經驗的科技愛好者。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章