nmap チートシート

cheatsheetサイバーセキュリティセキュリティ

目的別 Nmap コマンドリファレンス

🎯 ターゲット指定

スキャン対象を指定する方法です。

  • 単一IPアドレス:

    nmap 192.168.1.1
  • ホスト名:

    nmap scanme.nmap.org
  • 複数IPアドレス/ホスト名 (スペース区切り):

    nmap 192.168.1.1 scanme.nmap.org 192.168.2.10
  • CIDR表記 (サブネット全体):

    nmap 192.168.1.0/24
  • IPアドレス範囲 (ハイフン):

    nmap 192.168.1.1-100

    最後のオクテットだけでなく、他のオクテットにも範囲指定が可能です。

    nmap 192.168.1-3.1,5,10
  • ファイルからの読み込み: ターゲットリストをファイルに記述し、それを読み込みます。

    nmap -iL targets.txt

    targets.txt にはIPアドレス、ホスト名、CIDR表記などを1行に1つずつ記述します。

  • ランダムなホストを選択 (テスト用): 指定した数だけランダムにホストを選んでスキャンします。

    nmap -iR 10

    上記は10ホストをランダムに選びます。

  • 特定のターゲットを除外: --exclude オプションで除外するターゲットを指定します。

    nmap 192.168.1.0/24 --exclude 192.168.1.5,192.168.1.100-120
  • ファイルから除外ターゲットを読み込み:

    nmap 192.168.1.0/24 --excludefile exclude_targets.txt

🔍 ホスト発見 (Pingスキャン)

ポートスキャンを行わず、どのホストがオンラインかを特定します。

  • リストスキャン (-sL): ポートスキャンを行わず、ターゲットのリストを表示します。DNS解決も行います。

    nmap -sL 192.168.1.0/24
  • Pingスキャン (-sn または -sP): ポートスキャンを無効にし、ホスト発見のみを行います。デフォルトではICMP Echo Request, TCP SYN to port 443, TCP ACK to port 80, ICMP Timestamp Request を送信します。

    nmap -sn 192.168.1.0/24
  • DNS解決を行わない (-n): ホスト発見時にDNSの逆引きを行いません。スキャン速度が向上することがあります。

    nmap -sn -n 192.168.1.0/24
  • 常にDNS解決を行う (-R): オフラインに見えるホストに対してもDNS解決を試みます。

    nmap -sn -R 192.168.1.0/24
  • 特定のPing Probeを使用する:

    • ICMP Echo Request (-PE): 標準的なPingです。
    • nmap -sn -PE 192.168.1.0/24
    • ICMP Timestamp Request (-PP): タイムスタンプ要求を送ります。
    • nmap -sn -PP 192.168.1.0/24
    • ICMP Address Mask Request (-PM): アドレスマスク要求を送ります (古い手法)。
    • nmap -sn -PM 192.168.1.0/24
    • TCP SYN Ping (-PS[portlist]): 指定したポートにSYNパケットを送信します。応答があればホストはオンラインです。デフォルトはポート80です。
    • nmap -sn -PS80,443,8080 192.168.1.0/24
    • TCP ACK Ping (-PA[portlist]): 指定したポートにACKパケットを送信します。ファイアウォールによってはSYNより検知されにくい場合があります。デフォルトはポート80です。
    • nmap -sn -PA80,22 192.168.1.0/24
    • UDP Ping (-PU[portlist]): 指定したポートに空のUDPパケットを送信します。応答がないか、ICMP Port Unreachableが返ってくればホストはオンラインの可能性があります。デフォルトはポート40125です。
    • nmap -sn -PU53,161 192.168.1.0/24
    • SCTP INIT Ping (-PY[portlist]): SCTP INITチャンクを送信します。デフォルトはポート80です。
    • nmap -sn -PY80 192.168.1.0/24
    • ARP Ping (-PR): ローカルネットワーク (同一サブネット) でのみ有効です。ARPリクエストを送信してホストを発見します。非常に高速で信頼性があります。
    • nmap -sn -PR 192.168.1.0/24
  • Pingしない (-Pn または -P0): ホスト発見を行わず、指定したすべてのIPアドレスがオンラインであると仮定してポートスキャンを開始します。ファイアウォールがPingをブロックしている場合に有効ですが、オフラインホストにも時間を費やすことになります。

    nmap -Pn 192.168.1.10

🚪 ポートスキャン技法

ターゲットホストのどのポートが開いているか、閉じているか、フィルタリングされているかを特定します。

  • TCP SYN スキャン (-sS): デフォルトのスキャン方法 (root/Administrator権限が必要)。「ハーフオープン」スキャンとも呼ばれます。SYNパケットを送信し、SYN/ACKが返ってくればオープン、RSTが返ってくればクローズと判断します。完全なTCP接続を確立しないため、比較的隠密性が高く高速です。

    sudo nmap -sS 192.168.1.1
  • TCP Connect スキャン (-sT): root/Administrator権限がない場合のデフォルト。OSのconnect()システムコールを使用し、完全なTCP接続を試みます。接続が成功すればオープン、失敗すればクローズと判断します。ログに残りやすく、-sSより低速です。

    nmap -sT 192.168.1.1
  • UDP スキャン (-sU): UDPポートの状態をスキャンします。UDPはコネクションレスのため、応答がない場合が多く、オープンかフィルタリングされているかの判断が難しいことがあります。特定のUDPペイロードを送信し、ICMP Port Unreachableが返ってくればクローズ、応答があればオープン、応答がなければ open|filtered となります。非常に時間がかかることがあります。

    sudo nmap -sU 192.168.1.1

    特定のポートに対してUDPスキャンを行う方が効率的です。

    sudo nmap -sU -p 53,161,111 192.168.1.1
  • TCP Null スキャン (-sN): TCPフラグが何もセットされていないパケットを送信します。RFCに準拠したシステムでは、ポートが閉じている場合にRSTを返します。オープンまたはフィルタリングされているポートは応答しません。

    sudo nmap -sN 192.168.1.1
  • TCP FIN スキャン (-sF): FINフラグのみがセットされたパケットを送信します。Nullスキャンと同様に、閉じているポートはRSTを返し、オープンまたはフィルタリングされているポートは応答しません。

    sudo nmap -sF 192.168.1.1
  • TCP Xmas スキャン (-sX): FIN, PSH, URGフラグがセットされたパケット (クリスマスツリーのように見えることから) を送信します。Null, FINスキャンと同様の応答を期待します。

    sudo nmap -sX 192.168.1.1

    ⚠️ Null, FIN, Xmas スキャンは、Microsoft WindowsなどRFCに完全準拠していないOSでは正しく機能しません (すべてのポートが閉じているように見えることがあります)。

  • TCP ACK スキャン (-sA): ACKフラグがセットされたパケットを送信します。ポートが開いているか閉じているかを判断することはできませんが、ファイアウォールのルールセットを調査し、ポートがフィルタリングされているか (RST応答なし)、されていないか (RST応答あり) を判断するのに役立ちます。

    sudo nmap -sA 192.168.1.1
  • TCP Window スキャン (-sW): ACKスキャンに似ていますが、特定のシステムでは受信したRSTパケットのTCPウィンドウサイズによって、ポートがオープンかクローズかを判別できる場合があります。

    sudo nmap -sW 192.168.1.1
  • TCP Maimon スキャン (-sM): FIN/ACKフラグがセットされたパケットを送信します。多くのシステムではFINやXmasスキャンと同様に、閉じているポートからRSTが返されます。

    sudo nmap -sM 192.168.1.1
  • SCTP INIT スキャン (-sY): SCTPポートの状態をスキャンします。SCTP INITチャンクを送信し、INIT-ACKが返ればオープン、ABORTが返ればクローズ、応答がなければ open|filtered となります。

    sudo nmap -sY 192.168.1.1
  • SCTP COOKIE ECHO スキャン (-sZ): より隠密性の高いSCTPスキャン。ステートフルファイアウォールを通過できる可能性がありますが、オープンとクローズの区別はできません。

    sudo nmap -sZ 192.168.1.1
  • アイドルスキャン (-sI <zombie host>[:<probeport>]): 完全に匿名なスキャン方法。指定した「ゾンビ」ホストを経由してスキャンを行います。設定が複雑で、適切なゾンビホストを見つける必要があります。

    sudo nmap -Pn -sI zombie.example.com target.example.com
  • カスタムTCPスキャン (–scanflags): TCPフラグを任意に指定してスキャンします。

    sudo nmap --scanflags URGACKPSHRSTSYNFIN 192.168.1.1

ポート指定とスキャン順序

  • 特定のポートを指定 (-p): カンマ区切り、ハイフンで範囲指定が可能です。

    nmap -p 80,443,8080 192.168.1.1
    nmap -p 1-1024 192.168.1.1
    nmap -p T:80,443,U:53,161 192.168.1.1 # プロトコル指定 (TCP/UDP/SCTP)
    nmap -p http,https,snmp 192.168.1.1 # サービス名で指定 (/etc/services)
  • 全ポートをスキャン (-p-): ポート1から65535まで全てをスキャンします。非常に時間がかかります。

    nmap -p- 192.168.1.1
  • 高速スキャン (-F): Nmapに含まれる `nmap-services` ファイルにリストされたポート(通常、最も一般的な100ポート)のみをスキャンします。デフォルトスキャン (上位1000ポート) より高速です。

    nmap -F 192.168.1.1
  • 上位Nポートをスキャン (–top-ports <number>): 利用頻度の高い上位N個のポートをスキャンします。

    nmap --top-ports 20 192.168.1.1
  • ポート比率に基づいてスキャン (–port-ratio <ratio>): 0.0から1.0の間の比率を指定し、その比率以上の頻度でオープンしているポートをスキャンします。

    nmap --port-ratio 0.1 192.168.1.1 # 10%以上の確率でオープンしているポート
  • 順次ポートスキャン (-r): デフォルトではNmapはポートをランダムな順序でスキャンしますが、このオプションを指定すると1から順にスキャンします。

    nmap -r -p 1-100 192.168.1.1

💻 OS・サービス・バージョン検出

開いているポートで動作しているサービスやOSの情報を特定します。

  • サービスとバージョン検出 (-sV): 開いているポートに接続し、バナー情報やプローブへの応答からサービス名とバージョンを特定しようとします。ポート番号だけでは分からない情報を得られます (例: 80番ポートでSSHが動いている可能性)。

    nmap -sV 192.168.1.1
  • バージョンスキャン強度 (–version-intensity <0-9>): バージョン検出の強度を調整します。高いほど多くのプローブを試しますが、時間がかかります。デフォルトは7です。軽いスキャンなら --version-light (強度2)、全て試すなら --version-all (強度9) も使えます。

    nmap -sV --version-intensity 9 192.168.1.1
    nmap -sV --version-light 192.168.1.1
  • OS検出 (-O): TCP/IPスタックのフィンガープリントを分析し、ターゲットOSを推測します。最低1つのオープンポートと1つのクローズポートが必要です。結果は推測であり、確実ではありません。

    sudo nmap -O 192.168.1.1
  • OS検出を積極的に (–osscan-guess): NmapがOSを特定できない場合に、より積極的に推測を試みます。

    sudo nmap -O --osscan-guess 192.168.1.1
  • OSとバージョンの同時検出 (-A): OS検出 (-O), バージョン検出 (-sV), スクリプトスキャン (-sC), トレースルート (–traceroute) を同時に有効にします。便利ですが、非常に時間がかかり、侵入的です。

    sudo nmap -A 192.168.1.1
  • RPCスキャン (-sR): バージョン検出 (-sV) と共に使用され、開いているTCP/UDPポートに対してSunRPCプログラムのバージョンを問い合わせます。

    nmap -sV -sR 192.168.1.1

📜 スクリプトスキャン (NSE – Nmap Scripting Engine)

Luaで書かれたスクリプトを実行し、より高度な情報収集や脆弱性診断を行います。

  • デフォルトスクリプトの実行 (-sC): default カテゴリに属する基本的なスクリプトを実行します。-sV と併用されることが多いです。

    nmap -sC 192.168.1.1

    これは --script=default と同等です。

  • 特定のスクリプトを実行 (–script <filename>|<category>|<directory>|<expression>[,…]):

    • ファイル名指定:
    • nmap --script http-title 192.168.1.1
    • カテゴリ指定 (例: vuln, discovery, auth, safe, intrusive, malware, dos):
    • nmap --script vuln 192.168.1.1 # 脆弱性関連スクリプト
      nmap --script discovery,safe 192.168.1.1 # discoveryとsafeカテゴリ
    • ディレクトリ指定:
    • nmap --script /path/to/my/scripts/ 192.168.1.1
    • 式 (and, or, not を使用):
    • nmap --script "not intrusive" 192.168.1.1 # intrusive以外
      nmap --script "(default or safe) and not intrusive" 192.168.1.1
    • ワイルドカード:
    • nmap --script "http-*" 192.168.1.1 # http-で始まるスクリプト
  • スクリプトに引数を渡す (–script-args <n1=v1,[n2=v2,…]>): スクリプト固有のパラメータを指定します。

    nmap -p 80 --script http-put --script-args http-put.url='/test/put.html',http-put.file='/tmp/test.txt' 192.168.1.1

    引数をファイルから読み込むことも可能です: --script-args-file=filename

  • スクリプトのヘルプ表示 (–script-help <script-name>): スクリプトの説明や引数を表示します。

    nmap --script-help smb-os-discovery
  • スクリプトトレース (–script-trace): スクリプトの送受信データを表示します (デバッグ用)。

    nmap --script http-title --script-trace 192.168.1.1
  • スクリプトDBの更新 (–script-updatedb): Nmapのスクリプトデータベースを更新します。

    sudo nmap --script-updatedb
  • いくつかの便利なスクリプト例:

    • http-title: Webページのタイトルを取得します。
    • smb-os-discovery: SMB経由でOS情報を取得します。
    • dns-zone-transfer: DNSゾーン転送を試みます。
    • ssh-auth-methods: SSHサーバがサポートする認証方式を調べます。
    • ssl-enum-ciphers: SSL/TLSサーバの暗号スイートを列挙します。
    • ftp-anon: FTP匿名ログインを試みます。
    • vulners: Vulnersデータベースに基づいて脆弱性を検索します。
    • nmap -sV --script vulners 192.168.1.1
    • smb-vuln-*: SMB関連の既知の脆弱性をチェックするスクリプト群 (例: smb-vuln-ms17-010)。
    • nmap -p 445 --script smb-vuln-ms17-010 192.168.1.1

🛡️ ファイアウォール/IDS回避とスプーフィング

検出を避けたり、ファイアウォールルールを回避したりするためのテクニックです。

  • パケットフラグメンテーション (-f): IPヘッダを小さなフラグメントに分割して送信します。一部のパケットフィルタは、全てのフラグメントをキューイングできないため、通過できる場合があります。-f を追加するとさらに小さなフラグメントになります (-ff)。MTU指定も可能です: --mtu <value> (8の倍数)。

    sudo nmap -f 192.168.1.1
    sudo nmap --mtu 16 192.168.1.1
  • デコイ (-D <decoy1>[,decoy2][,ME],…): スキャンパケットに偽の送信元IPアドレス(デコイ)を混ぜて送信します。ME は自身の実際のIPアドレスの位置を示します。ランダムなIPアドレスを使う場合は RND を指定します (-D RND:10,ME)。これにより、ログ上での真の送信元の特定が困難になります。

    sudo nmap -D 10.0.0.1,10.0.0.2,ME,10.0.0.4 192.168.1.1
    sudo nmap -D RND:5,ME 192.168.1.1
  • 送信元IPアドレスの偽装 (-S <IP_Address>): 送信元IPアドレスを指定したアドレスに偽装します。通常、応答は偽装したIPアドレスに送られるため、結果を受け取ることはできませんが、特定の状況(同一セグメント内など)や他のテクニック(アイドルスキャンなど)と組み合わせる際に使用されます。

    sudo nmap -e eth0 -S 192.168.1.100 192.168.1.1

    -e <interface> で使用するネットワークインターフェースを指定する必要がある場合があります。

  • 送信元ポートの指定 (–source-port <portnumber> または -g <portnumber>): 送信するパケットの送信元ポート番号を指定します。一部のファイアウォールは、特定の送信元ポート(例: 53 (DNS), 20 (FTP data))からのトラフィックを信頼している場合があります。

    sudo nmap --source-port 53 192.168.1.1
  • 固定長データの追加 (–data-length <number>): 送信するパケットにランダムなデータを追加して指定した長さにします。通常のNmapプローブとは異なるサイズにすることで、検出を回避できる可能性があります。

    sudo nmap --data-length 25 192.168.1.1
  • IPオプション (–ip-options): IPヘッダにオプションを追加します (例: Loose/Strict Source Routing, Record Route)。デバッグや、古いネットワーク機器のテストに役立つことがありますが、現代のネットワークではブロックされることが多いです。

    # Loose source route (経由するルータを指定)
    sudo nmap --ip-options "L 10.0.0.1 10.0.0.2" 192.168.1.1
    # Record route (通過ルータのIPを記録)
    sudo nmap --ip-options R 192.168.1.1
  • TTL (Time-To-Live) の指定 (–ttl <value>): 送信するパケットのTTL値を設定します。短いTTLを設定することで、近くのホストのみをスキャンするなどの使い方ができます。

    nmap --ttl 64 192.168.1.1
  • MACアドレスの偽装 (–spoof-mac <mac address|0|vendor name>): 送信するイーサネットフレームの送信元MACアドレスを偽装します。0 を指定するとランダムなMACアドレスが生成されます。ベンダー名を指定すると、そのベンダーのOUIを持つランダムなMACアドレスが生成されます (例: Apple, Dell)。

    sudo nmap -sn -PR --spoof-mac 0 192.168.1.0/24
    sudo nmap -sn -PR --spoof-mac Apple 192.168.1.0/24

    ARPスキャン (-PR) など、イーサネットレベルで動作するスキャンと組み合わせる必要があります。

  • Bad checksum (–badsum): TCP/UDP/SCTP チェックサムが不正なパケットを送信します。一部のファイアウォールはチェックサムを検証しない場合があり、そのようなシステムに対する検出回避として機能する可能性があります。OSによってはカーネルレベルでチェックサム修正が行われるため、必ずしも機能するとは限りません。

    sudo nmap --badsum 192.168.1.1

⏱️ タイミングとパフォーマンス

スキャンの速度と隠密性のバランスを調整します。

オプション レベル 説明 用途
-T0 Paranoid (偏執的) 非常に低速。シリアル化され、プローブ間に5分間の待機時間。 IDS回避に最大限配慮する場合。非常に時間がかかる。
-T1 Sneaky (卑劣) 低速。シリアル化され、プローブ間に15秒間の待機時間。 IDS回避。T0よりは現実的な速度。
-T2 Polite (丁寧) 低速化し、リソース消費を抑える。プローブ間に0.4秒間の待機時間。 帯域幅やターゲットホストのリソースに配慮する場合。
-T3 Normal (通常) デフォルト。速度とリソース消費のバランスが良い。並列実行。 一般的なスキャン。
-T4 Aggressive (積極的) 高速化。タイムアウト時間を短縮し、再送回数を増やす。高速で安定したネットワーク向け。 高速なスキャンが必要で、ネットワークが安定している場合。ターゲットに負荷がかかる可能性。
-T5 Insane (狂気的) 非常に高速。タイムアウトを極端に短縮。パケットロスが多いネットワークや低速なホストでは精度が落ちる。 最大限の速度が必要で、ネットワークとターゲットが非常に高速な場合。非推奨。
  • 最小パケット送信レート (–min-rate <number>): 1秒あたりの最小送信パケット数を指定します。

    nmap --min-rate 100 192.168.1.1
  • 最大パケット送信レート (–max-rate <number>): 1秒あたりの最大送信パケット数を指定します。

    nmap --max-rate 50 192.168.1.1
  • 最小並列処理数 (–min-parallelism <number>): 同時に処理するプローブの最小数を指定します。

    nmap --min-parallelism 50 192.168.1.1
  • 最大並列処理数 (–max-parallelism <number>): 同時に処理するプローブの最大数を指定します。

    nmap --max-parallelism 100 192.168.1.1
  • 最小ホストグループサイズ (–min-hostgroup <number>): 同時にスキャンするホストの最小グループサイズ。

    nmap --min-hostgroup 10 192.168.1.0/24
  • 最大ホストグループサイズ (–max-hostgroup <number>): 同時にスキャンするホストの最大グループサイズ。

    nmap --max-hostgroup 32 192.168.1.0/24
  • 最大再送回数 (–max-retries <number>): 応答がない場合にプローブを再送する最大回数。デフォルトは10回程度ですが、タイミングテンプレートによって変化します。

    nmap --max-retries 3 192.168.1.1
  • ホストタイムアウト (–host-timeout <time>): 1つのホストに対するスキャンを諦めるまでの時間 (例: 30m, 1h, 500s)。

    nmap --host-timeout 20m 192.168.1.0/24
  • スクリプトタイムアウト (–script-timeout <time>): 個々のスクリプトが終了するまでの最大時間。

    nmap -sC --script-timeout 5m 192.168.1.1
  • スキャン遅延 (–scan-delay <time>): 各プローブ間に指定した時間だけ待機します。レート制限の回避や、非常に低速なスキャンに使用します。

    nmap --scan-delay 1s 192.168.1.1 # 各プローブ間に1秒待機
    nmap --scan-delay 500ms 192.168.1.1
  • 最大スキャン遅延 (–max-scan-delay <time>): Nmapが動的に調整するスキャン遅延の最大値を設定します。

    nmap --max-scan-delay 2s -T1 192.168.1.1
  • 初期ラウンドトリップタイムアウト (–initial-rtt-timeout <time>): 最初のプローブに対するタイムアウト時間。

    nmap --initial-rtt-timeout 500ms 192.168.1.1
  • 最大ラウンドトリップタイムアウト (–max-rtt-timeout <time>): プローブに対するタイムアウト時間の上限。

    nmap --max-rtt-timeout 1000ms 192.168.1.1

💾 出力形式

スキャン結果を様々な形式で保存します。

オプション 形式 説明
-oN <filename> 通常形式 (Normal) コンソールに表示されるのと同じ、人間が読みやすい形式でファイルに保存します。
-oX <filename> XML形式 XML形式で保存します。他のツールでの処理や解析に適しています。XSLTスタイルシートを使ってHTMLに変換することも可能です。
-oG <filename> Grep可能形式 (Grepable) 1行に1ホストの情報がまとめられ、grepawk などのコマンドラインツールで処理しやすい形式です。古い形式であり、新しいNmapの機能に対応していない場合があります。
-oA <basename> 全形式 通常形式 (.nmap)、XML形式 (.xml)、Grep可能形式 (.gnmap) の3つのファイルで同時に保存します。ベース名(拡張子なし)を指定します。
-oS <filename> スクリプトキディ形式 (s| L33t speak 風の出力形式。実用性は低いですが、遊び心があります。🃏
- (ハイフン) 標準出力 ファイル名の代わりに - を指定すると、標準出力に結果を出力します (例: -oX -)。他のコマンドにパイプで渡す際に便利です。
  • 詳細表示 (-v / -vv): スキャン中および結果の詳細度を上げます。-v で詳細表示、-vv でさらに詳細な情報を表示します。

    nmap -v 192.168.1.1
    nmap -vv -A 192.168.1.1
  • デバッグ表示 (-d / -dd): デバッグ情報を表示します。問題解決に役立ちます。-d, -d2, …, -d9 とレベルを上げることができます。

    nmap -d 192.168.1.1
  • ポート状態の理由表示 (–reason): ポートが特定の状態(open, closed, filtered)と判断された理由を表示します (例: syn-ack, rst, no-response)。

    nmap --reason 192.168.1.1
  • オープンしているポートのみ表示 (–open): 結果の中から open 状態のポートのみを表示します。open|filtered 状態も表示されます。

    nmap --open 192.168.1.1
  • パケットトレース (–packet-trace): 送受信した全てのパケットの概要を表示します。非常に大量の出力になることがあります。

    nmap --packet-trace -p 80 192.168.1.1
  • インタフェースと経路の表示 (–iflist): Nmapが検出したネットワークインターフェースとシステムルート(経路情報)を表示します。

    nmap --iflist
  • XML出力にXSLスタイルシートを適用 (–stylesheet <path|URL>): XML出力 (-oX) に指定したXSLスタイルシートを適用し、例えばHTML形式で見やすく変換するための参照を追加します。nmap.xsl がよく使われます。

    nmap -oX scan_result.xml --stylesheet https://nmap.org/svn/docs/nmap.xsl 192.168.1.1
  • Web XML (非推奨): --webxml--stylesheet https://nmap.org/svn/docs/nmap.xsl と同等です。

  • 出力の追記 (–append-output): 指定した出力ファイルに結果を追記します(上書きしません)。

    nmap -oN results.txt --append-output 192.168.1.1
  • 出力しない (-oN /dev/null など): 結果をファイルに保存したくない場合や、スクリプトの副作用のみに関心がある場合。

    nmap -oN /dev/null --script=my-action-script 192.168.1.1

🌐 その他

  • IPv6 スキャン (-6): IPv6 アドレスをスキャンターゲットとして指定します。ホスト発見やポートスキャン技法はIPv4と同様に機能します。

    nmap -6 fe80::1234:5678:9abc:def0%eth0
    nmap -6 2001:db8::/64
  • トレースルート (–traceroute): ターゲットホストまでのネットワーク経路を特定します。ポートスキャン後に行われます。

    nmap --traceroute scanme.nmap.org
  • プロキシ経由のスキャン (–proxies <comma-separated list of proxy URLs>): HTTP または SOCKS4 プロキシ経由でTCP接続を行います。UDPやOS検出などはプロキシ経由では動作しません。

    nmap --proxies http://proxy.example.com:8080,socks4://socks.example.com:1080 target.example.com
  • Nmap バージョン表示 (-V): Nmapのバージョン情報を表示します。

    nmap -V
  • ヘルプ表示 (-h): Nmapのオプションに関する簡単なヘルプを表示します。

    nmap -h
  • 対話モード (–resume <filename>): 中断されたスキャンを再開します。中断されたスキャンの出力ファイル (通常形式 -oN または Grepable -oG) を指定します。

    # Ctrl+Cで中断されたスキャン
    nmap -oN scan_state.nmap 192.168.1.0/24
    # 再開
    nmap --resume scan_state.nmap

コメント

タイトルとURLをコピーしました