はじめに
サイバーセキュリティの分野では、組織のセキュリティ態勢を理解するために、効果的なネットワーク調査を行うことが重要です。強力なオープンソースのネットワークスキャンツールである Nmap は、このプロセスにおいて貴重なツールとなります。しかし、検知を回避し、奇襲性を維持するためには、ステルススキャン技術を使うことが不可欠です。このチュートリアルでは、ステルス的な Nmap スキャンを実行する手順を案内し、警報を発することなくサイバーセキュリティ評価を効果的に進める方法を学びます。
Nmap とネットワークスキャンの紹介
Nmap とは?
Nmap (Network Mapper) は、ネットワークの探索とセキュリティ監査に使用される強力で汎用性の高いオープンソースツールです。ネットワーク管理者、セキュリティ専門家、エシカルハッカーによって広く使用され、ネットワーク上のホスト、サービス、脆弱性に関する情報を収集します。
ネットワークスキャンの基本
ネットワークスキャンは、ネットワーク上のアクティブなデバイス、開いているポート、および実行中のサービスを特定するプロセスです。Nmap はこれを達成するためのさまざまなスキャン技術を提供しており、以下のようなものがあります。
- TCP Connect スキャン: 完全な TCP 3 ウェイハンドシェイクを実行して、ポートが開いているかどうかを判断します。
- SYN スキャン: SYN パケットを送信し、SYN - ACK 応答を待って、ポートが開いているかどうかを判断します。
- UDP スキャン: UDP パケットを送信して、ポートが開いており、UDP トラフィックを待ち受けているかどうかを判断します。
- アイドル/ゾンビ スキャン: アイドル状態または「ゾンビ」ホストを使用してスキャンを実行するため、よりステルス的です。
Nmap のスキャンモード
Nmap は、さまざまなユースケースに合わせたいくつかのスキャンモードを提供しています。
- 基本スキャン: 最も一般的な 1000 個のポートに対して TCP connect スキャンを実行します。
- インテンススキャン: すべての 65,535 個の TCP ポートをスキャンし、バージョン検出を行います。
- ステルススキャン: SYN スキャンなどの技術を使用して、ファイアウォールや IDS/IPS に検知されないようにします。
- 包括的スキャン: さまざまなスキャン技術を組み合わせて、できるだけ多くの情報を収集します。
## Example: Basic Nmap Scan
nmap -sC -sV -oA basic_scan 192.168.1.1/24
上記のコマンドは、192.168.1.0/24 ネットワークに対して基本的な TCP connect スキャンを実行します。これにはバージョン検出 (-sV) とデフォルトの Nmap スクリプト (-sC) が含まれ、出力は「basic_scan」ファイルに保存されます。
ステルス的な Nmap スキャン技術
低速スキャン
Nmap は、スキャンプロセスを低速化し、セキュリティシステムに検知されないようにするためのさまざまなオプションを提供しています。
- タイミングオプション:
-T<0 - 5>オプションを使用してタイミングテンプレートを設定します。0 が最も遅く、5 が最も速い設定です。 - 遅延オプション:
-sS --max - rate <packets_per_second>または-sS --max - parallelism <number_of_threads>オプションを使用して、スキャン速度を制御します。
## Example: Slow TCP SYN Scan
nmap -sS -T2 --max-rate 10 -p- 192.168.1.1
断片化パケット
Nmap は、パケットを小さな断片に分割することで、大きなパケットを検知するように設定されたファイアウォールや IDS/IPS を迂回することができます。
- IP 断片化:
-fまたは--fragmentオプションを使用して、パケットを小さな断片に分割します。 - MTU 削減:
--mtu <size>オプションを使用して、パケット断片化のためのカスタム最大転送単位 (MTU: Maximum Transmission Unit) サイズを設定します。
## Example: Fragmented TCP SYN Scan
nmap -sS -f -p- 192.168.1.1
アイドル/ゾンビ スキャン
Nmap のアイドル/ゾンビ スキャン技術は、「アイドル」または「ゾンビ」ホストを使用してスキャンを実行し、スキャンがアイドルホストから来ているように見せます。
- 適切なゾンビの特定: 古いまたは未使用のシステムなど、監視が少ない可能性のあるホストを見つけます。
- ゾンビを介したスキャン:
-sI <zombie_host:source_port>オプションを使用して、ゾンビホストを介してスキャンを実行します。
## Example: Idle/Zombie Scan
nmap -sI zombie_host:1234 192.168.1.1
デコイスキャン
Nmap は、複数の送信元 IP アドレスからスキャンを実行することで、スキャンが異なるホストから来ているように見せることができます。
- デコイホストの使用:
-D RND:10オプションを使用して、スキャンに 10 個のランダムなデコイホストを含めます。 - 送信元 IP の偽装:
-S <source_ip>オプションを使用して、送信元 IP アドレスを偽装します。
## Example: Decoy Scan
nmap -D RND:10 -S 192.168.1.100 192.168.1.1
サイバーセキュリティ評価における検知回避
脅威状況の理解
サイバーセキュリティ評価において、脅威状況と攻撃者が検知を回避するために使用する技術を理解することは重要です。これには以下が含まれます。
- 監視とロギング: ファイアウォール、IDS/IPS、SIEM などの対象組織のセキュリティシステムがネットワーク活動をどのように監視およびロギングするかを理解します。
- 脅威インテリジェンス: 脅威アクターが使用する最新の攻撃トレンド、技術、および攻撃指標 (IoC: Indicators of Compromise) について最新情報を把握します。
ステルス技術の実装
先に説明した Nmap スキャン技術を活用することで、サイバーセキュリティ評価中に検知を回避するためのさまざまな戦略を実装できます。
- 低速でステルス的なスキャン: タイミングと遅延オプションを使用してスキャンプロセスを低速化し、セキュリティアラートを引き起こすリスクを低減します。
- 断片化パケット: パケットを小さな断片に分割して、大きなパケットを検知するように設定されたセキュリティシステムを迂回します。
- アイドル/ゾンビ スキャン: 「アイドル」または「ゾンビ」ホストを使用してスキャンを実行し、スキャンが疑わしさの少ないソースから来ているように見せます。
- デコイスキャン: 複数の送信元 IP アドレスからスキャンを実行し、スキャンが異なるホストから来ているように見せます。
## Example: Comprehensive Stealthy Scan
nmap -sS -T2 --max-rate 10 -f -D RND:10 -S 192.168.1.100 192.168.1.1
上記のコマンドは、低速 TCP SYN スキャン、パケット断片化、およびデコイスキャンなどのいくつかのステルス技術を組み合わせて、サイバーセキュリティ評価中の検知の可能性を最小限に抑えます。
倫理的な考慮事項
ステルス的な Nmap スキャンを実行する際には、倫理的および法的な影響を考慮することが重要です。ネットワークスキャン活動を行う前に必ず必要な許可と承認を取得し、自分の行動が評価の範囲内であり、組織のポリシーおよび適用される法律に準拠していることを確認してください。
まとめ
このサイバーセキュリティチュートリアルでは、ステルス的な Nmap スキャンを実行し、サイバーセキュリティ評価中に検知を回避するための知識と技術を提供しました。高度なスキャン方法を活用し、ステルスの重要性を理解することで、目立たずに貴重なネットワーク情報を収集することができます。サイバーセキュリティの世界では、検知されずに調査を行う能力は、組織のセキュリティとレジリエンスを確保する上で強力な武器となります。



