kali linuxとは?起動方法やインストールされているツールを紹介

kali linuxとは?起動方法やインストールされているツールを紹介

Linuxエンジニア 案件・求人一覧はこちら

kali linuxとは?

kali linuxとは、ペネトレーションテストに特化したlinuxディストリビューションです。ディストリビューションとは、「流通、配布」という意味で、ここではlinuxというOSを配布するための形態のことをいいます。linuxというOSは、単体ではとても利用しにくいものなので、利用しやすいようにさまざまなソフトウェアを組み合わせてディストリビューションという形にして配布されることもあります。kali linuxは、Debianというディストリビューションをペネトレーションテスト向けに派生させたものです。Offensive Securityというアメリカのセキュリティ会社によって開発されています。

ペネトレーションテストとは

ペネトレーションテストとは、Webアプリケーションやソフトウェアなどのシステムに対して、実際にハッキング攻撃をすることで、システムのセキュリティ上の問題を確かめることです。システムを開発して使用するにあたって、そのシステムに脆弱性があると悪用されて情報漏えいにつながったり、コンテンツを改ざんされたりするなどの事件・事故が起こり得ます。そのため、あらかじめシステムに対してペネトレーションテストをすることでセキュリティ上の問題を把握し、修正したり監視を強化したりするなどの対策を講じることで問題が起こることを未然に防げます。また、システムに対して脆弱性の有無を調べるだけでなくそれを利用して攻撃し、情報の取得や改ざんの試行まで行ないます。それによって、実際に攻撃を受けた際のインパクトを把握できます。ペネトレーションテストは、開発の工程のひとつに含めることが多くなってきました。さらに、攻撃手法は日々発展していくため、定期的に実施することが望ましいとされています。

  • システムの脆弱性の有無
  • どのような情報が漏洩する可能性があるのか
  • システムに侵入された場合どこまで深く入り込めるか

脆弱性の調査や攻撃の試行に使用できるさまざまなツールが開発されています。ペネトレーションテストでは、これらのツールを使用することで効率的に攻撃を試行できます。kali linuxでは、ペネトレーションテストを実施するための環境があらかじめ構築されており、攻撃用のツールがインストールされているため、ペネトレーションテストを容易に実施できます。

kali linuxの起動方法

kali linuxを実際に起動する方法を説明します。kali linuxはOSなので、PCやサーバーのようなコンピュータ本体またはVM(Virtual Machine)を用意する必要があります。VMとは、コンピュータの中で仮想的にコンピュータを動作させる技術です。これを利用することで、新たにコンピュータ本体を用意せずにOSをインストールし、利用できます。今回は、VMを利用してkali linuxをインストールしてみましょう。

VMのダウンロードとインストール

VM(Virtual Machine)には、さまざまな種類のソフトウェアがありますが、今回はVirtual Boxというソフトウェアを使います。Virtual Boxは、フリーのVMソフトウェアですので、無料で利用できます。下記のURLから、自分のPCのOSに合ったパッケージを選んでダウンロード・インストールしてみましょう。

kali linuxのダウンロード

kali linuxは、kali linuxの公式ホームページのダウンロードページで配布されています。

その中でも、Virtual Boxに特化したイメージが用意されているので利用するといいでしょう。下記のOffensive Securityのページにある「KALI LINUX VIRTUALBOX IMAGES」という項目でダウンロードできます。今回は、この「Kali Linux VirtualBox」(拡張子が「.ova」)を使用したインポート方法を説明します。容量が3ギガバイト前後と大きいため、ハードディスクの空き容量を確認したうえでダウンロードするようにしましょう。

kali linuxのインポートと起動

Virtual Boxでダウンロードしたkali linuxをインポートし、起動しましょう。Virtual Boxを起動すると、「Oracle VM VirtualBox マネージャー」という画面が表示されます。この画面の上でkali linuxをインポートし、起動します。

  • 「ファイル」タブ→「仮想アプライアンスのインポート」を選択します。
  • ダウンロードしたイメージ(拡張子が.ovaのもの)を選択し、「次へ」ボタンを押します。
  • 「仮想アプライアンスの設定」画面に移るので、必要に応じて設定を変更します。デフォルトで設定されたままの値でも大丈夫です。値を設定したら「インポート」ボタンを押します。
  • ソフトウェア利用許諾の同意画面が表示されるので、確認のうえ「同意する」ボタンを押します。
  • インポートが完了します。

インポートが完了したら、起動してみましょう。VirtualBoxのVM一覧には、「Kali Linux」が追加されていますので、それをダブルクリックすると起動します。少し時間がかかります。しばらくすると青い背景の画面になり、さらに待つと「Enter your username」「Enter your password」と表示され、ユーザ名とパスワードを聞かれます。ここでは、デフォルトで設定されているユーザのユーザ名とパスワードを入力し、「Log in」ボタンを押します。ユーザ名は「kali」パスワードは「kali」です。以前はデフォルトで使用するユーザはrootユーザであり、ユーザ名「root」パスワード「toor」でログインしていましたが、2020年のアップデートからデフォルトのユーザは、rootユーザではなくなっています。以前はroot権限を必要とするツールが多くあったため、rootユーザが用いられてきましたが、現在ではその必要がなくなってきたため、Linuxで推奨されないrootユーザでの利用は廃止されたようです。

kali linuxにインストールされているツール

kali linuxには、多数のツールのソフトウェアがインストールされています。ここではそのうちのいくつかを紹介します。ツールは、Kali linuxのデスクトップ画面左上のアイコンをクリックすると一覧が表示されます。

01-Information Gathering

nmap

nmapは、ポートスキャンツールです。ポートのフィンガープリント(どのようなサービスが動作しているか)機能も備えています。このツールを利用することで、サーバーのどのポートやサービスが開いているかを確認でき、セキュリティ上の問題となる不要な空きポートも把握できます。

03-Web Application Analysis

wpscan

WPScanは、ブログやコーポレートサイトの構築によく使用されるWordpressの脆弱性スキャンツールです。Wordpressは、利用しているサイトも多いことから攻撃対象にされやすいため、このようなツールを利用してセキュリティを向上させることが大切です。

kali linuxでセキュリティチェックをやってみよう

kali linuxとは何か、ダウンロード・インポート・起動方法、主なツールを紹介しました。kali linuxには、ペネトレーションテストに利用できるツールがたくさんインストールされており、それらを利用することでペネトレーションテストを効果的に実施できるでしょう。それによって、セキュリティレベルを確認し、情報漏えいなどの事故が起こらないように対策できるようになります。システムの安全性を守るために、kali linuxを有効活用していきましょう。

Linuxエンジニア 案件・求人一覧はこちら

インフラエンジニア専門の転職サイト「FEnetインフラ」

FEnetインフラはサービス開始から10年以上『エンジニアの生涯価値の向上』をミッションに掲げ、多くのエンジニアの就業を支援してきました。

転職をお考えの方は気軽にご登録・ご相談ください。

合わせて読みたい

Linuxのセキュリティ対策方法7つ!セキュリティ対策ソフトを入れよう... hbspt.cta.load(20723875, '0f72735d-da9f-4038-a47b-134730f22cb0', {"useNewLoader":"true","region":"na1"}); セキュリティ対策すべき「マルウェア」とは? マルウェアとは、コンピューターや...
サーバーエンジニアが職場で使うLinuxディストリビューションの紹介2【Debian】... 前回はUbuntuに関して紹介をしましたが、サーバーエンジニアが使うLinux ディストリビューションの1つにDebian(デビアン)というものもあります。 ここではDebianについて簡単に紹介し、Linuxにおけるシェアも述べていきます。 hbspt.cta.load(20723875, ...
Linuxのスケジューラーとは|Linuxのスケジューラーで便利な2つの機能... hbspt.cta.load(20723875, '0f72735d-da9f-4038-a47b-134730f22cb0', {"useNewLoader":"true","region":"na1"}); Linuxとは Linuxとはコンピューターの中に入っているOS(オペレーシ...
LinuxとWindowsの11個の違いとは?メリット・デメリットも紹介... hbspt.cta.load(20723875, '0f72735d-da9f-4038-a47b-134730f22cb0', {"useNewLoader":"true","region":"na1"}); hbspt.cta.load(20723875, '612df674-d445-...
サーバーエンジニアが意識すべきLinuxのセキュリティ【ウイルス対策】... サーバーエンジニアにとってウイルス対策は必要なものですが、「Linuxだから大丈夫」と対策を疎かにしてしまう人もいるかもしれません。 はたしてLinuxはウイルスに感染しないのでしょうか。 そして、Linuxのウイルス対策にはどのような方法があるのでしょうか。 hbspt.cta.load(...