Tabby 日本語でウォークスルー Hack The Box Machine:

HTB htb-easy

Hack The BoxのTabbyのウォークスルー・ライトアップ(walkthrough/writeup)です。難易度はeasyとなっています。
※本記事はサイバー犯罪を助長するものではありません。ハッキングやクラック等の悪用は厳禁です。

HTB Tabby ウォークスルー・ライトアップ Hack The Box

Summary

local shell取得まで

ターゲットポート:TCP 22(ssh)、80(http)
脆弱性:ターゲットには「ディレクトリトラバーサル」及びApache Tomcat Manager – Application Deployer (Authenticated) Code Executionの脆弱性が内在していた。これを利用し、local-shellを入手した。
local権限を取得したユーザ:「tomcat」

privilege Escalation取得まで

脆弱性:ターゲット上では「lxd」グループの脆弱性が内在していた。これを利用して「root」のshellを取得した。

root権限を取得したユーザ:「ash」→「root」

Information Gathering

ポートスキャン

それでははじめます。まずはターゲット上で動作しているTCPポートをnmapで探します。nmapについてはこちらを参照ください。

nmapの結果、上画像の通り、TCPポート番号22(ssh)と80(http),8080(http)が開いていることが分かりました。
まず、httpから調査していくことにしました。

ターゲットのhttpサービス調査(TCPポート番号80)

firefoxを使ってターゲットにアクセスしました。すると以下が表示されました。

会社のホームページのようです。このホームページ上で「sales@megahosting.htb」というメールアドレスを見つけました。
自分の「/etc/hosts」にこのドメインを追加しました。

このホームページを探っていった所、以下のページが見つかりました。

We apologise to all our customers for the previous data breach. We have changed the site to remove this tool.(意訳:当社の情報流出に対して全てのお客様にお詫びします。セキュリティ脆弱性があったツールは、既にホームページから削除しました。)

上記から、過去にこの会社が情報流出を起こしたことが分かります。
また、情報流出はこのホームページ経由で起きたようでした。そこで、このホームページに脆弱性が残っていないかを確認することにしました。

ホームページの脆弱性を確認した結果、「ディレクトリトラバーサル」の脆弱性が内在していることが分かりました。
以下の様に、「/etc/passwd」が表示されています。

「ディレクトリトラバーサル」の脆弱性を利用した調査

「ディレクトリトラバーサル」の脆弱性を利用して、ターゲット内を調査していきました。
その結果、tomcatのパスワードを見つけました。

username=tomcat password=$3cureP4s5w0rd123!

local shellの取得

tomcatの脆弱性調査(tcp番号:8080)

tomcatのクレデンシャル情報を見つけたので、これを利用してlocal-shellが取得できないかを調査することにしました。

tomcatの脆弱性を調査した所、Apache Tomcat Manager – Application Deployer (Authenticated) Code Executionを見つけました。

こちらを参考に、攻撃を実施しました。
その結果、local-shellを取得できました。取得したshellは「tomcat」です。

Privilege Escalation

Privilege Escalationのための脆弱性調査

linpeasを用いて調査をした所、
バックアップファイル「/var/www/html/files/16162020_backup.zip」を見つけました。

このバックアップファイルをダウンロードしました。

このバックアップファイルを解凍しようとしましたが、パスワードが掛かっていました。
そこで、zip2johnとjohnを使用して、パスワードの解読を試みました。

その結果、パスワードが

admin@it

だと分かりました。

見つけたパスワードを使用して、「ash」ユーザに移動することができました。
※「ash」ユーザは、最初の「/etc/passwd」の内容から推測しました。

root権限を取得するための脆弱性調査

再度linpeasを用いて調査をした所、「ash」ユーザは、「lxd」グループに所属していることが分かりました。


「lxd」グループを用いて、root権限を取得する脆弱性を調査した所、以下を見つけました。

「lxd」グループの脆弱性を利用してroot権限を取得する

先程のリンクを参考に、攻撃を実施しました。使用したコマンドは以下の通りです。
※以下の「test.tar.gz」はこちらからダウンロードした「alpine-v3.14-x86_64-20210813_0237.tar.gz」をリネームしたものです。


/snap/bin/lxc image import test.tar.gz --alias myimage
/snap/bin/lxc storage create pool1 dir
/snap/bin/lxc init myimage ignite -c security.privileged=true -s pool1
/snap/bin/lxc config device add myimage ignite whatever disk source=/ path=/mnt/root recursive=true 
/snap/bin/lxc image list
/snap/bin/lxc start ignite
/snap/bin/lxc exec ignite /bin/sh

その結果、rootのshellを取得できました。

flagを探す

user.txtは「/home/ash」にありました。
root.txtは「/root」直下にありました。

以上で、Tabbyのウォークスルーは終了です。

今まで記事にしたHack The Boxのマシンは以下にまとめています。