前回は、VirtualBoxにKali Linuxを導入し、初期設定まで完了しました。

今回は、


  • サイバーセキュリティの学習サイトである「HTB(Hack The Box)」の登録
  • Kali LinuxとHTBのVPN接続


を行います。

まだ、Kali Linuxの導入と初期設定が済んでいない方は、前回の記事(サイバーセキュリティ入門‐環境構築編2|Kali Linuxの導入と初期設定)をご覧ください。


1.HTB(Hack The Box)とは

https://i.gyazo.com/093fade595664b599e94c362fdd0f129.png

HTB(Hack The Box)は、サイバーセキュリティについて、ゲーム感覚で実践的に学べるオンラインプラットフォームです。

実在するWebサイトやシステムを模した仮想環境(マシンと呼びます)が用意されており、それらに対して実際に攻撃(ペネトレーションテスト)を行いながら、サイバーセキュリティの考え方や実際の手法を学習できます。


2.HTB(Hack The Box)へのVPN接続が必要な理由

HTBのマシンは、インターネット上に公開されているわけではなく、専用の閉鎖ネットワーク内に配置されています。

そのため、HTBのマシンを調査したり攻撃したりするには、VPN(Virtual Private Network)を利用し、その内部ネットワークに接続する必要があります。


VPN接続は絶対に必要?

HTBのマシンを攻撃する際、VPN接続は絶対に必要というわけではありません。

実際に、VPN接続が必要なのは、一部の「閉鎖ネットワーク上で起動する本格的な仮想マシン」だけです。それ以外の「パブリックIPアドレスからアクセス可能な仮想マシン」は、VPN接続がなくてもアクセス可能です。

ただし、本格的にサイバーセキュリティについて学びたいのであれば、ここでVPN接続の仕方について学んでおくことをお勧めします。後々、別の学習プラットフォームを使う際に役立ちます。


参考:https://help.hackthebox.com/en/articles/8602725-understanding-the-hack-the-box-vpn


3.HTB(Hack The Box)の登録とVPN接続の手順

3-1.アカウント登録

まずは、HTBのアカウント作成から始めましょう。


HTBの公式サイトにアクセスし、右上の「Get Started」をクリックします。

https://i.gyazo.com/093fade595664b599e94c362fdd0f129.png

次に、以下のような画面が表示されるので、「For Individuals」を選びましょう。

https://i.gyazo.com/a3b588970d6b8dc2853608554dc7ed15.png

すると以下のような画面が表示されるので、メール認証かGoogle・Linkedin・Githubアカウントでのアカウント登録を選びます。

https://i.gyazo.com/e75f2ba911c04fed1258ffcf27714530.png

その後、メール認証の場合、登録したメールアドレスに認証メールが届くので、添付されたリンクをクリックして、認証を完了しましょう。


3-2.ログインとオンボーディング

アカウント登録が完了したら、早速ログインします。

初回ログイン時に、オンボーディングが表示されるので、回答しておきましょう。

※ここでは、「ITに全く触れてこなかった初学者」と想定して進めています。


3-2-1.Why have you joined Hack The Box?

今回は、「Start learning cybersecurity」を選んで「Continue」を押します。

https://i.gyazo.com/04ae3b6d77cd5fa7381a8c3f63d379bd.png

3-2-2.Which field do you work or study in?

「Other」を選びましょう。

https://i.gyazo.com/900c5dd35848236ddc559d8c4262c2c3.png

3-2-3.What best describes your role in Other

「Student/Professional in Other Fields」を選びます。

https://i.gyazo.com/6b118a0b7d8334bd74435fee1d623d57.png

3-2-4.What interests you in cybersecurity? Pick three.

今回は、基礎的な項目である「Baseline Offensive Operations」から、

  • Network Penetration Testing
  • Web Application Penetration Testing
  • Bug Bounty Hunting


の3つを選びます。

https://i.gyazo.com/599d908a4cee83c447e1566a7e813af8.png

3-2-5.Are you open to job opportunities?

「Yes, I'm open to exploring new job opportunities」を選びます。

https://i.gyazo.com/72506d3dcc951a274ec65bbd661ad957.png

これで初回ログイン時のオンボーディングは完了です。


3-3.初期設定とVPNファイルの取得

オンボーディング後、HTBのダッシュボードにアクセスできるようになります。

https://i.gyazo.com/24202db5895842b712d6d1923ba06876.png

画面右上に表示されているアイコン3つのうち、真ん中のアイコンをクリックしましょう。ドロップダウンメニューが表示されるので、「HTB Labs」をクリックします。

https://i.gyazo.com/92efecff15eaa1ae0735dfcf2dcf2185.png

すると、以下のような画面が表示されます。

https://i.gyazo.com/624fd77b8084f6e3082a7126de064898.png

初学者なので、まずは、「Starting Point」のVPN接続を試してみましょう。

「Starting Point」タブを開きます。

https://i.gyazo.com/335816fd9813e40e9c04459a23a77c36.png

タブを開くと、以下のような画面が表示されます。

https://i.gyazo.com/67fb9418a81b0815c5eea6d7648f91e6.png

画面上部の「Connect」ボタンをクリックしてください。

https://i.gyazo.com/5f373311067902cf318b69879f61284e.png

すると、以下のような画面が表示されるので、「Starting Point」をクリックします。

https://i.gyazo.com/1aeb877c5199d723f76b61b00b80816c.png

今回は、「Pwnbox」を使わないので、「OpenVPN」を選びます。

https://i.gyazo.com/b40e9baf1c8bf532deae1c7d1fe2102a.png

すると、以下のような画面が表示されるので、「Download VPN」をクリックして、VPN接続用の設定ファイル(.ovpn)をダウンロードしましょう。

https://i.gyazo.com/ae123f182132e13298200ed4e7605749.png

3-4. VPN接続

HTBへのVPN接続には、OpenVPNというソフトウェアを使います。

まずは、ターミナルを開いて、


$ openvpn --version


で、Kali LinuxにOpenVPNがインストールされているか確認します。

インストールされていない場合は、以下のコマンドでインストールしましょう。


$ sudo apt update
$ sudo apt install openvpn


3-4-1. ターミナルから接続する方法

まずは、ターミナルからVPN接続する方法を解説します。


デスクトップのアイコンから、「File System」を開きます。

https://i.gyazo.com/0ca53a4edcaf77145a96e207335365a9.png

「File System」を開くと、以下のような画面が表示されるので、右側のタブ一覧から「Downloads」を開きましょう。

https://i.gyazo.com/ea8a339a76817712a338a47737493e09.png

VPN接続用の設定ファイルがきちんとダウンロードできていれば、以下のように「~~~.ovpn」というファイルが見つかります。

https://i.gyazo.com/bc5b3c878f2d779135ba5b3d5c56d0a8.png

設定ファイルがあるか確認できたら、右側の「Downloads」タブにカーソルを合わせて右クリックします。

すると、以下のようにドロップダウンメニューが表示されるので「Open Terminal Here」をクリックしましょう。

https://i.gyazo.com/822bc4d23fe6b357644c07780731b9d6.png

すると、ターミナルが開くので、以下のコマンドで、VPN接続を開始します。


$ sudo openvpn ~~~~(ファイル名).ovpn


接続が成功すると、以下のように、ログに「Initialization Sequence Completed」と、数行のシステムメッセージが表示されます。

https://i.gyazo.com/68914fa3305187611b1681a03d5d1cf7.png

3-4-2. ネットワーク設定から接続する方法

まず、デスクトップの画面右上にあるネットワーク設定(LANケーブルのコネクターのようなアイコン)をクリックします。

https://i.gyazo.com/a9e4c6648cd74bff1108a315c248ec11.png

すると、ドロップダウンメニューが表示されるので、「VPN Connections」>「Add a VPN connection…」をクリックします。

https://i.gyazo.com/5bee2d3bc85a8830265d7e5f901bf175.png

すると、以下のような画面が表示されるので、「Layer 2 Tunneling Protocol (L2TP)」と表示されている欄の右端のアイコンをクリックして、ドロップダウンメニューを表示します。

https://i.gyazo.com/fb3d30d0ea67538cda0270607187016f.png

ドロップダウンメニューの一番下の項目「Import a saved VPN configuration…」を選び、「Create…」をクリックします。

https://i.gyazo.com/85bd5d28c763ce3ee09708be028d1a2c.png

すると、以下のように、File Systemの画面が表示されます。

https://i.gyazo.com/8e5c99ac3268b20cf7ec403ccc7ee838.png

左端の「Downloads」タブをクリックすると、VPN接続用の設定ファイルがあります。

選択された状態で、ウィンドウ右下の「Open」をクリックしましょう。

https://i.gyazo.com/2afa6e77f7cb76bf4cacb4d7bf6239a5.png

すると、以下のような設定画面が表示されます。

今回は、特に設定を変えずに、ウィンドウ下部の「Save」をクリックしましょう。

https://i.gyazo.com/a22c030bd6b838480a634889c0017181.png

最後に、デスクトップの画面右上のネットワーク設定から「VPN Connections」を開き、先ほど追加したVPNが追加されているか確認し、クリックして接続してみましょう。

https://i.gyazo.com/340f0ccb7ee785f386adaa3ea4a00535.png

無事に接続できていれば、ネットワーク設定アイコンの右側に、鍵のマークとIPアドレスが表示されます。

※「VPN connection has been successful established」という表示も出る場合があります。

https://i.gyazo.com/48ade16df952bbe98e46496cc58cc983.png

3-5.接続確認

最後に、きちんとVPN接続ができているか、HTB側で確認します。

HTB Labsの画面を開いて、右上の「Connect」ボタンが「Connected」という表記になっていることを確認しましょう。

https://i.gyazo.com/8860404e9e3e3a77c9a4556355288a27.png

また、「Connected」ボタンをクリックして、以下のような画面が表示されれば、問題なく、VPN接続できています。

https://i.gyazo.com/df86358d5f1017eea82462c33ce07601.png

4. あとがき

今回で、ようやく、サイバーセキュリティの学習環境が整いました。

次回は、「Starting Point」のTier0のマシン攻略を実際に攻略しながら、ペネトレーションテストの学習を進めていきます。


また、今後は、ポートスキャン・脆弱性調査・権限昇格といった具体的なペネトレーション手法や、テストに使うツールについても、別記事で解説していくので、ぜひご覧ください。