Kali Linux in Action: Kali Linux ツール(パッケージ)のインストール

河本孝之(KAWAMOTO Takayuki)

Contact: takayuki.kawamoto@markupdancing.net

ORCID iD iconORCID, Google Scholar, PhilPapers.

First appeared: 2018-02-08 17:10:16,
Modified: [BLANK],
Last modified: [BLANK].

Installation of packages on Kali Linux

はじめに

Kali Linux のインストールを終えたら、Linux としての運用環境を整備したりデスクトップ環境をカスタマイズするといったことは、それぞれの運用レベルや目的に応じてやっていただくとして、ここでは Kali Linux 用のツール(パッケージ)を追加する解説に入ります。ただし、セキュリティ関連のツールをインストールする前に、apt-get updateapt-get dist-upgrade でインストール環境を整える事前準備はやっておきましょう。

Kali Linux 用に提供されているツールは、専用のウェブサイトで公開されており、個々のツールだけでなく “Kali Metapackages”(当サイトでは「メタ・パッケージ」と呼びます)という一式のパッケージ・セットとしても提供されています。したがって、apt-get install git のように個別でパッケージを追加してもいいわけですが、apt-get install kali-linux-pwtools(これはパスワード・クラック用のツールを集めたメタ・パッケージ) として直にメタ・パッケージを指定すると、複数のパッケージや依存関係のあるライブラリなどをまとめてインストールしてくれます。

ただし、メタ・パッケージのページで確認すると分かるように、幾つものパッケージが含まれているので、インストールにかかる時間も長くなります。僕が試したところでは、kali-linux というメタ・パッケージのダウンロードとインストールには 25 分ていどの時間がかかっていますし、kali-linux-pwtools というメタ・パッケージのダウンロードとインストールには1時間以上もかかりました(このメタ・パッケージに含まれるパッケージの数は、表向きは 42 個となっていますが、実際には依存関係のあるライブラリも一緒にダウンロードするため、合計で 160 くらいのソフトウェアをインストールしています。もちろん、帯域やマシンの性能によって所要時間は変わります)。そして、メタ・パッケージに含まれているパッケージの数が単純に少ないからといって、所要時間の合計が短いとは限りません。例えば CLang のようなコンパイラが含まれていれば一つのパッケージだけでインストールが長くなったりします。そして、幾つものメタ・パッケージを順番にインストールするときは、先にインストールするメタ・パッケージと一緒に、後でインストールするメタ・パッケージにも必要なライブラリなどがインストールされていたら、たとえ後からインストールするメタ・パッケージに含まれるパッケージの数が先にインストールしたメタ・パッケージに含まれるパッケージの数より多くても、後からインストールするメタ・パッケージの方が所要時間は短くなるかもしれません。

なお、本稿では他のページと参照文献の専用ページを共有しています。典拠表記の参照先は別のページなので、ご了承ください。

冒頭に戻る

メタ・パッケージ一覧

どのパッケージ(あるいはメタ・パッケージ)をインストールするかは、もちろん Kali Linux を導入する用途によって判断が違ってくるはずです。僕は、差し当たって kali-linux と kali-linux-pwtools をインストールしていますが、これから正式に業務で使っていくあいだにパッケージを個別に増やしたりメタ・パッケージとして一斉にパッケージを追加するかもしれません。現状では、公式サイトのブログ記事を参照して説明すると、メタ・パッケージは以下のようなものがあります。

メタ・パッケージに含まれている個々のパッケージについて知りたい場合は、apt コマンドを使えば以下のように表示されます。

root@kalilinux:~# apt-cache show kali-linux-pwtools | grep Depend Depends: kali-linux, kali-linux-gpu, chntpw, cmospwd, crunch, fcrackzip, findmyhash, gpp-decrypt, hash-identifier, hashcat, hashcat-utils, hashid, hydra, hydra-gtk, john, johnny, keimpx, maskprocessor, medusa, mimikatz, ncrack, ophcrack, ophcrack-cli, pack, passing-the-hash, patator, pdfcrack, pipal, polenum, rainbowcrack, rarcrack, rcracki-mt, rsmangler, samdump2, seclists, sipcrack, sipvicious, sqldict, statsprocessor, sucrack, thc-pptp-bruter, truecrack, twofi, wce, wordlists

冒頭に戻る

パッケージの一部がインストールに失敗したとき

Kali on the Windows Subsystem for Linux ほどではありませんが、Kali Linux のメタ・パッケージをインストールしているときにも、幾つかのパッケージのインストールに失敗しているようです。このような場合、標準的な手続きとしては、vi /etc/apt/sources.list で開いて、

# deb-src http://repo.kali.org/kali kali-rolling main non-free contrib

のようにコメントアウトされているソースのポインタを有効にしてから(つまり # を取り除くわけです)、あらためて apt-get update して情報を更新することが推奨されています。しかし、これでインストールし直しても、以下のようなエラーで終わることもあります。

root@kalilinux:~# apt-get update ヒット:1 http://ftp.ne.jp/Linux/packages/kali/kali kali-rolling InRelease パッケージリストを読み込んでいます... 完了 root@kalilinux:~# apt-get install kali-linux-pwtools パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 以下の追加パッケージがインストールされます: acl aspell aspell-en binfmt-support binutils binutils-common binutils-x86-64-linux-gnu ca-certificates-java chntpw clang-4.0 [...] 提案パッケージ: aspell-doc spellutils binutils-doc gnustep gnustep-devel clang-4.0-doc libomp-dev gcc-7-locales beignet-opencl-icd [...] 推奨パッケージ: wine32 以下のパッケージが新たにインストールされます: acl aspell aspell-en binfmt-support binutils binutils-common binutils-x86-64-linux-gnu ca-certificates-java chntpw clang-4.0 [...] 以下のパッケージはアップグレードされます: cpp-7 gcc-7-base libcurl3-gnutls libffi6 libgcc1 libgfortran4 libglapi-mesa libglx-mesa0 libgomp1 libquadmath0 libsqlite3-0 libstdc++6 アップグレード: 12 個、新規インストール: 261 個、削除: 0 個、保留: 171 個。 482 MB 中 1,094 kB のアーカイブを取得する必要があります。 この操作後に追加で 1,613 MB のディスク容量が消費されます。 続行しますか? [Y/n] y 取得:1 http://ftp.ne.jp/Linux/packages/kali/kali kali-rolling/main amd64 mimikatz all 2.1.1-20180205-0kali1 [645 kB] エラー:1 http://ftp.ne.jp/Linux/packages/kali/kali kali-rolling/main amd64 mimikatz all 2.1.1-20180205-0kali1 File has unexpected size (2310 != 644520). Mirror sync in progress? [IP: 192.26.91.193 80] Hashes of expected file: - SHA256:19398eac99b01d1d5dcc54ddd5cbe6eae68fb941127382feee04b7a9208548f8 - SHA1:57f260c4ff87837a9cbadf556383e164a9ff6faf [weak] - MD5Sum:412bff1d3c9fd96cf4a716df1a115bc2 [weak] - Filesize:644520 [weak] [...] E: いくつかのアーカイブを取得できません。apt-get update を実行するか --fix-missing オプションを付けて試してみてください。

次に、リポジトリの FQDN を http.kali.org から repo.kali.org へ変更するというアドバイスを見かけますが、これでもエラーは直りません(というか、http://repo.kali.org は未署名なのでアクセスすらできません。論外です)。さしあたり、僕の環境では mimikatzWindows Credentials Editor (WCE) が入らないだけなのですが、これが本当に「ダウンロードするべきでないパッケージ(つまりクラックされているからこそハッシュ値が合わない)」なのかどうかは、まだ決められません。当然、Kali Linux のリポジトリは世界中のアタッカーの標的になっていると考えてよく、ハッシュ値が合わないという理由でインストールできないツールは、寧ろできないこと自体を喜ぶべきかもしれないからです。ちなみに mimikatz と wce のバイナリがダウンロードできない理由は、会社の UTM(Fortigate)がマルウェアと判定していたからでした。こういう場合に困るのは、セキュリティ監査のツールだから「危険」と判定されているのか、それともソースコードが本当に危険な挙動をするように改竄されたツールとして「危険」だと判定されているのかが区別できないということです(もちろん、基本はチェックサムの一致です)。

冒頭に戻る


※ 以下の SNS 共有ボタンは JavaScript を使っておらず、ボタンを押すまでは SNS サイトと全く通信しません。

Twitter Facebook