はじめに
この実験では、強力なネットワークスキャンおよびセキュリティ監査ツールである Nmap の基本機能を学びます。Nmap をインストールし、それを使用してローカルマシン上のオープンポート(開放されているポート)を検出します。
さらに、検出されたオープンポートで稼働しているサービスに関する詳細な情報を収集し、ネットワークセキュリティとスキャン技術に関する理解を深めます。
Nmap のインストールとポートスキャン
ネットワークスキャンの探索を始める前に、これがサイバーセキュリティにおいて極めて重要な技術であることを理解しておく必要があります。スキャンを行うことで、ネットワーク上でどのようなサービスが稼働し、どのポートが開いているかを知ることができます。ポートはネットワークにおける「ドア」のようなもので、さまざまな種類のデータがシステムに出入りすることを可能にします。例えば、Web サーバーは通常、HTTP トラフィックのためにポート 80 を使用します。
ネットワークスキャンを実行するには、適切なツールが必要です。今回は、世界中で広く利用されている強力なネットワーク探索・セキュリティ監査ツールである Nmap を使用します。Nmap を使えば、オープンポートやその背後で動いているサービスを特定できます。まずシステムに Nmap をインストールし、次にローカルマシンに対して基本的なスキャンを実行します。これにより、どのようなサービスが稼働し、潜在的に外部にさらされているかを把握できます。これはセキュリティリスクを特定する上で非常に重要です。
タスク
- Ubuntu Linux システムに Nmap をインストールする
- 最初のステップはツールの準備です。Ubuntu は人気のある Linux ディストリビューションであり、
aptというパッケージマネージャーを使って簡単にソフトウェアをインストールできます。Nmap を導入することで、ネットワークスキャンを開始する準備が整います。
- 最初のステップはツールの準備です。Ubuntu は人気のある Linux ディストリビューションであり、
- ローカルホスト(127.0.0.1)の 1 番から 10000 番の範囲でオープンポートをスキャンする
- ローカルホストのアドレス
127.0.0.1は自分自身のマシンを指します。このアドレスをスキャンすることで、自システムで稼働しているサービスを確認できます。多くの一般的なサービスはこの範囲内のポートを使用するため、1 から 10000 までを対象とします。例えば、SSH は通常 22 番、FTP は 20 番や 21 番を使用します。
- ローカルホストのアドレス
- 検出されたすべてのオープンポートに対してバージョンスキャンを実行し、稼働中のサービスの詳細情報を取得する
- オープンポートを見つけたら、バージョンスキャン(Version Scan)を行って詳細を調べます。サービスのバージョンを知ることは非常に重要です。なぜなら、その特定のバージョンに既知の脆弱性が存在するかどうかを判断する手がかりになるからです。
要件
- すべてのコマンドは
/home/labex/projectディレクトリ内で zsh シェルを使用して実行すること- 作業場所は
/home/labex/projectです。zsh シェルは、他のシェルと比較してユーザーフレンドリーで機能豊富なコマンドライン環境を提供します。
- 作業場所は
- Nmap のインストールには Ubuntu のパッケージマネージャー(apt)を使用すること
- Ubuntu の
aptは信頼性の高いインストール手段です。Nmap に必要なファイルや依存関係のダウンロードを自動的に処理します。
- Ubuntu の
- 最初のポートスキャンでは、Nmap のポート範囲指定機能を使用すること
- Nmap にはスキャンするポートの範囲を指定する機能があります。すべてのポートをスキャンすると時間がかかるため、1 から 10000 に絞り込むことで効率的に調査を行います。
- 検出されたサービスの詳細情報を取得するために、Nmap のバージョン検出機能を使用すること
- バージョン検出機能は、オープンポートに対して特殊なプローブを送信し、サービス名とそのバージョンを特定します。この情報はセキュリティ分析に不可欠です。
- 検出されたサービスのポート番号、サービス名、およびバージョン情報を記録すること
- 発見した内容を記録しておくことで、後の分析(サービスが最新かどうか、セキュリティ上の欠陥がないかなどの確認)に役立てることができます。
例
タスク完了後、以下のような質問に答えられるようになっているはずです:
- 指定した範囲内でいくつのオープンポートが見つかりましたか?
- この質問は、ローカルシステムのセキュリティ状態を把握するのに役立ちます。オープンポートが多いほど、攻撃対象領域(アタックサーフェス)が広いことを意味します。
- 見つかったオープンポートの番号は何番ですか?
- ポート番号を知ることは、どのようなサービスが動いているかを理解するための第一歩です。
- そのポートでどのような種類のサービスが稼働していますか?
- サービスを特定することで、それがシステムにとって必要不可欠なものか、また安全に設定されているかを判断できます。
適切な Nmap コマンドを使用して、必要な詳細情報をすべて収集してください。
まとめ
この実験では、Nmap のインストール方法と、それを利用してローカルマシン上で稼働しているサービスを検出・分析する方法を学びました。この実践的な体験を通じて、ネットワーク探索とサービス検出における Nmap 活用の基本ステップを理解できたはずです。
パッケージのインストールから、基本的なポートスキャン、そしてバージョン検出までの一連の流れは、ネットワークスキャン技術を理解するための強固な基礎となります。



