🐣

Windows端末にTryHackMe環境を構築する

2024/09/01に公開

モチベーション

偶然次のYoutubeの動画にたどり着き「自分もTryHackMeにチャレンジしてみたい!」と思いました。ただ、この動画は丁寧に解説されているのですが、攻撃に必要な端末(Kali Linux環境)の構築手順は紹介されていません。そのため、ここに実際に自分が環境構築した手順を書いておきます。

https://www.youtube.com/watch?v=mIXNpCK-wLQ&list=PL1zvuJ-Rj9WJCzKCbGLcAOL5-aDfWK2f_&pp=iAQB

バージョン

  • Windows 11 Home
  • WSL 2.2.4.0

注意事項

おそらく20GBほどのストレージが必要になります。

環境構築手順

Kali Linuxのインストール

ペネトレーションテストにはKali Linuxというディストリビューションがよく利用されるようです。そのため、まずはこれをインストールします。自分はMicrosoft Storeで「Kali Linux」と検索しインストールしました。以下からもインストールできると思います。

https://apps.microsoft.com/detail/9pkr34tncv07?hl=ja-jp&gl=JP

必要なソフトウェアのインストール

OSをインストールした段階ではnmapなどの必要なソフトウェアはインストールされていません。そのため次のコマンドでインストールします。

apt update
apt install kali-linux-default
apt install gobuster

kali-linux-defaultのインストールの途中でいくつかの質問に答える必要があります。自分は以下のサイトを参考に質問に答えました。

Win-Kexのインストール

次にGUIを利用可能なようにします。

apt install kali-win-kex

インストール後、次のコマンドでKexを起動します。

kex --win -s -m

もしもKex起動時にrootユーザーを利用している場合は、kali-linux-defaultのインストール中やその前に作成したユーザーに切り替えた後にKexを起動した方がいいと思います。rootユーザーの場合、Kex起動後にFirefoxを起動しようとしても起動できませんでした。

その他の必要なこと

TryHackMeのアカウントの作成

これは特に難しいことはないと思いますので説明割愛します。

VPNの設定

VPNの設定は次の動画で解説されています。
https://youtu.be/mIXNpCK-wLQ?list=PL1zvuJ-Rj9WJCzKCbGLcAOL5-aDfWK2f_&t=431

もしも作成したユーザーがsudoを利用できない場合は次のコマンドでsudoグループに追加する必要があります。

usermod -G sudo 作成したユーザー名

linPEASのダウンロード

攻撃先のサーバーの中から重要そうなファイルを見つけてくれるツールであるlinPEASをダウンロードします。
https://github.com/peass-ng/PEASS-ng/releases/download/20240901-df0685e9/linpeas.sh

トラブル事例

SSH接続できない

ユーザー名、パスワードがわかった後、SSH接続しようとしても以下のようにタイムアウトとなりました。

ssh ユーザー名@サーバーのIPアドレス
Connection closed by 10.10.16.245 port 22

ssh -vvv ユーザー名@サーバーのIPアドレス で調べてみたところ debug1: expecting SSH2_MSG_KEX_ECDH_REPLY というメッセージが出力されたところで止まっています。このキーワードで調べたところ https://fishrimper.blogspot.com/2014/06/ssh-mtu.html がヒットし、ここに書かれたクライアントのMTUの変更により解決しました。

これまでの作業でできるようになったこと

Discussion