0Pricing
Cyber Security Academy · レッスン

Nmapによるポートスキャン技法

SYN、TCP connect、UDP、バージョンスキャンを実行し、Nmapの出力を読み、タイミングを調整して検知を回避します。

「Nmapによるポートスキャン技法」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン1/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。

ポートスキャンが重要な理由

ポートスキャンを行うと、対象でどのサービスが稼働しているかを明らかにできます。開いているポートはすべて潜在的な侵入口です。何が公開されているかを把握することは、攻撃側と防御側のどちらにとっても最初の一歩です。

TCP SYNスキャン(ステルススキャン)

SYNスキャン(-sS)はSYNパケットを送信し、ハンドシェイクを完了させずにSYN-ACKを待ちます。高速で、ログに記録される可能性が比較的低く、root権限が必要です。

# SYN scan (requires root)
sudo nmap -sS 192.168.1.0/24

# Results: open / closed / filtered

TCPコネクトスキャン

コネクトスキャン(-sT)は、3ウェイハンドシェイクを完全に実行します。root権限は必要ありませんが、通信量が多く、アプリケーションログに記録される可能性が高くなります。

nmap -sT 192.168.1.100

# Useful when you lack raw socket privileges

UDPスキャン

UDPサービス(DNS、SNMP、DHCP)は見落とされがちです。-sUはUDPポートをプローブします。応答の有無によって、open|filteredかclosedかを判断します。低速なため、対象ポートを指定してください。

sudo nmap -sU -p 53,161,67,123 192.168.1.100

# SNMP (161) and DNS (53) are common UDP targets

バージョン検出

-sVは、開いているポートにプローブを送信して、稼働中のサービスとバージョンを特定します。バージョン情報は、CVEデータベースとの照合に不可欠です。

sudo nmap -sV 192.168.1.100

# Output:
# 22/tcp  open  ssh     OpenSSH 8.9p1
# 80/tcp  open  http    Apache httpd 2.4.52

タイミングテンプレート

Nmapのタイミング(-T0~-T5)は、速度とステルス性のバランスを制御します。-T3がデフォルト、-T4はより高速、-T1は非常に低速で回避に適しています。

sudo nmap -sS -T4 192.168.1.0/24   # faster
sudo nmap -sS -T1 10.0.0.1          # slow/stealthy

# Aggressive timing increases detection risk

ポート範囲の指定

デフォルトでは、Nmapは上位1000個のポートをスキャンします。特定の範囲には-p、65535個すべてのポートには-p-、最も一般的なポートをN個指定するには--top-portsを使用します。

nmap -p 22,80,443 192.168.1.100
nmap -p 1-1024 192.168.1.100
nmap -p- 192.168.1.100              # all ports
nmap --top-ports 100 192.168.1.100

出力形式

-oN(通常形式)、-oX(ツールへのインポート用XML)、-oG(grep可能形式)、または3つすべてを同時に出力する-oAを使用して結果を保存できます。

sudo nmap -sV -oA scan_results 192.168.1.0/24

# Creates:
# scan_results.nmap
# scan_results.xml
# scan_results.gnmap

複数の対象のスキャン

Nmapは、IP範囲、CIDRブロック、ホスト名、入力ファイルを受け付けます。除外リストと組み合わせて、機密性の高いホストをスキップできます。

nmap 192.168.1.1 192.168.1.50
nmap 192.168.1.1-100
nmap -iL targets.txt
nmap 192.168.1.0/24 --exclude 192.168.1.1

ファイアウォール回避の基礎

フラグメント化したパケット(-f)、デコイ(-D)、送信元ポートの偽装(--source-port)は、許可されたテストにおいて、基本的なファイアウォールルールの回避に役立つ場合があります。

sudo nmap -f 192.168.1.100          # fragment packets
sudo nmap -D RND:10 192.168.1.100   # decoys
sudo nmap --source-port 53 192.168.1.100

Nmapの出力を読む

Nmapは各ポートをopen、closed、またはfilteredとして報告します。openはサービスがプローブを受け付けたこと、filteredはファイアウォールがブロックしていること、closedは待ち受けているサービスがないことを意味します。

クイックチェック

SYN(ステルス)スキャンを実行するNmapのフラグはどれですか。

まとめ:Nmapポートスキャン

Nmapを使いこなすには、許可の範囲と検知されることへの許容度に応じて、適切なスキャン種別を選ぶ必要があります。高速かつステルス性を重視する場合はSYN、root権限がない場合はコネクト、見落とされがちなサービスにはUDP、CVEを調査できる対象リストの作成にはバージョン検出を使用します。必ず出力を保存してください。

よくある質問

「Nmapによるポートスキャン技法」レッスンは無料ですか?

はい。「Nmapによるポートスキャン技法」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。

「Nmapによるポートスキャン技法」で何を学びますか?

SYN、TCP connect、UDP、バージョンスキャンを実行し、Nmapの出力を読み、タイミングを調整して検知を回避します。 ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

Cyber Security Academyを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン1/4です。

「Nmapによるポートスキャン技法」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このCyber Security Academyレッスンでコードを書いて実行できますか?

はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. Nmapによるポートスキャン技法
  2. サービスとOSのフィンガープリンティング
  3. Netcat:ネットワークの万能ツール
  4. ネットワーク列挙のスクリプト作成
← Cyber Security Academyに戻る