M1 Macでハッキング・ラボに挑戦できるか?

『ハッキング・ラボのつくりかた』に対して、次のような質問が来たので記事にしました。

『ハッキング・ラボのつくりかた』を購入しました。
MacBook Pro 2020 M1(以降、M1と略す)を持っていますが、本で取り上げられていたVirtualBoxが対応していないようです。

Windowsを購入しないと本書を進められないのでしょうか?
AWS上にKaliを構築しても本書を進められますか?
初心者のために読み替えが困難ですが、可能であれば挑戦したいと思います。

結論からいうと、M1 Macでハッキング・ラボの実験は厳しいかもしれません。

Windowsでなければ『ハッキング・ラボのつくりかた』を読み進められないわけではありません。
仮想環境を構築できれば、OSに依存しません。
本書ではホストOSにWindowsを採用していますが、過去に(M1ではない)MacやLinuxで挑戦した方もたくさんいます。『ハッキング・ラボの構築で困ったら読む本』ではMacにハッキング・ラボを導入する方法を解説しています。

仮想環境を構築しないアプローチであれば、「実機の助けを借りる」「AWSなどの環境を活用する」などが挙げられます。
もし後者のアプローチを採用するとしたら、AWSで攻撃端末(Kali)とターゲット端末(Windows)を構築しなければなりません。
AWSなのでネットワークやセキュリティの設定に注意が必要で、初心者には敷居が高いかもしれません。
しかしながら、最初はだれでも初心者ですし、挑戦することは今後のPC人生において無駄にはなりません。むしろ失敗したとしても糧になります。そういった修羅場の経験を通して、自分の血肉になることでしょう。
そして、アウトプットとして、挑戦した結果を記事(ブログやツイート)でコツコツ書いていくとよいと思います。失敗した結果でも構いません。失敗した記録であっても、同様に困っている人にとっては役に立つ情報になるはずです。

M1でVirtualBoxが動作するか?

M1はこれまでのIntel Macと異なり、Armプロセッサーを搭載しています。そのため、これまでのMacで動作していたソフトがM1で動作するとは限りません。

以下のサイトでソフトウェアがM1に対応しているかを調べられます。

VirtualBoxは基本的にx86_64向けに作られています。次のWebページのようにM1ではVirtualBoxが動作しないことが判明しました(2021年3月時点)。ただし、将来的に対応する可能性はあります。

M1でラボの実験するうまい方法があれば是非お知らせください。
Twitterにて「#ハッキングラボ」というハッシュタグを付けてツイートしてください。

代替アプローチ

ぱっと思いつく代替アプローチは次の通りです。

  • ①ARMでも動作する仮想環境を導入する
  • ②M1以外の端末を使う
  • ③AWSにラボの環境を構築する

個人的にはアプローチ②がもっとも簡単かつ確実な方法だと思います。

①ARMでも動作する仮想環境を導入する

M1で動作する仮想化ソフトとしてParallels、SimpleVM、Dockerがあるようです。今後徐々に増えていくと思います。

Paralles

Parallelsを使ったことがないので、なんともいえません。
情報をお持ちの方はお知らせください。

想像になりますが、ARM版のKali、ARM版のWindows 10 Insider Previewであれば動作するかもしれません。ただし、Windows 10の実験になるので注意してください。
本書の内容を都度読みかえる必要があります。特に、ペイロードの作成時はARM用のものになります。

SimpleVM

Docker

記事によると、M1向けDocker Desktop for Macは、Arm64向けイメージだけでなく、 x86_64向けのDockerイメージも動作するようです。

②M1以外の端末を使う

M1以外の端末(実機)を使うのがもっとも

中古のWindowsやMacマシン(Intel Mac)、小型ノートPC、ラズパイなども対象になります。

ラボの主要な実験ではVirtualBox上に攻撃側の仮想マシン(Kali)とターゲット側の仮想マシン(Win)を同時に起動します。目安ですがメモリが8Gバイトでぎりぎり動作します。理想は16Gバイト以上です。

格安のマシンであればスペック的にきついかもしれません。

そういった場合は、Kaliの実機マシン(あるいは仮想マシン)、Kaliの仮想マシンがインストールした別端末(OSは自由)という2台を用意するのが有効です。例えば、ラズパイにKali Piを導入し、低スペックのWindowsマシンにてWindows 7や10の仮想マシンをインストールします。ネットワークはブリッジモードにしておけば、互いに通信できます。

③AWSにラボの環境を構築する

AWS上にKaliを導入するという記事はネット上にもあります。

また、AWS上のKaliでペネトレーションテストをするという洋書も出版されています。

いずれにしてもある程度のネットワーク知識が必須となります。

もしAWSに不慣れであれば、Kaliで試す前にもっと一般的なOSを用いてAWSに慣れることが先決です。

攻撃側のKaliをインストールできても、ターゲット側であるWindows 7/10のインストールという課題も残されています。

おわりに

今回はプロセッサーの問題でラボの実験ができないという内容でしした。
近いうちに、スペックの問題についての記事を書きたいと思います😀
(『1日で自作するポータブル・ハッキング・ラボ』の10.1にも同様のことを記載しています)