天天看點

HackTheBox –Craft實戰

HackTheBox –Craft

​<code>​ip:http://10.10.10.110/​</code>​

資訊搜集

端口掃描:使用nmap掃描發現開了22(ssh)端口和443(http/ssl)

HackTheBox –Craft實戰

版本可從web網頁上擷取:

Web 伺服器

Nginx1.15.8

Reverse Proxy

首先通路頁面,通路該連結http://10.10.10.110/看到是一片空白,試了一下使用https來進行通路,通路成功!

HackTheBox –Craft實戰

通路頁面檢視右上角的圖示發現他有域名,是以使用hosts檔案來進行綁定:

HackTheBox –Craft實戰

從上面圖檔發現他跟我們說檢視我們的API! 這裡先進行檢視​<code>​https://api.craft.htb/api/​</code>​

HackTheBox –Craft實戰

在這塊發現一個登陸頁面

HackTheBox –Craft實戰

傳回剛剛首頁,點選右上角圖示時他會跳轉到​<code>​https://gogs.craft.htb/​</code>​這個頁面,經過多次檢視發現點選左上角的發現會跳轉到一個倉庫仔細看的話是api源碼

HackTheBox –Craft實戰

進行下載下傳,代碼分析一下

HackTheBox –Craft實戰

果然,在test.py檔案中,我們知道api頁面需要首先進行auth/login(使用者名密碼未知),然後才能使用brew接口。沒找到什麼敏感資訊,之後就來審計一下接口檔案,經過找了好長時間終于發現brew.py中有個eval,現在知道這塊有指令執行需要調用os.system

HackTheBox –Craft實戰

因為當時我是在bp裡面攔截https://api.craft.htb/api/送出參數的方式進行利用的 中途因為沒有token的憑證繞了好長時間 最後是在上面所說的登陸頁面擷取的(經過多次送出發現他的token是随機的)

在這裡有使用者送出點開add.test之後發現使用者和密碼。

HackTheBox –Craft實戰
HackTheBox –Craft實戰

​<code>​dinesh 賬戶 4aUh0A8PbVJxgd 密碼​</code>​

登陸成功之後發現是一串随機token

通過幾種方式都不成功,終于最後寫了python腳本代碼如下:

HackTheBox –Craft實戰
HackTheBox –Craft實戰
HackTheBox –Craft實戰

成功得到shell,但是id直接是root使用者,之後才發現原來是docker使用者,接着我檢視settings.py,有一個資料庫憑據,直接修改了他的sql語句,有四個使用者

HackTheBox –Craft實戰

如下:

現在繼續進行資訊搜集,在剛剛https://gogs.craft.htb/界面有一個登陸,輸入剛剛擷取到的使用者和密碼一個一個進行搜集發現在gilfoyle 使用者裡面的私人項目裡有.ssh 是以當然是直接用id_rsa 進行ssh登陸,如圖:

​<code>​ssh -i id_rsa [email protected]​</code>​

HackTheBox –Craft實戰

已登入!!!!

進行提權:

用上面的方法我給他下載下傳了腳本進行執行得出他的核心和發行版本的詳細資訊 使用者資訊 服務等資訊…

scp -i id_rsa -r /Users/ice/Downloads/LinEnum-master/LinEnum.sh [email protected]:/tmp

HackTheBox –Craft實戰

執行完之後我是在https://www.exploit-db.com/上面搜尋的版本号結果不友好

在剛剛下載下傳的項目中檢視發現vault檢視官方文檔https://www.vaultproject.io/docs/secrets/ssh/one-time-ssh-passwords.html最後終于使用vault來進行提權,會傳回給我們otp 直接登入

HackTheBox –Craft實戰

(vault是一種用于在現代應用程式體系結構中安全地管理機密資訊的流行工具,很友善而且安全的一款工具)

HackTheBox –Craft實戰

不定時更新????

繼續閱讀