01.はじめに
Kali Linux のダウンロード
| 重要!公式なソース以外からKali Linuxのイメージをダウンロードしないでください 。常にダウンロードファイルのSHA256チェックサムと正式な値とを検証してください 。 悪意のあるエンティティがエクスプロイトやマルウェアを含むようにKali Linuxを変更し、非公式にホストするのは簡単です。 |
公式のKali Linuxイメージを入手する場所
IntelベースのPCのISOファイル
WindowsやAppleのパソコンのUSBドライブからKali "Live"を実行するには、32ビットまたは64ビット形式のKali LinuxブータブルISOイメージが必要だ。
LinuxやOS X上でKaliを実行したいシステムのアーキテクチャがわからない場合は、”uname -m”コマンドで確認できる。
コマンドラインで 応答が "x86_64"の場合は、64ビットのISOイメージ(ファイル名に "amd64"を含むイメージ)を使用する。”i386”をの場合は、32ビットのISOイメージ(ファイル名に”i386”を含むイメージ)を使用する。Windowsシステムを使用している場合は、アーキテクチャを判断する手順は、
MicrosoftのWebサイトに詳しく記載されている。
Kali Linuxイメージは、直接ダウンロード可能な ".iso / .img"ファイルまたは ".torrent"ファイルの両方で利用できます。
標準またはカスタマイズした独自のKali Linux ISOを構築するのは、
非常に簡単だ。
VMwareイメージ
VMwareのゲストとしてKali Linuxを実行する場合、VMware Toolsがインストール済みのKaliのVMware仮想マシンを利用できる。VMwareイメージは、64ビット(amd64)、32ビット(i686)、および32ビットPAE(i486)形式で提供されている。
ARMイメージ
ARMベースのデバイスのハードウェアアーキテクチャはかなり異なるため、すべてのアーキテクチャで機能する単一のイメージを準備できない。
ARMアーキテクチャー用のKali Linuxイメージは、幅広いデバイスで使用できます。
独自のARMイメージをローカルに構築するためのスクリプトは、
GitHubでも利用できる。 詳細については、
ARMクロスコンパイル環境の設定 、
カスタムKali Linux ARM chrootの構築に関する記事を参照のこと。
ダウンロードしたKaliイメージの検証
なぜこれを行う必要があるのか?
Kali Linux Liveを実行、またはハードディスクにインストールする前に、あなたが実際に持っているものは Kali Linuxであり、詐欺師ではないことを確かめたいと思う。 Kali Linuxは、プロのペンテストとフォレンジックツールキットだ。 プロのペンテスターにとって、ツールの完全性における完全な確実性は重大だ。あなたのツールが信頼できるものでないならば、あなたの調査も信頼できるものでない。
さらに、第一級のペンテスト用ディストロであるKaliの強力さは、それが不注意に展開されたなら、Kali Linuxの偽のバージョンにより大きな被害を被る可能性があることを意味している。Kaliのように見えるものにおかしなものを突っ込みたいと考える多くの人がいるが、あなたはそういうものを動かすことを絶対に望んでいない。
これを避けることは簡単だ:
- イメージをダウンロードしたら、実行する前に 、以下に詳述されている手順の1つを使ってチェックサムを検証することによって、本当に想定したものかを常に検証しなさい。
ダウンロードを確認する方法はいくつかある。 それぞれは一定程度の保証を提供し、それに対応するレベルの努力を必要とする。
- 公式のKali LinuxダウンロードミラーサイトからISOイメージをダウンロードし、ISOのSHA256ハッシュを計算し、Kali Linuxサイトに記載されている値と比較できる。 これは手軽で簡単だが、潜在的にDNSキャッシュポイズニングの影響を受けやすい。たとえば、ハッシュ値の比較は、"kali.org"ドメインの名前解決結果が実際のKali Linuxサイトであることを前提としている。その前提が崩れると、攻撃者は、偽のWebページにロードしたイメージとそれに一致するSHA256署名を提示できる。下記の「ISOでの署名の手動検証(直接ダウンロード)」の項を参照のこと。
- トレントを介してISOイメージをダウンロードすることもでき、それは、計算されたSHA256署名を含む署名されていないファイルもプルダウンする。 shasumコマンド(LinuxおよびOS Xの場合)またはユーティリティ(Windowsの場合)を使用して、ファイルの計算されたシグネチャがセカンダリファイルのシグネチャと一致するかどうかを自動的に確認できる。 これは "手動"の方法よりも簡単だが、同じ弱点がある。あなたがプルダウンしたトレントが実際にKali Linuxでない場合でも良好な署名を持つことができる。 下記の「Included Signature File(Torrent Download)を使用したISOのシグネチャの検証」を参照のこと。
- 入手したKali Linuxのダウンロードの正しいことをできる限り確実に確認するために、平文の署名ファイルと同ファイルに公式のKali Linux秘密鍵で署名されたファイルをダウンロードする。最初にGPGを使用して計算されたSHA256署名と平文ファイルの署名が一致することを確認し、次にSHA256ハッシュを含む署名されたファイルが正式な鍵で正しく署名されていることを確認する。このより複雑なプロセスを使用してダウンロードしたISOの検証を成功させると、あなたが持っているものは正式なイメージであり、改ざんされていないという完全な保証を得ることができる。この方法は、最も複雑であるが、イメージの完全性について独立した保証を提供するという利点を有する。 この方法が失敗する唯一の方法は、公式のKali Linux秘密鍵が、攻撃者によって悪用されており、かつKali Linux開発チームによって取り消されていないことだ。 この方法については、SHA256SUMSファイルを使用した検証セクションを参照してください。
これを行うには何が必要か?
Linuxを実行しているなら、既にGPG (GNU Privacy Guard)がインストールされているはずだ。WindowsまたはOS Xを使用している場合は、プラットフォーム用の適切なバージョンをインストールする必要がある。
GPGをインストールしたら、Kali Linux公式キーのコピーをダウンロードしてインポートする必要がありる。 次のコマンドでこれを行う
| $ wget -q -O - https: // www.kali.org / archive-key.asc | gpg --import |
またはコマンド
| $ gpg --keyserver hkp: // keys.gnupg.net --recv-key 7D8D0BF6 |
出力は次のようになる。
gpg: key 7D8D0BF6: public key "Kali Linux Repository <devel@kali.org>" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1) |
次のコマンドを使用して、キーが正しくインストールされていることを確認する。
|
gpg --fingerprint 7D8D0BF6
|
出力は次のようになる。
pub 4096R/7D8D0BF6 2012-03-05 [expires: 2018-02-02]
Key fingerprint = 44C6 513A 8E4F B3D3 0875 F758 ED44 4FF0 7D8D 0BF6
uid Kali Linux Repository
sub 4096R/FC0D0DCB 2012-03-05 [expires: 2018-02-02]
|
Kali Linuxのダウンロードを検証するように設定された。
ダウンロードしたイメージを確認するにはどうすればいい?
手動でISOの署名を確認する(直接ダウンロード)
ダウンロードページから直接ISOをダウンロードした場合は、次の手順で確認しなさい。
LinuxまたはOS Xでは、次のコマンドを使用してダウンロードしたISOイメージからSHA256チェックサムを生成できます(ISOイメージの名前が "kali-linux-2016.2-amd64.iso"で、カレントディレクトリにあると仮定する):
|
shasum -a 256 kali-linux-2016.2-amd64.iso
|
出力は次のようになる。
|
1d90432e6d5c6f40dfe9589d9d0450a53b0add9a55f71371d601a5d454fa0431 kali-linux-2016.2-amd64.iso
|
作成されたSHA256の署名「1d90432e6d5c6f40dfe9589d9d0450a53b0add9a55f71371d601a5d454fa0431」は、64ビットインテルアーキテクチャのKali Linux 2016.2 ISOイメージの公式ダウンロードページの「sha256sum」列に表示されるシグネチャと一致している。
同梱の署名ファイルを使用してISO上の署名を確認する(トレントダウンロード)
トレント経由でKali Linux ISOイメージのコピー(例:kali-linux-2016.2-amd64.iso)をダウンロードした場合、拡張子 ".txt.sha256sum"(例:kali-linux-2016.2-amd64.txt.sha256sum)のISOのSHA256署名を含む2番目のファイルが作成される。このファイルを使用して、LinuxまたはOS Xで次のコマンドでダウンロードの信頼性を確認できる。
|
grep kali-linux-2016.2-amd64.iso kali-linux-2016.2-amd64.txt.sha256sum | shasum- a 256 -c |
イメージが正常に認証された場合、レスポンスは次のようになる。
|
kali-linux-2016.2-amd64.iso:OK
|
| 重要! 前のセクションで説明したようにダウンロードしたKali Linuxイメージの信頼性を確認できない場合は、使用してはいけない! それを使用すると、自分のシステムだけでなく、ネットワークに接続するネットワークやそのネットワーク上の他のシステムを危険にさらす可能性がある。停止し、 正当なKali Linuxミラーからイメージをダウンロードしたことを確認しなさい。
|
SHA256SUMSファイルを使用してISOを確認する
これはより複雑な手順だが、より高いレベルの検証を提供しする。イメージをダウンロードしたWebサイトの完全性に依存せず、独立してインストールするKali Linux開発チームの公式のキーにだけ依存する。IntelアーキテクチャのKaliのイメージをこの方法で確認するには、
Kali "Live CD Image" site for the current releaseのサイトから3つのファイルをダウンロードする必要がある。
- ISOイメージ自体(例:kali-linux-2016.2-amd64.iso)
- 計算されたISO SHA256ハッシュを含むファイル、SHA256SUMS
- そのファイルの署名付きバージョン、SHA256SUMS.gpg
イメージのチェックサムを検証する前に、SHA256SUMSファイルがKaliによって生成されたファイルであることを確認する必要がある。そのため、ファイルはSHA256SUMS.gpgで切り離された署名付きのKaliの公式鍵で署名されている。 あなたがまだそれをしていないなら、Kaliの公式鍵はこのコマンドでダウンロードしてあなたのキーチェーンにインポートすることができる:
|
$ wget -q -O - https://www.kali.org/archive-key.asc | gpg --import
|
またはこのコマンド
|
$ gpg --keyserver hkp://keys.gnupg.net --recv-key 7D8D0BF6
|
出力は次のようになる。
gpg: key 7D8D0BF6: public key "Kali Linux Repository <devel@kali.org>" imported gpg: Total number processed: 1 gpg: imported: 1 (RSA: 1) |
コマンドが正しくインストールされていることを確認する必要がある。
|
gpg --fingerprint 7D8D0BF6
|
出力は次のようになる。
pub 4096R/7D8D0BF6 2012-03-05 [expires: 2018-02-02]
Key fingerprint = 44C6 513A 8E4F B3D3 0875 F758 ED44 4FF0 7D8D 0BF6
uid Kali Linux Repository
sub 4096R/FC0D0DCB 2012-03-05 [expires: 2018-02-02]
|
SHA256SUMSとSHA256SUMS.gpgの両方をダウンロードしたら、次のように署名を検証できる。
$ gpg --verify SHA256SUMS.gpg SHA256SUMS
gpg: Signature made Thu 16 Mar 08:55:45 2017 MDT using RSA key ID 7D8D0BF6
gpg: Good signature from "Kali Linux Repository <devel@kali.org>"
|
| このような"Good signature"メッセージが表示されない場合、またはキーIDが一致しない場合は、停止し、正規のKali Linuxミラーからイメージをダウンロードしたかどうかを確認しなさい。 検証の失敗は、あなたのイメージが改ざんされた可能性があることを強く示唆している。
|
"Good signature"応答が得られれば、SHA256SUMSファイルのチェックサムは実際にKali Linux開発チームによって提供されたことが保証される。 確認を完了するために行わなければならないのは、ダウンロードしたISOから計算した署名がSHA256SUMSファイル内の署名と一致することを検証することだけだ。 次のコマンドを使用して、LinuxまたはOS X上で実行できる(ISOの名前は "kali-linux-2016.2-amd64.iso"で、カレントディレクトリにあるものとする)。
|
grep kali-linux-2016.2-amd64.iso SHA256SUMS | shasum- a 256 -c
|
イメージが正常に認証された場合、レスポンスは次のようになる。
|
kali-linux-2016.2-amd64.iso:OK
|
| レスポンスで"OK"が返らない場合、停止し、何が起こったのか確認しなさい。あなたが持っているカリの画像は、明らかに改ざんされている。使用してはいけない。
|
イメージをダウンロードして確認したら、
起動可能な「Kali Linux Live」USBドライブの作成に進むことができる。