VirtualBoxでKali Linuxから仮想マシンにハッキングしてみる～環境構築編～[Windows10]

## はじめに
この記事は**前編**で、Windows機に各種VMの環境構築を行うまでの記事です。
後編は以下リンクから。

https://qiita.com/shiba_it/items/0ae52b9aa0005b2a9bcc


最近、情報処理安全確保支援士を受験したり、「[王様達のヴァイキング](https://www.amazon.co.jp/%E7%8E%8B%E6%A7%98%E9%81%94%E3%81%AE%E3%83%B4%E3%82%A1%E3%82%A4%E3%82%AD%E3%83%B3%E3%82%B0%EF%BC%88%EF%BC%91%EF%BC%89-%E3%83%93%E3%83%83%E3%82%B0%E3%82%B3%E3%83%9F%E3%83%83%E3%82%AF%E3%82%B9-%E3%81%95%E3%81%A0%E3%82%84%E3%81%99-ebook/dp/B00F4TLKDI/ref=sr_1_1?adgrpid=113777899577&hvadid=492577882493&hvdev=c&hvqmt=e&hvtargid=kwd-335412413518&hydadcr=14637_10910741&jp-ad-ap=0&keywords=%E7%8E%8B%E6%A7%98%E3%81%AE%E3%83%90%E3%82%A4%E3%82%AD%E3%83%B3%E3%82%B0&qid=1638107631&sr=8-1)」を読んだりしたおかげで**ハッキング**という言葉が自分の中でブームになっています。
思えば中二病全盛期の頃に「Blody Monday」をドラマで見てからずっと憧れていたのに、「ハッキングって実際やったら捕まるんでしょ・・・？」と弱腰になってずっと敬遠していました。
ところが現実には「[ペネトレーションテスト](https://www.itmanage.co.jp/column/about-penetration-testing/)(略してペンテスト。かっけ～)」と呼ばれる、システムやサーバーを実際にハッキングしてセキュリティに問題がないか検査するお仕事があることを最近知りました。

そんなこんなでついに自分も実際にやってみようと思い、参考記事など見ながらトライしてみたので記録します。

:::note notice
他人や他社のサービス、サーバー等へ許可なしに攻撃を実行した場合は犯罪行為となります。
本記事を参考に他人や他社に害を与えたとしても一切の責任を負いません。
:::

## 動作環境
- ローカルマシン: Windows10
- 仮想化ソフト: VirtualBox
- 攻撃用仮想マシン: Kali Linux
- 攻撃対象の仮想マシン: Metasploitable2

#### Kali Linuxとは
攻撃用のツールが350種以上もプリインストールされているまさにハッキング用Linuxです。そのため使用には十分な注意が必要です。

#### Metasploitable2とは
あえて脆弱性を仕込んでいるサーバーです。ハッキング練習用として最適といわれています。

## 環境構築
### VirtualBoxのインストール
まずはVMを立ち上げるための下準備をします。すでにインストール済みであれば「[Kali Linuxの導入](#kali-linuxの導入)」にスキップして大丈夫です。

1. 下記リンクから最新版の「Windowsホスト」パッケージをDLし、インストールを完了します(デフォルト設定でOKです)
https://www.virtualbox.org/wiki/Downloads

2. 同じく上記サイトから「VirtualBox 6.1.28 Oracle VMVirtualBox拡張パック」をDLします。
3. VirtualBoxを起動し、「ファイル」＞「環境設定」を開きます
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/13d72975-1936-280e-4446-4288591bf95b.png" width="700">

4. 「機能拡張」を選択し、画面右の「＋」ボタンをクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/e9574cdd-9536-0ab8-ecf1-9c162f3cefdd.png" width="650">

5. DLした拡張パックファイルを選択し「開く」をクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/54fecab2-6df2-32de-754a-de0aa8a009a4.png" width="650">
6. 「インストール」をクリックします。インストールが完了したらVirtualBoxの準備は完了です。

### Kali Linuxの導入
続いてKali Linuxイメージをインポートし、起動まで行います。

1. 以下のページからKali LinuxイメージファイルをDLします。
https://www.kali.org/get-kali/#kali-virtual-machines
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/ac9ed0e5-0e07-c466-4e2c-d21c55b7a838.png" width="650">

2. VirtualBoxを起動し、「インポート」をクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/d8c17ae2-f875-c54e-72ac-dfc9f16efc11.png" width="650">

3. DLしたイメージファイルを選択し「次へ」をクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/4998b22f-0666-d972-20d8-b382e7340e77.png" width="650">

4. 保存先に問題なければ「インポート」をクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/1a8b94eb-b630-486d-da8e-0fec80b104c2.png" width="650">

5. VirtualBox上にKali Linuxが表示されているはずなので、こちらを起動します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/b6c9cb14-8f21-317e-4ddd-7688c8a81997.png" width="650">

6. Kali Linuxが立ち上がるのでログインします。
ID:kali
パスワード:kali
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/dff062d1-765f-bf70-2a1b-f371ba6ba40d.png" width="650">
ログインできたらKali Linuxの準備は完了です。

### Metasploitable2の導入

最後にMetasploitable2イメージのインポートから起動、設定まで行います。

#### Metasploitable2イメージのインポート
1. 下記のページからイメージファイルをDLします。
https://sourceforge.net/projects/metasploitable/

2. VirtualBoxを起動し、「新規」をクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/21619b20-c630-6bbc-04ce-cad4397ee4a7.png" width="650">

3. 「名前:任意の文字列」、「タイプ:Linux」、「バージョン:Ubuntu」を選択します。その後ハードディスク項目の右下にある「フォルダ」ボタンをクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/ebfdefd9-74f6-10c5-ccea-70084bb28563.png" width="650">

4. 「追加」ボタンをクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/91b8472a-c5ed-977c-7187-7c1042d1e63f.png" width="650">

5. DLしたイメージを選択します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/e22c5f2b-ab33-d0dc-ad3e-c5c311350fc0.png" width="650">
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/8dc16f71-1f99-413a-e4f3-a9165ba4838a.png" width="650">

6. 「作成」ボタンを押します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/8b1f1a75-783d-ca4a-36cf-8c2808c71a41.png" width="650">

7. VirtualBoxの画面上にMetasproitableが表示されますので、選択した状態で「設定」ボタンをクリックします。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/81f3cec6-8c33-9752-8353-0c0bb6c4f9dd.png" width="650">

8. 「ネットワーク」タブにて「ホストオンリーアダプター」を割り当てます。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/8581bf19-c942-a18e-2b06-2c42a91179c4.png" width="650">

9. VirtualBoxのトップ画面に戻り、「起動」をクリックしてCLIが起動をすることを確認します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/72a87aa1-d9ca-1896-2c28-4e299ced5ba0.png" width="650">
※エラーが発生して起動に失敗する場合、以下の記事を実践することで解決するかもしれません。
https://qiita.com/0xC0FFEE/items/ae80a7d767144c2e1992

10. Metasploitable2にログインします
アカウント：msfadmin
パスワード：msfadmin

#### 日本語キーボードへの変更
端末が日本語キーボードの場合のみ行います。

CLI上で`sudo loadkeys jp`コマンドを実行します。 
![Metasploitable2 [実行中] - Oracle VM VirtualBox 2021_11_27 17_54_19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/68c7d64d-782d-87da-3942-ce63b0c50a6e.png)


#### 「etc/network/interfaces」の編集
自動IP設定から固定IP設定に変更します。「etc/network/interfaces」ファイルを編集することでIPアドレスを変更できます。

1. `sudo cat /etc/network/interfaces`コマンドを実行し、現在の状態を確認します。
![Metasploitable2 [実行中] - Oracle VM VirtualBox 2021_11_27 18_04_26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/62dd014e-6f91-566b-efa7-acf6fd15d13b.png)


2. ホストマシン上で、「VirtualBox Host-Only Ethernet Adapter」のIPアドレスを確認します。
<img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/8d36899c-d956-9721-fc71-0706c00e6c7f.png" width="650">

2. Metasploitable2側に戻り、固定のIPアドレスになるようファイルを編集します。
IPアドレスは上記で調べたIPアドレスと同じセグメントになるよう設定します。今回は「10.0.0.5」に設定。

```bash
msfadmin@metasplooitable:~$ sudo vi /etc/network/interfaces

# The primary network interface
auto eth0
iface eth0 inet static
address 10.0.0.5
netmask 255.255.255.0
gateway 10.0.0.1
```

3. `sudo /etc/init.d/networking restart`コマンドを実行し、設定を反映します。
4. `ifconfig`でIPアドレスが設定した値になっていることを確認します。
![Metasploitable2 [実行中] - Oracle VM VirtualBox 2021_11_28 22_46_17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/50874635-c413-907a-088e-b360c25b373c.png)

5. 最後にホストマシンに向けてpingを打って疎通が取れることを確認したら環境構築完了です！
![Metasploitable2 [実行中] - Oracle VM VirtualBox 2021_11_28 22_50_09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/434874/05bff875-8076-955e-e56c-6e467deab43a.png)
※pingが飛ばない場合はこちらの記事を参考にしてみてください
[【VMware】ホストとゲスト間で通信ができない場合の対処方法](https://pepe-log.com/vmware-solve-trouble-2/)

# 最後に
ハッキング実践編（準備中）に続きます！
「[王様達のヴァイキング](https://www.amazon.co.jp/%E7%8E%8B%E6%A7%98%E9%81%94%E3%81%AE%E3%83%B4%E3%82%A1%E3%82%A4%E3%82%AD%E3%83%B3%E3%82%B0%EF%BC%88%EF%BC%91%EF%BC%89-%E3%83%93%E3%83%83%E3%82%B0%E3%82%B3%E3%83%9F%E3%83%83%E3%82%AF%E3%82%B9-%E3%81%95%E3%81%A0%E3%82%84%E3%81%99-ebook/dp/B00F4TLKDI/ref=sr_1_1?adgrpid=113777899577&hvadid=492577882493&hvdev=c&hvqmt=e&hvtargid=kwd-335412413518&hydadcr=14637_10910741&jp-ad-ap=0&keywords=%E7%8E%8B%E6%A7%98%E3%81%AE%E3%83%90%E3%82%A4%E3%82%AD%E3%83%B3%E3%82%B0&qid=1638107631&sr=8-1)」はいいぞ。

#### 参考記事
- [VirtualBoxでKali Linux仮想マシンを作る](https://slacknotebook.com/virtualbox-import-kali-linux-premade-image/)
- [VirtualBox 6.1.2 に脆弱なLinux「Metasploitable2」を導入](https://www.kdryblog.com/virtual-box-metasploitable)
- [VirtualBoxでVMWareイメージを使う](http://animemo.seesaa.net/article/419231878.html)