様々なログを出力できる Nmap のオプション
Nmap には、様々なログを出力してデバッグに使えるオプションがあります。これらのオプションを調べる機会があったため、それらのオプションを日記にまとめておきます。これで、気持ちよく忘れることができますね!
該当する Nmap のオプション
Nmap に下表のオプションを指定することで、Nmap に関する様々なログも出力できます。これらのオプションを指定して、実際に Nmap を実行してみます。
オプション | 説明(「nmap -h」の出力を引用) |
---|---|
--version-trace | Show detailed version scan activity (for debugging) |
--script-trace | Show all data sent and received |
-v | Increase verbosity level (use -vv or more for greater effect) |
-vv | Increase verbosity level (use -vv or more for greater effect) |
-d | Increase debugging level (use -dd or more for greater effect) |
-dd | Increase debugging level (use -dd or more for greater effect) |
--packet-trace | Show all packets sent and received |
Nmap の実行結果
Windows 7 SP1 にて nmap 6.25 を次のように実行しました。まず、Powershell を起動しました。そして、ログを出力するオプションを変えながら「-A」オプションを指定して、scanme.nmap.org に対して Nmap を実行しました。このとき、Nmap の出力結果を Powershell の Tee-Object コマンドレット に渡して、Nmap の標準出力結果をファイルに記録しました。
C:\Program Files\nmap-6.25>powershell Windows PowerShell Copyright (C) 2009 Microsoft Corporation. All rights reserved. PS C:\Program Files\nmap-6.25> ./nmap -A -n -v scanme.nmap.org | Tee-Object -filepath log.txt Starting Nmap 6.25 ( http://nmap.org ) at 2013-08-20 01:09 東京 (標準時) NSE: Loaded 106 scripts for scanning. NSE: Script Pre-scanning. Initiating Ping Scan at 01:09 (snip)
ログを出力するオプションを指定して、Nmap を実行した結果は下表となります。
Nmap のコマンドライン | 実行結果 |
---|---|
nmap -A -n --version-trace scanme.nmap.org | 標準出力結果 |
nmap -A -n --script-trace scanme.nmap.org | 標準出力結果 |
nmap -A -n -v scanme.nmap.org | 標準出力結果 |
nmap -A -n -vv scanme.nmap.org | 標準出力結果 |
nmap -A -n -d scanme.nmap.org | 標準出力結果 |
nmap -A -n -dd scanme.nmap.org | 標準出力結果 |
nmap -A -n --packet-trace scanme.nmap.org | 標準出力結果 |
ログを出力するオプションをどう使うか
僕は、以下のようなときにこれらのオプションを指定します。
- Nmap が何を実行しているかを確認したいとき
- 「-v」オプション
- ポートスキャンで、open や open|filtered と判断した理由を確認したいとき
- 「-d」オプション
- バージョンチェックで、nmap-service-probes のどの条件に合致したか確認したいとき
- 「--version-trace」オプション
- 「-dd」オプション
2013年8月21日 20:30 頃 追記
[twitter:@kitagawa_takuji] さんから、以下のメンションをいただきました。ポートスキャンで、open や open|filtered と判断された理由を確認したいときには、「--reason」がシンプルでよいですね。
まとめ
「-v」、「-d」および「-dd」オプションを覚えておきたい。