mirror of
https://github.com/nmap/nmap.git
synced 2025-12-27 09:59:04 +00:00
Regenerate the nroff man page translations
This commit is contained in:
@@ -1,19 +1,27 @@
|
||||
'\" t
|
||||
.\" Title: nmap
|
||||
.\" Author:
|
||||
.\" Generator: DocBook XSL Stylesheets v1.73.2 <http://docbook.sf.net/>
|
||||
.\" Date: 06/15/2008
|
||||
.\" Manual:
|
||||
.\" Source:
|
||||
.\" Author: [FIXME: author] [see http://docbook.sf.net/el/author]
|
||||
.\" Generator: DocBook XSL Stylesheets v1.74.3 <http://docbook.sf.net/>
|
||||
.\" Date: 11/21/2009
|
||||
.\" Manual: [FIXME: manual]
|
||||
.\" Source: [FIXME: source]
|
||||
.\" Language: English
|
||||
.\"
|
||||
.TH "NMAP" "1" "06/15/2008" "" ""
|
||||
.TH "NMAP" "1" "11/21/2009" "[FIXME: source]" "[FIXME: manual]"
|
||||
.\" -----------------------------------------------------------------
|
||||
.\" * set default formatting
|
||||
.\" -----------------------------------------------------------------
|
||||
.\" disable hyphenation
|
||||
.nh
|
||||
.\" disable justification (adjust text to left margin only)
|
||||
.ad l
|
||||
.\" -----------------------------------------------------------------
|
||||
.\" * MAIN CONTENT STARTS HERE *
|
||||
.\" -----------------------------------------------------------------
|
||||
.SH "NAME"
|
||||
nmap - ネットワーク調査ツールおよびセキュリティ/ポート スキャナ
|
||||
nmap \- ネットワーク調査ツールおよびセキュリティ/ポート スキャナ
|
||||
.SH "SYNOPSIS"
|
||||
.HP 5
|
||||
.HP \w'\fBnmap\fR\ 'u
|
||||
\fBnmap\fR [\fIスキャンタイプ\fR...] [\fIオプション\fR] {\fIターゲットの指定\fR}
|
||||
.SH "ツール説明"
|
||||
.PP
|
||||
@@ -26,29 +34,31 @@ unfilteredに分類される。ポートの状態がopen|filteredやclosed|filte
|
||||
Nmapは、このポート一覧表以外にも、逆引きDNS名、OSの推測、デバイスの種類、MACアドレスなどの、調査対象に関するさらに詳細な情報を提供できる。
|
||||
.PP
|
||||
典型的なNmapスキャンの例を、以下の
|
||||
Example\ 1, \(lqNmapスキャンの典型的な例\(rqに示した。この例で使用されているNmapの引数は、OSとそのバージョンの検出を可能にする\fB\-A\fRと、処理を高速に実行するための\fB\-T4\fR、および2つのターゲットホスト名だけである。
|
||||
Example\ \&1, \(lqNmapスキャンの典型的な例\(rqに示した。この例で使用されているNmapの引数は、OSとそのバージョンの検出を可能にする\fB\-A\fRと、処理を高速に実行するための\fB\-T4\fR、および2つのターゲットホスト名だけである。
|
||||
.PP
|
||||
\fBExample\ 1.\ Nmapスキャンの典型的な例\fR
|
||||
\fBExample\ \&1.\ \&Nmapスキャンの典型的な例\fR
|
||||
.sp
|
||||
.if n \{\
|
||||
.RS 4
|
||||
.\}
|
||||
.nf
|
||||
# nmap \-A \-T4 scanme\.nmap\.org playground
|
||||
# nmap \-A \-T4 scanme\&.nmap\&.org playground
|
||||
|
||||
Starting nmap ( http://www\.insecure\.org/nmap/ )
|
||||
Interesting ports on scanme\.nmap\.org (205\.217\.153\.62):
|
||||
Starting nmap ( http://www\&.insecure\&.org/nmap/ )
|
||||
Interesting ports on scanme\&.nmap\&.org (205\&.217\&.153\&.62):
|
||||
(The 1663 ports scanned but not shown below are in state: filtered)
|
||||
PORT STATE SERVICE VERSION
|
||||
22/tcp open ssh OpenSSH 3\.9p1 (protocol 1\.99)
|
||||
22/tcp open ssh OpenSSH 3\&.9p1 (protocol 1\&.99)
|
||||
53/tcp open domain
|
||||
70/tcp closed gopher
|
||||
80/tcp open http Apache httpd 2\.0\.52 ((Fedora))
|
||||
80/tcp open http Apache httpd 2\&.0\&.52 ((Fedora))
|
||||
113/tcp closed auth
|
||||
Device type: general purpose
|
||||
Running: Linux 2\.4\.X|2\.5\.X|2\.6\.X
|
||||
OS details: Linux 2\.4\.7 \- 2\.6\.11, Linux 2\.6\.0 \- 2\.6\.11
|
||||
Uptime 33\.908 days (since Thu Jul 21 03:38:03 2005)
|
||||
Running: Linux 2\&.4\&.X|2\&.5\&.X|2\&.6\&.X
|
||||
OS details: Linux 2\&.4\&.7 \- 2\&.6\&.11, Linux 2\&.6\&.0 \- 2\&.6\&.11
|
||||
Uptime 33\&.908 days (since Thu Jul 21 03:38:03 2005)
|
||||
|
||||
Interesting ports on playground\.nmap\.org (192\.168\.0\.40):
|
||||
Interesting ports on playground\&.nmap\&.org (192\&.168\&.0\&.40):
|
||||
(The 1659 ports scanned but not shown below are in state: closed)
|
||||
PORT STATE SERVICE VERSION
|
||||
135/tcp open msrpc Microsoft Windows RPC
|
||||
@@ -57,35 +67,39 @@ PORT STATE SERVICE VERSION
|
||||
445/tcp open microsoft\-ds Microsoft Windows XP microsoft\-ds
|
||||
1002/tcp open windows\-icfw?
|
||||
1025/tcp open msrpc Microsoft Windows RPC
|
||||
1720/tcp open H\.323/Q\.931 CompTek AquaGateKeeper
|
||||
5800/tcp open vnc\-http RealVNC 4\.0 (Resolution 400x250; VNC TCP port: 5900)
|
||||
5900/tcp open vnc VNC (protocol 3\.8)
|
||||
1720/tcp open H\&.323/Q\&.931 CompTek AquaGateKeeper
|
||||
5800/tcp open vnc\-http RealVNC 4\&.0 (Resolution 400x250; VNC TCP port: 5900)
|
||||
5900/tcp open vnc VNC (protocol 3\&.8)
|
||||
MAC Address: 00:A0:CC:63:85:4B (Lite\-on Communications)
|
||||
Device type: general purpose
|
||||
Running: Microsoft Windows NT/2K/XP
|
||||
OS details: Microsoft Windows XP Pro RC1+ through final release
|
||||
Service Info: OSs: Windows, Windows XP
|
||||
|
||||
Nmap finished: 2 IP addresses (2 hosts up) scanned in 88\.392 seconds
|
||||
Nmap finished: 2 IP addresses (2 hosts up) scanned in 88\&.392 seconds
|
||||
.fi
|
||||
.if n \{\
|
||||
.RE
|
||||
.\}
|
||||
.PP
|
||||
Nmapの最新バージョンは、\fI\%http://www.insecure.org/nmap/\fRから入手できる。また、本マニュアルページの最新版は、\fI\%http://www.insecure.org/nmap/man/\fRで参照できる。
|
||||
Nmapの最新バージョンは、\m[blue]\fB\%http://www.insecure.org/nmap/\fR\m[]から入手できる。また、本マニュアルページの最新版は、\m[blue]\fB\%http://www.insecure.org/nmap/man/\fR\m[]で参照できる。
|
||||
.SH "オプション概要"
|
||||
.PP
|
||||
このオプション概要は、Nmapを引数なしで実行すると表示される。最新版は\fI\%http://www.insecure.org/nmap/data/nmap.usage.txt\fRで参照できる。これを見ると、比較的利用機会の多いオプションについての概要を確認できるが、本マニュアルの以下に掲載する詳細な解説に代わるものではない。使用頻度の低いオプションには、ここに含まれていないものもある。
|
||||
このオプション概要は、Nmapを引数なしで実行すると表示される。最新版は\m[blue]\fB\%http://www.insecure.org/nmap/data/nmap.usage.txt\fR\m[]で参照できる。これを見ると、比較的利用機会の多いオプションについての概要を確認できるが、本マニュアルの以下に掲載する詳細な解説に代わるものではない。使用頻度の低いオプションには、ここに含まれていないものもある。
|
||||
.PP
|
||||
|
||||
.sp
|
||||
.if n \{\
|
||||
.RS 4
|
||||
.\}
|
||||
.nf
|
||||
Usage: nmap [Scan Type(s)] [Options] {target specification}
|
||||
TARGET SPECIFICATION:
|
||||
Can pass hostnames, IP addresses, networks, etc\.
|
||||
Ex: scanme\.nmap\.org, microsoft\.com/24, 192\.168\.0\.1; 10\.0\.0\-255\.1\-254
|
||||
Can pass hostnames, IP addresses, networks, etc\&.
|
||||
Ex: scanme\&.nmap\&.org, microsoft\&.com/24, 192\&.168\&.0\&.1; 10\&.0\&.0\-255\&.1\-254
|
||||
\-iL <inputfilename>: Input from list of hosts/networks
|
||||
\-iR <num hosts>: Choose random targets
|
||||
\-\-exclude <host1[,host2][,host3],\.\.\.>: Exclude hosts/networks
|
||||
\-\-exclude <host1[,host2][,host3],\&.\&.\&.>: Exclude hosts/networks
|
||||
\-\-excludefile <exclude_file>: Exclude list from file
|
||||
HOST DISCOVERY:
|
||||
\-sL: List Scan \- simply list targets to scan
|
||||
@@ -120,12 +134,12 @@ TIMING AND PERFORMANCE:
|
||||
\-\-min\-hostgroup/max\-hostgroup <msec>: Parallel host scan group sizes
|
||||
\-\-min\-parallelism/max\-parallelism <msec>: Probe parallelization
|
||||
\-\-min_rtt_timeout/max\-rtt\-timeout/initial\-rtt\-timeout <msec>: Specifies
|
||||
probe round trip time\.
|
||||
probe round trip time\&.
|
||||
\-\-host\-timeout <msec>: Give up on target after this long
|
||||
\-\-scan\-delay/\-\-max_scan\-delay <msec>: Adjust delay between probes
|
||||
FIREWALL/IDS EVASION AND SPOOFING:
|
||||
\-f; \-\-mtu <val>: fragment packets (optionally w/given MTU)
|
||||
\-D <decoy1,decoy2[,ME],\.\.\.>: Cloak a scan with decoys
|
||||
\-D <decoy1,decoy2[,ME],\&.\&.\&.>: Cloak a scan with decoys
|
||||
\-S <IP_Address>: Spoof source address
|
||||
\-e <iface>: Use specified interface
|
||||
\-g/\-\-source\-port <portnum>: Use given port number
|
||||
@@ -134,7 +148,7 @@ FIREWALL/IDS EVASION AND SPOOFING:
|
||||
\-\-spoof\-mac <mac address/prefix/vendor name>: Spoof your MAC address
|
||||
OUTPUT:
|
||||
\-oN/\-oX/\-oS/\-oG <file>: Output scan in normal, XML, s|<rIpt kIddi3,
|
||||
and Grepable format, respectively, to the given filename\.
|
||||
and Grepable format, respectively, to the given filename\&.
|
||||
\-oA <basename>: Output in the three major formats at once
|
||||
\-v: Increase verbosity level (use twice for more effect)
|
||||
\-d[level]: Set or increase debugging level (Up to 9 is meaningful)
|
||||
@@ -151,27 +165,29 @@ MISC:
|
||||
\-\-send\-eth/\-\-send\-ip: Send using raw ethernet frames or IP packets
|
||||
\-\-privileged: Assume that the user is fully privileged
|
||||
\-V: Print version number
|
||||
\-h: Print this help summary page\.
|
||||
\-h: Print this help summary page\&.
|
||||
EXAMPLES:
|
||||
nmap \-v \-A scanme\.nmap\.org
|
||||
nmap \-v \-sP 192\.168\.0\.0/16 10\.0\.0\.0/8
|
||||
nmap \-v \-A scanme\&.nmap\&.org
|
||||
nmap \-v \-sP 192\&.168\&.0\&.0/16 10\&.0\&.0\&.0/8
|
||||
nmap \-v \-iR 10000 \-P0 \-p 80
|
||||
.fi
|
||||
.if n \{\
|
||||
.RE
|
||||
.\}
|
||||
.sp
|
||||
.SH "ターゲットの指定"
|
||||
.PP
|
||||
Nmapのコマンドラインで、オプション(もしくはオプションの引数)でないものはすべて、ターゲットホストの指定として扱われる。最も簡単な例は、スキャンを行うターゲットのIPアドレスやホスト名の指定である。
|
||||
.PP
|
||||
隣接した複数のホストから成るネットワーク全体をスキャン対象としたい場合は、CIDR表記のアドレス指定を利用できる。IPアドレスやホスト名の末尾に\fIbit数\fRを付加すると、Nmapは、アドレスの上位から指定した\fIbit数\fRまでが参照するIPアドレスや特定のホスト名と同じアドレスをすべてスキャンする。例えば、192\.168\.10\.0/24を指定すると 192\.168\.10\.0 (2進表示:
|
||||
11000000 10101000 00001010 00000000)から192\.168\.10\.255 (2進表示:
|
||||
11000000 10101000 00001010 11111111)までの256のホストがスキャンされる。192\.168\.10\.40/24を指定しても、まったく同じ結果になる。ホスト scanme\.nmap\.orgのIPアドレスが205\.217\.153\.62であるとすると、scanme\.nmap\.org/16という指定では、205\.217\.0\.0 から 205\.217\.255\.255 までの65,536個のIPアドレスをスキャンすることになる。指定可能な最小値は/1であり、これはインターネットの半分をスキャンすることになる。最大値は/32で、すべてのアドレスビットが固定されるので、指定したホストやIPアドレスだけがスキャンされる。
|
||||
隣接した複数のホストから成るネットワーク全体をスキャン対象としたい場合は、CIDR表記のアドレス指定を利用できる。IPアドレスやホスト名の末尾に\fIbit数\fRを付加すると、Nmapは、アドレスの上位から指定した\fIbit数\fRまでが参照するIPアドレスや特定のホスト名と同じアドレスをすべてスキャンする。例えば、192\&.168\&.10\&.0/24を指定すると 192\&.168\&.10\&.0 (2進表示:
|
||||
11000000 10101000 00001010 00000000)から192\&.168\&.10\&.255 (2進表示:
|
||||
11000000 10101000 00001010 11111111)までの256のホストがスキャンされる。192\&.168\&.10\&.40/24を指定しても、まったく同じ結果になる。ホスト scanme\&.nmap\&.orgのIPアドレスが205\&.217\&.153\&.62であるとすると、scanme\&.nmap\&.org/16という指定では、205\&.217\&.0\&.0 から 205\&.217\&.255\&.255 までの65,536個のIPアドレスをスキャンすることになる。指定可能な最小値は/1であり、これはインターネットの半分をスキャンすることになる。最大値は/32で、すべてのアドレスビットが固定されるので、指定したホストやIPアドレスだけがスキャンされる。
|
||||
.PP
|
||||
CIDR表記は簡潔であるが、必ずしも十分な柔軟性があるわけではない。例えば、192\.168\.0\.0/16をスキャンする際に、\.0や\.255で終わるアドレスは、通常はブロードキャストアドレスなのですべて対象から除外したい場合があるだろう。Nmapではこのケースには、オクテット(octet=8bit)範囲のアドレス指定によって対応する。通常のIPアドレスを指定する代わりに、コンマ区切りの数のリストや各オクテット(8bit)の範囲を指定できる。例えば、192\.168\.0\-255\.1\-254と指定すると、\.0と\.255で終わる範囲のアドレスはすべて省かれる。この範囲は最後のオクテットだけに限る必要はない。すなわち、0\-255\.0\-255\.13\.37と指定すると、13\.37で終わるすべてのIPアドレスをインターネット全体でスキャンする。このような広範囲からのサンプリングは、インターネットの調査や研究を行う場合に役立つ。
|
||||
CIDR表記は簡潔であるが、必ずしも十分な柔軟性があるわけではない。例えば、192\&.168\&.0\&.0/16をスキャンする際に、\&.0や\&.255で終わるアドレスは、通常はブロードキャストアドレスなのですべて対象から除外したい場合があるだろう。Nmapではこのケースには、オクテット(octet=8bit)範囲のアドレス指定によって対応する。通常のIPアドレスを指定する代わりに、コンマ区切りの数のリストや各オクテット(8bit)の範囲を指定できる。例えば、192\&.168\&.0\-255\&.1\-254と指定すると、\&.0と\&.255で終わる範囲のアドレスはすべて省かれる。この範囲は最後のオクテットだけに限る必要はない。すなわち、0\-255\&.0\-255\&.13\&.37と指定すると、13\&.37で終わるすべてのIPアドレスをインターネット全体でスキャンする。このような広範囲からのサンプリングは、インターネットの調査や研究を行う場合に役立つ。
|
||||
.PP
|
||||
IPv6アドレスは、完全修飾形(省略なし)のIPv6アドレスやホスト名でしか指定できない。IPv6では、CIDRやオクテット範囲は使い道がほとんどないため、サポートされない。
|
||||
.PP
|
||||
Nmapはコマンドラインでの複数のホスト指定方法に対応しており、すべて同じ形式にしなくてもよい。\fBnmap scanme\.nmap\.org 192\.168\.0\.0/8 10\.0\.0,1,3\-7\.0\-255\fRというコマンドを実行しても、期待通りの結果になる。
|
||||
Nmapはコマンドラインでの複数のホスト指定方法に対応しており、すべて同じ形式にしなくてもよい。\fBnmap scanme\&.nmap\&.org 192\&.168\&.0\&.0/8 10\&.0\&.0,1,3\-7\&.0\-255\fRというコマンドを実行しても、期待通りの結果になる。
|
||||
.PP
|
||||
ターゲットは通常、コマンドライン上で指定されるが、以下のオプションもまた、ターゲットの選択を制御するために利用できる。
|
||||
.PP
|
||||
@@ -185,7 +201,7 @@ Nmapはコマンドラインでの複数のホスト指定方法に対応して
|
||||
インターネット全域に対する調査や研究を行う場合、ターゲットを無作為に選びたい場合もあるだろう。\fIホスト数\fRの引数は、IPをいくつ生成するべきかをNmapに伝える。プライベート、マルチキャスト、未割り当てなどのアドレス範囲のような望ましくないIPは、自動的に飛ばして進むようになっている。引数に0(ゼロ)を指定すると、スキャンが無限に続けられる。ただし、ネットワーク管理者のなかには、自身の管理するネットワークを不正にスキャンされたことに腹を立ててクレームをつける場合もあることに注意しておこう。このオプションは、自己責任で使用すること! 雨の日の午後、退屈しのぎに拾い見るためのWebサーバを無作為に見つけたい場合は、\fBnmap \-sS \-PS80 \-iR 0 \-p 80\fRというコマンドを試してみるとよい。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-\-exclude <host1[,host2][,host3],\.\.\.>\fR (ホスト/ネットワークを除外する)
|
||||
\fB\-\-exclude <host1[,host2][,host3],\&.\&.\&.>\fR (ホスト/ネットワークを除外する)
|
||||
.RS 4
|
||||
ターゲットのコンマ区切りリストを指定し、それらが指定した全ネットワーク範囲の一部であっても、スキャン対象から除外されるようにする。引数として渡すリストでは通常のNmap構文が用いられるので、ホスト名、CIDR表記のネットブロック、オクテット範囲などを含めることもできる。このオプションが役に立つのは、スキャンしたいネットワークに、ポートスキャンによって悪影響が及ぶことがわかっている、触れてはならないミッションクリティカルなサーバやシステムや、他人が管理しているサブネットワークが含まれる場合である。
|
||||
.RE
|
||||
@@ -198,7 +214,7 @@ Nmapはコマンドラインでの複数のホスト指定方法に対応して
|
||||
.PP
|
||||
ネットワーク偵察ミッションの第一段階に行うべきことの1つは、一連の(非常に広範な場合もある)IP範囲を限定して、アクティブな状態であるか、関心のあるホストのリストを作成することである。各IPアドレスのポートを1つ1つスキャンするのは、時間はかかるもののなかなか進まない、通常は無駄な作業である。もちろん、あるホストに興味を引かれる要因は、スキャンの目的に大きく左右される。ネットワーク管理者なら、特定のサービスを実行しているホストにしか興味を示さないかもしれないし、セキュリティ監査人なら、IPアドレスを持つデバイス1つ1つに関心を引かれる場合もあるだろう。内部ネットワーク管理者なら、自分が管理するネットワーク上のホストの位置を確認するためにICMP pingを使えるだけで満足かもしれないし、外部のペネトレーションテストの実施担当者なら、ファイアウォールの制限をすり抜けようとして、多種多様な調査手法を使う場合もあるだろう。
|
||||
.PP
|
||||
このように、ホスト発見のニーズは多岐にわたるので、Nmapには、使用する技法をカスタマイズするための幅広い種類のオプションが備わっている。ホスト探索はpingスキャンと呼ばれることもあるが、一般的なpingツールによる単純なICMPエコー要求パケットよりもはるかに優れている。ユーザは、リストスキャン(\fB\-sL\fR)を用いるか、pingを無効にして(\fB\-P0\fR)、このping段階を完全に省略するか、もしくはネットワークに対してマルチポートのTCP SYN/ACK、UDP、ICMPなどのプローブを任意に組み合わせて行うことができる。これらのプローブの目的は、IPアドレスが実際にアクティブな状態(ホストやネットワークデバイスによって使用中)であることを示す応答を誘い出すことである。多くのネットワークでは、いつでもアクティブなIPアドレスは全体のほんのわずかしかない。RFC1918で定められたプライベートアドレス空間(例:10\.0\.0\.0/8)では特にそうなっている。このネットワークには、1600万個のIPアドレスがあるが、これが1000台足らずのマシンしかない企業で使われているのを見たことがある。ホスト発見を実行すると、こうした広大なIPアドレスの海の中から、まばらにIPアドレスを割り振られたマシンを探し出すことができる。
|
||||
このように、ホスト発見のニーズは多岐にわたるので、Nmapには、使用する技法をカスタマイズするための幅広い種類のオプションが備わっている。ホスト探索はpingスキャンと呼ばれることもあるが、一般的なpingツールによる単純なICMPエコー要求パケットよりもはるかに優れている。ユーザは、リストスキャン(\fB\-sL\fR)を用いるか、pingを無効にして(\fB\-P0\fR)、このping段階を完全に省略するか、もしくはネットワークに対してマルチポートのTCP SYN/ACK、UDP、ICMPなどのプローブを任意に組み合わせて行うことができる。これらのプローブの目的は、IPアドレスが実際にアクティブな状態(ホストやネットワークデバイスによって使用中)であることを示す応答を誘い出すことである。多くのネットワークでは、いつでもアクティブなIPアドレスは全体のほんのわずかしかない。RFC1918で定められたプライベートアドレス空間(例:10\&.0\&.0\&.0/8)では特にそうなっている。このネットワークには、1600万個のIPアドレスがあるが、これが1000台足らずのマシンしかない企業で使われているのを見たことがある。ホスト発見を実行すると、こうした広大なIPアドレスの海の中から、まばらにIPアドレスを割り振られたマシンを探し出すことができる。
|
||||
.PP
|
||||
ホスト発見のオプションが何も指定されない場合、Nmapはポート80宛てのTCP ACKパケットと、ICMPエコー要求クエリを各ターゲットマシンに送信する。この例外は、ローカル イーサネット ネットワーク上にあるターゲットに対して、ARPスキャンが用いられている場合である。高い権限のないUNIXシェルユーザでは、\fBconnect()\fRシステムコールを使って、ACKの代わりにSYNパケットが送られる。これらのデフォルトは、\fB\-PA \-PE\fR
|
||||
オプションに相当する。このホスト発見機能は、ローカルネットワークをスキャンする場合は十分だが、より包括的な一連の発見調査は、セキュリティ監査に任せた方がよい。
|
||||
@@ -209,7 +225,7 @@ Nmapはコマンドラインでの複数のホスト指定方法に対応して
|
||||
.PP
|
||||
\fB\-sL\fR (リストスキャン)
|
||||
.RS 4
|
||||
ホスト発見の縮小版で、単に指定されたネットワークの全ホストを一覧するだけであり、ターゲットホストには何もパケットを送らない。デフォルトでは、Nmapはホスト名を知るために、ホスト上でDNSの逆引き解決も行う。単なるホスト名とはいえ、意外なほど有用な情報をもたらしてくれることも多い。例えばfw\.chi\.playboy\.comは、プレイボーイ社(Playboy Enterprises)のシカゴ(Chicago)支社のファイアウォールである。また最終的には、IPアドレスの総数についての報告もある。リストスキャンは、自分のターゲットに対して正しいIPアドレスが得られていることを確認するための有効な健全性検査になる。ターゲットのホストが見覚えのないドメイン名を示している場合は、間違って別の会社のネットワークをスキャンしてしまわないように、さらに詳しく調査するだけの価値はある。
|
||||
ホスト発見の縮小版で、単に指定されたネットワークの全ホストを一覧するだけであり、ターゲットホストには何もパケットを送らない。デフォルトでは、Nmapはホスト名を知るために、ホスト上でDNSの逆引き解決も行う。単なるホスト名とはいえ、意外なほど有用な情報をもたらしてくれることも多い。例えばfw\&.chi\&.playboy\&.comは、プレイボーイ社(Playboy Enterprises)のシカゴ(Chicago)支社のファイアウォールである。また最終的には、IPアドレスの総数についての報告もある。リストスキャンは、自分のターゲットに対して正しいIPアドレスが得られていることを確認するための有効な健全性検査になる。ターゲットのホストが見覚えのないドメイン名を示している場合は、間違って別の会社のネットワークをスキャンしてしまわないように、さらに詳しく調査するだけの価値はある。
|
||||
.sp
|
||||
リストスキャンの狙いは、単にターゲットホストのリストを出力するだけなので、ポートスキャン、OS検出、pingスキャンなどのより高度なレベルの機能を実現するためのオプションは、これと組み合わせることはできない。これらのハイレベルの機能を実行する際に、pingスキャンを無効にしたい場合は、\fB\-P0\fRオプションの項を参照のこと。
|
||||
.RE
|
||||
@@ -230,7 +246,7 @@ Nmapはコマンドラインでの複数のホスト指定方法に対応して
|
||||
.PP
|
||||
\fB\-PS [portlist]\fR (TCP SYN Ping)
|
||||
.RS 4
|
||||
このオプションによって、SYNフラグ付きの空のTCPパケットが送信される。デフォルトの送信先ポートは80番(この設定は、\fInmap\.h\fRのDEFAULT_TCP_PROBE_PORTを書き換えてコンパイルすると変更できる)だが、代わりのポートをパラメタとして指定できる。また、コンマ区切りのポート番号リスト(例:\fB\-PS22,23,25,80,113,1050,35000\fR)を指定することも可能である。この場合、各ポートに対するプローブは同時並行で試みられる。
|
||||
このオプションによって、SYNフラグ付きの空のTCPパケットが送信される。デフォルトの送信先ポートは80番(この設定は、nmap\&.hのDEFAULT_TCP_PROBE_PORTを書き換えてコンパイルすると変更できる)だが、代わりのポートをパラメタとして指定できる。また、コンマ区切りのポート番号リスト(例:\fB\-PS22,23,25,80,113,1050,35000\fR)を指定することも可能である。この場合、各ポートに対するプローブは同時並行で試みられる。
|
||||
.sp
|
||||
SYNフラグによって、こちら側がコネクションの確立を試みていることをリモートのシステムに知らせる。通常は送信先ポートが閉じており、RST(リセット)パケットが送り返される。このポートがたまたま開いていた場合は、ターゲットはSYN/ACK TCPパケットで応答し、TCPの3ウェイハンドシェイクの第二段階に進む。続いて、Nmapを実行しているマシンが、ACKパケットを送って3ウェイハンドシェイクを完了すれば、完全なコネクションが確立されるが、その代わりにRSTで応答することで、生成途中のコネクションを切断する。このRSTパケットは、Nmap自身ではなくて、Nmapを実行しているマシンのカーネルが、予期せぬSYN/ACKに応答して送るものである。
|
||||
.sp
|
||||
@@ -256,7 +272,7 @@ SYNおよびACKの両方の pingが使えるようになっている理由は、
|
||||
.RS 4
|
||||
これもホスト発見用オプションで、空の(\fB\-\-data\-length\fRが指定されている場合を除き)UDPパケットを特定のポートに送信する。ポートリストは、上で述べた\fB\-PS\fR
|
||||
や
|
||||
\fB\-PA\fRのオプションの場合と同じ形式にする。特にポートが指定されていない場合、デフォルトでは31338番になる。このデフォルト値を設定するには、\fInmap\.h\fRのDEFAULT_UDP_PROBE_PORTを書き換えてコンパイルする。ほとんど使われることがないポートがデフォルトで使用されている理由は、開放ポートへの送信が、このスキャンタイプでは特に望ましくない場合が多いからである。
|
||||
\fB\-PA\fRのオプションの場合と同じ形式にする。特にポートが指定されていない場合、デフォルトでは31338番になる。このデフォルト値を設定するには、nmap\&.hのDEFAULT_UDP_PROBE_PORTを書き換えてコンパイルする。ほとんど使われることがないポートがデフォルトで使用されている理由は、開放ポートへの送信が、このスキャンタイプでは特に望ましくない場合が多いからである。
|
||||
.sp
|
||||
UDPプローブがターゲットマシンで閉じたポートに行き着いた場合は、ICMPポート到達不能パケットが返送されるはずである。Nmapはこれにより、ターゲットマシンが稼動中でアクセス可能であることを知ることになる。ICMPにはこの他にも、ホスト/ネットワーク到達不能やTTL超過などの、ホストがダウンしているか到達不能であることを示す多様なエラーメッセージがある。応答がないのも、これと同様に解釈される。空のパケットが開放ポートに到達した場合、ほとんどのサービスはこれを無視して、何の応答も返さない。デフォルトのプローブポートが、ほぼ使用中ではない31338番になっているのは、このためである。「chargen」などのサービスには、空のUDPパケットに応答するものがいくつかあり、マシンが利用可能であることをNmapに知らせることになる。
|
||||
.sp
|
||||
@@ -265,9 +281,9 @@ UDPプローブがターゲットマシンで閉じたポートに行き着い
|
||||
.PP
|
||||
\fB\-PE\fR; \fB\-PP\fR; \fB\-PM\fR (ICMP Ping タイプ)
|
||||
.RS 4
|
||||
Nmapは、上で述べたようなTCP や UDPによるホスト発見の特異なタイプに加えて、どこにでもあるpingプログラムによって送信される標準的なパケットを送ることもできる。Nmapは、ICMPタイプ8(エコー要求)パケットをターゲットのIPアドレスに送信し、利用可能なホストからタイプ0(エコー応答)が返されるのを待ち受ける。ネットワーク調査を行う者にとっては残念なことに、最近のホストやファイアウォールは、\fIRFC1122\fR\&[1]の要件通り応答を返すよりは、これらのパケットをブロックするものが多い。そのため、インターネット上の未知のターゲットに対しては、ICMPスキャンだけでは十分な信頼性が得られない。だが、内部ネットワークを監視しているシステム管理者にとっては、実用的で効率的なアプローチになる場合もある。このエコー要求動作を有効にするには、\fB\-PE\fRオプションを使用すること。
|
||||
Nmapは、上で述べたようなTCP や UDPによるホスト発見の特異なタイプに加えて、どこにでもあるpingプログラムによって送信される標準的なパケットを送ることもできる。Nmapは、ICMPタイプ8(エコー要求)パケットをターゲットのIPアドレスに送信し、利用可能なホストからタイプ0(エコー応答)が返されるのを待ち受ける。ネットワーク調査を行う者にとっては残念なことに、最近のホストやファイアウォールは、\m[blue]\fBRFC1122\fR\m[]\&\s-2\u[1]\d\s+2の要件通り応答を返すよりは、これらのパケットをブロックするものが多い。そのため、インターネット上の未知のターゲットに対しては、ICMPスキャンだけでは十分な信頼性が得られない。だが、内部ネットワークを監視しているシステム管理者にとっては、実用的で効率的なアプローチになる場合もある。このエコー要求動作を有効にするには、\fB\-PE\fRオプションを使用すること。
|
||||
.sp
|
||||
エコー要求は標準的なICMP pingクエリであるが、Nmapはそれだけにとどまらない。ICMP規格(\fIRFC792\fR\&[2])には、タイムスタンプ要求、情報要求、アドレスマスク要求などのパケットが、それぞれコード13、15、17として指定されている。これらのクエリの表向きの目的は、アドレスマスクや現在の時刻などの情報を知ることだが、ホスト発見にも容易に利用できる。応答を返すシステムはすなわち、稼動中で利用可能なのである。情報要求パケットは、それほど広くサポートされているわけではないので、今のところNmapには実装されていない。RFC 1122では\(lqホストにはこの種のメッセージを実装するべきではありません\(rqと提唱されている。タイムスタンプとアドレスマスクに関するクエリは、それぞれ\fB\-PP\fRと\fB\-PM\fRのオプションを付けることで送信できる。タイムスタンプ応答(ICMP コード14)やアドレスマスク応答(コード18)によって、ホストが利用可能であることが明らかになる。これら2つのクエリは、管理者がエコー要求パケットを限定してブロックしているが、他のICMPクエリが同じ目的で用いられる可能性があることを見落としている場合に有効である。
|
||||
エコー要求は標準的なICMP pingクエリであるが、Nmapはそれだけにとどまらない。ICMP規格(\m[blue]\fBRFC792\fR\m[]\&\s-2\u[2]\d\s+2)には、タイムスタンプ要求、情報要求、アドレスマスク要求などのパケットが、それぞれコード13、15、17として指定されている。これらのクエリの表向きの目的は、アドレスマスクや現在の時刻などの情報を知ることだが、ホスト発見にも容易に利用できる。応答を返すシステムはすなわち、稼動中で利用可能なのである。情報要求パケットは、それほど広くサポートされているわけではないので、今のところNmapには実装されていない。RFC 1122では\(lqホストにはこの種のメッセージを実装するべきではありません\(rqと提唱されている。タイムスタンプとアドレスマスクに関するクエリは、それぞれ\fB\-PP\fRと\fB\-PM\fRのオプションを付けることで送信できる。タイムスタンプ応答(ICMP コード14)やアドレスマスク応答(コード18)によって、ホストが利用可能であることが明らかになる。これら2つのクエリは、管理者がエコー要求パケットを限定してブロックしているが、他のICMPクエリが同じ目的で用いられる可能性があることを見落としている場合に有効である。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-PR\fR (ARP Ping)
|
||||
@@ -354,20 +370,20 @@ SYNスキャンが利用できる場合は通常、そちらを使用した方
|
||||
.PP
|
||||
\fB\-sU\fR (UDP スキャン)
|
||||
.RS 4
|
||||
インターネット上で最も広く利用されているサービスの大部分は、TCPプロトコルで実行されているが、\fIUDP\fR\&[3]サービスも広く導入されている。DNS、SNMP、DHCP(それぞれ登録ポートは 53、161/162、67/68)の3つは、最もよく利用されているUDPサービスである。UDPスキャンは通常、TCPよりも処理に時間がかかり難易度も高いので、セキュリティ監査人のなかにはこれらのポートを無視する人もいる。だがこれは誤りである。悪用可能なUDPサービスは極めてよくあるものであり、攻撃者がこうしたプロトコルを見過ごすわけはないからだ。好都合なことに、NmapはUDPポートの一覧表を作成するのに役立てることができる。
|
||||
インターネット上で最も広く利用されているサービスの大部分は、TCPプロトコルで実行されているが、\m[blue]\fBUDP\fR\m[]\&\s-2\u[3]\d\s+2サービスも広く導入されている。DNS、SNMP、DHCP(それぞれ登録ポートは 53、161/162、67/68)の3つは、最もよく利用されているUDPサービスである。UDPスキャンは通常、TCPよりも処理に時間がかかり難易度も高いので、セキュリティ監査人のなかにはこれらのポートを無視する人もいる。だがこれは誤りである。悪用可能なUDPサービスは極めてよくあるものであり、攻撃者がこうしたプロトコルを見過ごすわけはないからだ。好都合なことに、NmapはUDPポートの一覧表を作成するのに役立てることができる。
|
||||
.sp
|
||||
UDPスキャンを作動させるには、\fB\-sU\fRオプションを指定する。SYN スキャン(\fB\-sS\fR)などのTCPスキャンタイプと組み合わせて用いて、同じ実行時間中に両方のプロトコルをチェックできる。
|
||||
.sp
|
||||
UDPスキャンは、空の(データなし)UDPヘッダを各ターゲットポートに送ることで機能する。ICMPポート到達不能エラー(タイプ3、コード 1、2、9、10、13)が返された場合、ポートはclosed(閉じている)状態にある。その他のICMPポート到達不能エラー(タイプ3、コード3)が返された場合、ポートはfiltered(フィルタあり)と見なされる。まれにサービスがUDPパケットで応答することがあるが、その場合はポートがopenであることがわかる。数回の再試行の後も応答がない場合、ポートはopen|filteredに分類される。これは、ポートが開いているか、もしくはパケットフィルタが通信を阻んでいることを意味する。バージョンスキャン(\fB\-sV\fR)を用いて、実際に開いているポートとフィルタ処理されたポートを識別することもできる。
|
||||
.sp
|
||||
UDPスキャンに関する大きな課題は、処理の高速化である。Openポートやfilteredポートから応答が送り返されることはほとんどないため、Nmapはそのままタイムアウトし、プローブや応答が行方不明になった場合に備えて再試行を行うことになる。閉じたポートは、さらに大きな問題になる場合が多い。閉じたポートからは通常、ICMPポート到達不能エラーが返されるが、閉じたTCPポートがSYNやConnectスキャンに応答してRSTパケットを送る場合とは異なり、多くのホストでは、ICMPポート到達不能メッセージがデフォルトでレート制限されている。Linux や Solarisは、この点に関して特に厳しい。例えば、Linux 2\.4\.20カーネルは、宛先到達不能メッセージを毎秒1個(\fInet/ipv4/icmp\.c\fRで指定)に制限している。
|
||||
UDPスキャンに関する大きな課題は、処理の高速化である。Openポートやfilteredポートから応答が送り返されることはほとんどないため、Nmapはそのままタイムアウトし、プローブや応答が行方不明になった場合に備えて再試行を行うことになる。閉じたポートは、さらに大きな問題になる場合が多い。閉じたポートからは通常、ICMPポート到達不能エラーが返されるが、閉じたTCPポートがSYNやConnectスキャンに応答してRSTパケットを送る場合とは異なり、多くのホストでは、ICMPポート到達不能メッセージがデフォルトでレート制限されている。Linux や Solarisは、この点に関して特に厳しい。例えば、Linux 2\&.4\&.20カーネルは、宛先到達不能メッセージを毎秒1個(net/ipv4/icmp\&.cで指定)に制限している。
|
||||
.sp
|
||||
Nmapはレート制限を検出し、それに応じて処理速度を下げて、ターゲットマシンで落とされるような無用なパケットでネットワークを溢れさせないようにする。残念ながら、Linux方式で毎秒1パケットに制限されると、65,536個のポートをスキャンするのに18時間あまりかかる。UDPスキャンの速度を上げるためのアイデアには、次のようなものがある。同時並行でスキャンするホストの数を増やす、よく使われるポートだけを先に重点的にスキャンする、ファイアウォールの背後からスキャンする、\fB\-\-host\-timeout\fRオプションを使って低速なホストをスキップする。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-sN\fR; \fB\-sF\fR; \fB\-sX\fR (TCP Null、FIN、およびXmasスキャン)
|
||||
.RS 4
|
||||
これら3つのスキャンタイプ(次の節で述べる\fB\-\-scanflags\fRオプションを併用するとさらにいろいろなことができる)は、\fITCP RFC\fR\&[4]の巧妙な抜け穴を突いて、openポートとclosedポートを識別するためのものである。TCP RFCの65ページには、\(lq宛先ポートの状態が CLOSEDならば\.\.\. RSTを含まない入力セグメントは、その応答としてRSTを送信する\(rqとある。次のページでは、SYN、RST、ACKなどのビットセットを含まない、openポート宛てパケットについて述べてあり、\(lqここに至ることはなさそうであるが、もし至ったらセグメントを破棄してリターンする\(rqとある。
|
||||
これら3つのスキャンタイプ(次の節で述べる\fB\-\-scanflags\fRオプションを併用するとさらにいろいろなことができる)は、\m[blue]\fBTCP RFC\fR\m[]\&\s-2\u[4]\d\s+2の巧妙な抜け穴を突いて、openポートとclosedポートを識別するためのものである。TCP RFCの65ページには、\(lq宛先ポートの状態が CLOSEDならば\&.\&.\&. RSTを含まない入力セグメントは、その応答としてRSTを送信する\(rqとある。次のページでは、SYN、RST、ACKなどのビットセットを含まない、openポート宛てパケットについて述べてあり、\(lqここに至ることはなさそうであるが、もし至ったらセグメントを破棄してリターンする\(rqとある。
|
||||
.sp
|
||||
このRFC文書に準拠しているシステムをスキャンすると、SYN、RST、ACKなどのフラグビットを含まないパケットに対しては、ポートが閉じている場合はRSTが返され、ポートが開いている場合は何の応答も返されないことになる。これら3つのフラグビットが含まれない限り、他の3つ(FIN、PSH、URG)をどのように組み合わせてもよい。Nmapは以下の3つのスキャンタイプでこの弱点を突く。
|
||||
.PP
|
||||
@@ -423,7 +439,7 @@ Maimonスキャンは、発見者であるUriel Maimon氏の名前にちなん
|
||||
.PP
|
||||
\fB\-sI <zombie host[:probeport]>\fR (Idle スキャン)
|
||||
.RS 4
|
||||
この高度なスキャン手法を使用すると、対象ホストに対して完全に匿名でTCPポートスキャンを実行できる(スキャンする側の実IPアドレスからは、対象ホストにパケットが送信されない)。それだけではなく、ゾンビホスト上で連続的に生成されるIPフラグメントID(識別子)が予測可能であることを巧妙に利用した独自のサイドチャネル攻撃を実行して、対象ホスト上のopenポートに関する情報を収集することもできる。IDSシステムでは、このスキャンはこちらで指定したゾンビマシン(稼動中でかつ特定の条件を満たす必要がある)から行われているものとして表示される。この非常に興味深いスキャンタイプは複雑すぎて本稿ではとても全容を説明しきれないので、完全な詳細を掲載した非公式の論文を以下に投稿しておくことにする:\fI\%http://nmap.org/book/idlescan.html\fR
|
||||
この高度なスキャン手法を使用すると、対象ホストに対して完全に匿名でTCPポートスキャンを実行できる(スキャンする側の実IPアドレスからは、対象ホストにパケットが送信されない)。それだけではなく、ゾンビホスト上で連続的に生成されるIPフラグメントID(識別子)が予測可能であることを巧妙に利用した独自のサイドチャネル攻撃を実行して、対象ホスト上のopenポートに関する情報を収集することもできる。IDSシステムでは、このスキャンはこちらで指定したゾンビマシン(稼動中でかつ特定の条件を満たす必要がある)から行われているものとして表示される。この非常に興味深いスキャンタイプは複雑すぎて本稿ではとても全容を説明しきれないので、完全な詳細を掲載した非公式の論文を以下に投稿しておくことにする:\m[blue]\fB\%http://nmap.org/book/idlescan.html\fR\m[]
|
||||
.sp
|
||||
このスキャンタイプは、(その匿名性のために)格別に秘匿性が高いことに加え、マシン間のIPベースの信頼関係を明らかにすることができる。ポートリストには、\fI指定したゾンビホストから見た\fRopenポートが表示される。よって、(ルータ/パケットフィルタのルールから)信頼関係にあると思われる様々なゾンビマシンを使ってターゲットをスキャンしてみることもできる。
|
||||
.sp
|
||||
@@ -441,7 +457,7 @@ IPプロトコルスキャンを使うと、ターゲットマシン上でどの
|
||||
.PP
|
||||
\fB\-b <ftp relay host>\fR (FTP バウンス スキャン)
|
||||
.RS 4
|
||||
FTPプロトコル(\fIRFC 959\fR\&[5])の興味深い特徴の1つは、いわゆるプロキシFTP接続に対応していることである。これにより、ユーザは一台のFTPサーバに接続し、そのファイルを第三者サーバに送るように要求できる。これは、様々なレベルの悪用にうってつけの機能なので、たいていのサーバでは、サポートするのを止めている。例えば、この機能を悪用して、FTPサーバに他のホストをポートスキャンさせることも可能である。単に、ターゲットホストの興味あるポートに順にファイルを送信するよう、そのFTPサーバに要求するだけでよい。エラーメッセージには、ポートが開いているか否かが記述される。これは、ファイアウォールをすり抜けるための有効な手段になる。組織のFTPサーバは、どんなインターネットホストよりも、他の内部ホストにアクセスしやすい場所に設置されている場合が多いからだ。Nmapは、\fB\-b\fRオプションでftpバウンススキャンを実行できる。引数は\fIusername\fR:\fIpassword\fR@\fIserver\fR:\fIport\fRのような形式になる。\fIServer\fRは、この脆弱性の影響を受けるFTPサーバの名前かIPアドレスを指定する。通常のURLの場合と同様に、匿名ログインの認証情報(user:
|
||||
FTPプロトコル(\m[blue]\fBRFC 959\fR\m[]\&\s-2\u[5]\d\s+2)の興味深い特徴の1つは、いわゆるプロキシFTP接続に対応していることである。これにより、ユーザは一台のFTPサーバに接続し、そのファイルを第三者サーバに送るように要求できる。これは、様々なレベルの悪用にうってつけの機能なので、たいていのサーバでは、サポートするのを止めている。例えば、この機能を悪用して、FTPサーバに他のホストをポートスキャンさせることも可能である。単に、ターゲットホストの興味あるポートに順にファイルを送信するよう、そのFTPサーバに要求するだけでよい。エラーメッセージには、ポートが開いているか否かが記述される。これは、ファイアウォールをすり抜けるための有効な手段になる。組織のFTPサーバは、どんなインターネットホストよりも、他の内部ホストにアクセスしやすい場所に設置されている場合が多いからだ。Nmapは、\fB\-b\fRオプションでftpバウンススキャンを実行できる。引数は\fIusername\fR:\fIpassword\fR@\fIserver\fR:\fIport\fRのような形式になる。\fIServer\fRは、この脆弱性の影響を受けるFTPサーバの名前かIPアドレスを指定する。通常のURLの場合と同様に、匿名ログインの認証情報(user:
|
||||
anonymous
|
||||
password:\-wwwuser@)が使われる場合は、\fIusername\fR:\fIpassword\fRの部分は省略できる。\fIserver\fRのデフォルトのFTPポート(21)を用いる場合は、ポート番号(と前のコロン)も省略可能である。
|
||||
.sp
|
||||
@@ -449,7 +465,7 @@ password:\-wwwuser@)が使われる場合は、\fIusername\fR:\fIpassword\fRの
|
||||
.RE
|
||||
.SH "ポートの指定とスキャンの順序"
|
||||
.PP
|
||||
Nmapには、これまでに述べたすべてのスキャン手法に加えて、どのポートをスキャンするかや、スキャンの順序をランダムにするか順序通りにするかなどを指定するためのオプションが用意されている。デフォルトでは、Nmapは、1024番(を含む)までの全ポートと、1025番以降のポートはスキャン対象のプロトコルに応じて\fInmap\-services\fRファイルに記載されたポートをスキャンする。
|
||||
Nmapには、これまでに述べたすべてのスキャン手法に加えて、どのポートをスキャンするかや、スキャンの順序をランダムにするか順序通りにするかなどを指定するためのオプションが用意されている。デフォルトでは、Nmapは、1024番(を含む)までの全ポートと、1025番以降のポートはスキャン対象のプロトコルに応じてnmap\-servicesファイルに記載されたポートをスキャンする。
|
||||
.PP
|
||||
\fB\-p <port ranges>\fR (指定されたポートのみスキャン)
|
||||
.RS 4
|
||||
@@ -461,7 +477,7 @@ TCPポートとUDPポート両方のスキャンを実行する場合は、ポ
|
||||
.PP
|
||||
\fB\-F\fR (高速 (限定したポートだけ) スキャン)
|
||||
.RS 4
|
||||
Nmapに同梱されている\fInmap\-services\fRファイル(\fB\-sO\fRでは「protocols」ファイル)に列挙されているポートだけをスキャンするように指定する。こうすることで、ホスト上の全65535ポートをスキャンするよりもはるかに高速になる。このリストには非常に多く(1200以上)のTCPポートが含まれているので、デフォルトのTCPスキャン(約1650ポート)との速度差はそれほど大きくはない。\fB\-\-datadir\fRオプションを使って、自分で独自に作成した小さな\fInmap\-services\fRファイルを指定すると、この速度差をかなり大きくすることができる。
|
||||
Nmapに同梱されているnmap\-servicesファイル(\fB\-sO\fRでは「protocols」ファイル)に列挙されているポートだけをスキャンするように指定する。こうすることで、ホスト上の全65535ポートをスキャンするよりもはるかに高速になる。このリストには非常に多く(1200以上)のTCPポートが含まれているので、デフォルトのTCPスキャン(約1650ポート)との速度差はそれほど大きくはない。\fB\-\-datadir\fRオプションを使って、自分で独自に作成した小さなnmap\-servicesファイルを指定すると、この速度差をかなり大きくすることができる。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-r\fR (ポートの順番を無作為にしない)
|
||||
@@ -470,11 +486,11 @@ Nmapに同梱されている\fInmap\-services\fRファイル(\fB\-sO\fRでは「
|
||||
.RE
|
||||
.SH "サービスとバージョンの検出"
|
||||
.PP
|
||||
リモートマシンをターゲットにしてNmapを実行した結果、25/tcp、80/tcp、53/udpの各ポートが開いていることが判明したとしよう。Nmapは、約2200個のよく知られたサービスから成る\fInmap\-services\fRのデータベースを用いて、これらのポートがそれぞれメールサーバ(SMTP)、Webサーバ(HTTP)、ネームサーバ(DNS)に相当するとレポートする。通常、この検索結果は正確である。すなわち、TCPポート25番で待ち受けするデーモンの大部分は、実際にメールサーバである。だが、これをすべて鵜呑みにしてはいけない。通常とは異なるポートでサービスが実行されるケースも実際にあり得る。
|
||||
リモートマシンをターゲットにしてNmapを実行した結果、25/tcp、80/tcp、53/udpの各ポートが開いていることが判明したとしよう。Nmapは、約2200個のよく知られたサービスから成るnmap\-servicesのデータベースを用いて、これらのポートがそれぞれメールサーバ(SMTP)、Webサーバ(HTTP)、ネームサーバ(DNS)に相当するとレポートする。通常、この検索結果は正確である。すなわち、TCPポート25番で待ち受けするデーモンの大部分は、実際にメールサーバである。だが、これをすべて鵜呑みにしてはいけない。通常とは異なるポートでサービスが実行されるケースも実際にあり得る。
|
||||
.PP
|
||||
たとえNmapが正しくて、上で仮定したサーバがそれぞれSMTP、HTTP、DNSサーバを実行している場合でも、これは多くの情報にはならない。自社やクライアントの脆弱性調査(簡単なインベントリ調査の場合でも)を実施する際には、どのメールサーバやDNSサーバが動作中であるかを知りたいはずである。正確なバージョン番号を入手することは、サーバがどのような攻撃に対して脆弱であるかを判断するのに大いに役に立つ。バージョン検出はこうした情報を入手するのに役立つ手法である。
|
||||
.PP
|
||||
別のスキャン手法を用いてTCPポートや UDPポートを発見したら、そこで何が実行されているかについての詳細を明らかにするために、これらのポートをバージョン検出によってさらに綿密に調査する。\fInmap\-service\-probes\fRデータベースには、様々なサービスの問い合わせを行うためのプローブや、応答を識別して解析するための照合表現が含まれている。Nmapは以下の情報の特定を試みる:サービスプロトコル(例:ftp、ssh、telnet、http)、アプリケーション名(例:ISC Bind、Apache httpd、Solaris telnetd)、バージョン番号、ホスト名、デバイスタイプ(例:プリンタ、ルータ)、OSファミリ(例:Windows、 Linux) さらには、Xサーバが接続に対してopen状態にあるかどうかや、SSHプロトコルのバージョン、KaZaAのユーザ名などのその他様々な詳細情報の特定が試みられる場合もある。もちろんたいていのサービスは、これらの情報をすべて提供できるわけではない。NmapにOpenSSLのサポート機能が組み困れている場合は、SSLサーバに接続して、この暗号化層の背後で待ち受けしているサービスを推定する。RPC(Remote Procedure Call)サービスが発見された場合は、RPCプログラムとバージョン番号を特定するためにNmapのRPCグラインダー(\fB\-sR\fR)が自動的に使用される。UDPポートスキャンを実行しても、「open」か「filtered」かを判定できなかった一部のポートは、open|filtered状態として保留される。バージョン検出は、これらのポートから応答を導き出して、可能な場合はその状態を「open」に変更しようと試みる。open|filteredのTCPポートも同様に取り扱われる。ここで注目すべき点は、バージョン検出がNmapの\fB\-A\fRオプションで有効になる機能の1つに含まれることである。バージョン検出のメカニズム、使用法、カスタマイズ方法に関する論文は、以下で入手できる:\fI\%http://www.insecure.org/nmap/vscan/\fR
|
||||
別のスキャン手法を用いてTCPポートや UDPポートを発見したら、そこで何が実行されているかについての詳細を明らかにするために、これらのポートをバージョン検出によってさらに綿密に調査する。nmap\-service\-probesデータベースには、様々なサービスの問い合わせを行うためのプローブや、応答を識別して解析するための照合表現が含まれている。Nmapは以下の情報の特定を試みる:サービスプロトコル(例:ftp、ssh、telnet、http)、アプリケーション名(例:ISC Bind、Apache httpd、Solaris telnetd)、バージョン番号、ホスト名、デバイスタイプ(例:プリンタ、ルータ)、OSファミリ(例:Windows、 Linux) さらには、Xサーバが接続に対してopen状態にあるかどうかや、SSHプロトコルのバージョン、KaZaAのユーザ名などのその他様々な詳細情報の特定が試みられる場合もある。もちろんたいていのサービスは、これらの情報をすべて提供できるわけではない。NmapにOpenSSLのサポート機能が組み困れている場合は、SSLサーバに接続して、この暗号化層の背後で待ち受けしているサービスを推定する。RPC(Remote Procedure Call)サービスが発見された場合は、RPCプログラムとバージョン番号を特定するためにNmapのRPCグラインダー(\fB\-sR\fR)が自動的に使用される。UDPポートスキャンを実行しても、「open」か「filtered」かを判定できなかった一部のポートは、open|filtered状態として保留される。バージョン検出は、これらのポートから応答を導き出して、可能な場合はその状態を「open」に変更しようと試みる。open|filteredのTCPポートも同様に取り扱われる。ここで注目すべき点は、バージョン検出がNmapの\fB\-A\fRオプションで有効になる機能の1つに含まれることである。バージョン検出のメカニズム、使用法、カスタマイズ方法に関する論文は、以下で入手できる:\m[blue]\fB\%http://www.insecure.org/nmap/vscan/\fR\m[]
|
||||
.PP
|
||||
Nmapがサービスからの応答を受信しても、データベースに一致するものが見つからなかった場合は、特別なフィンガープリントとURLが出力される。このURLは、ポートで何が動作しているかが確実に分かっている場合に、フィンガープリントを投稿していただくためのものだ。あなたの発見がいろいろな人のためになるよう、2、3分もかからないのでぜひ投稿していただきたい。こうした投稿のおかげで、Nmapは、smtp, ftp, httpなどの350以上のプロトコルに対する約3000件のパターン照合例を備えるまでになっている。
|
||||
.PP
|
||||
@@ -487,12 +503,12 @@ Nmapがサービスからの応答を受信しても、データベースに一
|
||||
.PP
|
||||
\fB\-\-allports\fR (バージョン検出の対象からすべてのポートを除外しない)
|
||||
.RS 4
|
||||
デフォルトでは、Nmapのバージョン検出は、TCPポート9100番をスキップするようになっている。一部のプリンタはこのポートに送られたものは何でも出力するので、HTTP GETリクエストやバイナリ形式のSSLセッションリクエストなどのページが何十枚も印刷されることになるからだ。この動作を変更するには、\fInmap\-service\-probes\fRの当該の「除外」(Exclude)ディレクティブを変更あるいは削除するか、もしくは\fB\-\-allports\fRを指定すると、Excludeディレクティブに関係なくすべてのポートがスキャンされるようにできる。
|
||||
デフォルトでは、Nmapのバージョン検出は、TCPポート9100番をスキップするようになっている。一部のプリンタはこのポートに送られたものは何でも出力するので、HTTP GETリクエストやバイナリ形式のSSLセッションリクエストなどのページが何十枚も印刷されることになるからだ。この動作を変更するには、nmap\-service\-probesの当該の「除外」(Exclude)ディレクティブを変更あるいは削除するか、もしくは\fB\-\-allports\fRを指定すると、Excludeディレクティブに関係なくすべてのポートがスキャンされるようにできる。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-\-version\-intensity <intensity>\fR (バージョンスキャンの強度を設定)
|
||||
.RS 4
|
||||
Nmapは、バージョンスキャン(\fB\-sV\fR)を実行する際に、1から9までの「希少」(rarity)値が割り振られた一連のプローブを送信する。この希少値が小さいプローブほど、よく用いられる各種サービスに対して有効であり、この希少値が大きいプローブほど、用途が限られることになる。強度レベルは、どのプローブを適用するべきかを指定するオプションである。この数字が大きいほど、サービスが正しく特定される確率は高くなる。だが、強度が高いスキャンは、それだけ時間がかかる。強度は0から9の間で指定する必要があり、デフォルトは7である。\fInmap\-service\-probes\fRのportsディレクティブによって、ターゲットポートにプローブを登録すると、このプローブは強度レベルに関係なく試行される。これにより、DNSプローブは常に開ポート53番に対して試行され、SSLプローブはポート443番に対して実行されるようにすることなどができる。
|
||||
Nmapは、バージョンスキャン(\fB\-sV\fR)を実行する際に、1から9までの「希少」(rarity)値が割り振られた一連のプローブを送信する。この希少値が小さいプローブほど、よく用いられる各種サービスに対して有効であり、この希少値が大きいプローブほど、用途が限られることになる。強度レベルは、どのプローブを適用するべきかを指定するオプションである。この数字が大きいほど、サービスが正しく特定される確率は高くなる。だが、強度が高いスキャンは、それだけ時間がかかる。強度は0から9の間で指定する必要があり、デフォルトは7である。nmap\-service\-probesのportsディレクティブによって、ターゲットポートにプローブを登録すると、このプローブは強度レベルに関係なく試行される。これにより、DNSプローブは常に開ポート53番に対して試行され、SSLプローブはポート443番に対して実行されるようにすることなどができる。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-\-version\-light\fR (ライトモードを有効にする)
|
||||
@@ -516,14 +532,14 @@ Nmapは、バージョンスキャン(\fB\-sV\fR)を実行する際に、1から
|
||||
.RE
|
||||
.SH "OS 検出"
|
||||
.PP
|
||||
Nmapの最も有名な機能の1つは、TCP/IPスタック・フィンガープリンティングを用いた、リモートからのOS検出機能である。Nmapは、一連のTCPやUDPのパケットをリモートホストに送り、その応答をほぼ全面的に調査する。TCP ISN(イニシャルシーケンス番号)サンプリング、TCPオプションのサポートや順序の調査、IPIDサンプリング、TCP初期ウィンドウサイズ調査などの数多くのテストを実施した後、Nmapはこれらの結果を、既知のOSフィンガープリントが1500件以上データベース化された\fInmap\-os\-fingerprints\fRと照合し、一致するものがあった場合はそのOSに関する詳細情報を出力する。各フィンガープリントには、フリーテキスト形式のOSの解説、ベンダ名を与える分類(例:Sun)、下位のOS(例:Solaris)、OSの世代(例:10)、デバイスの種類(汎用、ルータ、スイッチ、ゲーム機など)が含まれる。
|
||||
Nmapの最も有名な機能の1つは、TCP/IPスタック・フィンガープリンティングを用いた、リモートからのOS検出機能である。Nmapは、一連のTCPやUDPのパケットをリモートホストに送り、その応答をほぼ全面的に調査する。TCP ISN(イニシャルシーケンス番号)サンプリング、TCPオプションのサポートや順序の調査、IPIDサンプリング、TCP初期ウィンドウサイズ調査などの数多くのテストを実施した後、Nmapはこれらの結果を、既知のOSフィンガープリントが1500件以上データベース化されたnmap\-os\-fingerprintsと照合し、一致するものがあった場合はそのOSに関する詳細情報を出力する。各フィンガープリントには、フリーテキスト形式のOSの解説、ベンダ名を与える分類(例:Sun)、下位のOS(例:Solaris)、OSの世代(例:10)、デバイスの種類(汎用、ルータ、スイッチ、ゲーム機など)が含まれる。
|
||||
.PP
|
||||
条件(例えば少なくともopenポート1つとclosedポート1つの存在がわかっているなど)は整っているが、NmapがターゲットマシンのOSを推測できない場合は、フィンガープリント投稿用URLがNmapから提供される。対象のマシンで動作しているOSが何か(確実に)わかっている場合は、当該のフィンガープリントをこのURLを使って投稿できる。こうした投稿が行われることで、Nmapが認識できるOSのデータベースに新たなデータが蓄積され、あらゆるユーザがさらに精度の高い調査を行えるようになる。
|
||||
.PP
|
||||
OS検出を行うことで、そのプロセスのなかで収集される情報を利用した別のテストをいくつか行うこともできる。例えば、アップタイムの測定がその1つで、TCPのタイムスタンプオプション(RFC 1323)を用いて、マシンが最後に再起動されたのはいつかを推定する。これは、その情報を返したマシンに関してのみ報告される。もう一つのテストは、TCPシーケンス番号の予測可能性の分類である。これにより、リモートホストに対して偽造したTCP接続を確立するのがどの程度困難であるかがおおよそ判定できる。これは、発信元IPベースの信頼関係(rlogin、ファイアウォール、フィルタなど)の弱点を悪用したり、攻撃の出所を隠蔽したりする場合に役立つ。この種のスプーフィングはもはやめったに行われないが、これに対して脆弱なマシンがいまだに数多くある。難易度を表す実際の数値は、統計的なサンプリングに基づいているために上下する可能性がある。通常は\(lqworthy challenge(価値ある挑戦)\(rqや\(lqtrivial joke(つまらないジョーク)\(rqなどの言葉の表現による分類を利用する方がよい。これは、冗長(\fB\-v\fR)モードの標準出力にのみレポートされる。\fB\-O\fRオプションとともに冗長モードが有効になっている場合、IPIDシーケンス番号の生成に関する情報もレポートされる。ほとんどのマシンは、\(lqインクリメンタル(incremental)\(rqに分類される。これは、送信するパケットごとに、IPヘッダのIDフィールドの値を1ずつ増加させることを意味する。この仕組みのせいで、これらのマシンは高度な情報収集攻撃やスプーフィング攻撃に対して脆弱になっている。
|
||||
.PP
|
||||
OS検出のメカニズム、使用法、カスタマイズ方法について述べた論文は、以下で入手できる(十数ヶ国語の翻訳版あり):
|
||||
\fI\%http://www.insecure.org/nmap/osdetect/\fR
|
||||
\m[blue]\fB\%http://www.insecure.org/nmap/osdetect/\fR\m[]
|
||||
.PP
|
||||
OS検出は、以下のオプションで実行および制御できる:
|
||||
.PP
|
||||
@@ -612,7 +628,7 @@ Nmapは、プローブを中止もしくは再送信するまで、プローブ
|
||||
.sp
|
||||
\fBT0\fRの主な効果は、スキャンを連続的に実行して一度に1つのポートしかスキャンされないようにすることと、各プローブを送信する間に5分間待機することである。\fBT1\fR
|
||||
と
|
||||
\fBT2\fRは似ているが、それぞれプローブ間の待機時間が15秒と0\.4秒しかない。\fBT3\fRはNmapのデフォルト動作で、並列処理が含まれる。\fBT4\fRは\fB\-\-max\-rtt\-timeout 1250 \-\-initial\-rtt\-timeout 500\fRに相当し、TCPスキャンの最大遅延時間を10msに設定する。\fBT5\fRは\fB\-\-max\-rtt\-timeout 300 \-\-min_rtt_timeout 50 \-\-initial\-rtt\-timeout 250 \-\-host\-timeout 900000\fRに相当し、TCPスキャンの最大遅延時間を5msに設定する。
|
||||
\fBT2\fRは似ているが、それぞれプローブ間の待機時間が15秒と0\&.4秒しかない。\fBT3\fRはNmapのデフォルト動作で、並列処理が含まれる。\fBT4\fRは\fB\-\-max\-rtt\-timeout 1250 \-\-initial\-rtt\-timeout 500\fRに相当し、TCPスキャンの最大遅延時間を10msに設定する。\fBT5\fRは\fB\-\-max\-rtt\-timeout 300 \-\-min_rtt_timeout 50 \-\-initial\-rtt\-timeout 250 \-\-host\-timeout 900000\fRに相当し、TCPスキャンの最大遅延時間を5msに設定する。
|
||||
.RE
|
||||
.SH "ファイアウォール/IDS の回避とスプーフィング"
|
||||
.PP
|
||||
@@ -631,7 +647,7 @@ Nmapには、ファイアウォールルールを回避したりIDSをこっそ
|
||||
\fB\-f\fRオプションを指定すると、要求されたスキャン(pingスキャンを含む)は小さく断片化されたIPパケットを利用するようになる。これを行う目的は、TCPヘッダを複数のパケットに分割することで、パケットフィルタや侵入検知システム(IDS)などの厄介なセキュリティ策にスキャンを検知されにくくすることである。ただし、以下の点には注意が必要だ。すなわち、プログラムのなかには、このような小さなパケットの処理によって問題を生じるものがあることだ。旧式のスニファ「Sniffit」は、最初のフラグメントを受信した瞬間にセグメンテーション障害を起こした。このオプションを一度指定すると、NmapはIPヘッダを8バイトかそれ以下の大きさのパケットに分割する。つまり、20バイトのTCPヘッダは3つのパケットに分割されることになる。8バイトのパケットが2つと、残りの1つが4バイトになる。もちろん、各フラグメントにもIPヘッダがある。\fB\-f\fRを再度指定すると、フラグメントあたり16バイトが使われる(フラグメントの数は減る)。あるいは、\fB\-\-mtu\fRオプションで、ユーザ独自の分割サイズを指定することもできる。\fB\-\-mtu\fRを使う場合は、同時に\fB\-f\fRは指定しないこと。分割サイズは8の倍数にする必要がある。断片化されたパケットは、すべてのIPフラグメントを待ち行列に入れるパケットフィルタやファイアウォール(例えば、LinuxカーネルのCONFIG_IP_ALWAYS_DEFRAGオプションなど)を通り抜けることはできないが、ネットワークによっては、この断片化によって生じるパフォーマンスの低下に耐えきれないために、これを無効にしているところがある。またそれ以外にも、各フラグメントがそれぞれ異なる経路を通ってネットワークに至る可能性があるために、この機能を有効にできないところもある。一部の発信元システムでは、カーネルで発信パケットのフラグメント化を解消するものもある。コネクション追跡モジュールの「iptables」を備えるLinuxなどがこれにあたる。送信パケットがきちんとフラグメント化されていることを確認するために、Etherealなどのスニファを実行しながら、スキャンを行うようにすること。自身のホストのOSが原因で問題が生じる場合は、IP層を回避して「生」イーサネット フレームを送るために、\fB\-\-send\-eth\fRを試してみるとよい。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-D <decoy1 [,decoy2][,ME],\.\.\.>\fR (おとりを使ってスキャンを隠蔽する)
|
||||
\fB\-D <decoy1 [,decoy2][,ME],\&.\&.\&.>\fR (おとりを使ってスキャンを隠蔽する)
|
||||
.RS 4
|
||||
おとり(囮)スキャンを実行する。おとりスキャンとは、実際のスキャンの他に、おとりとして指定したホスト(複数可)もターゲットネットワークをスキャンしているようにリモートホストに見せかけるためのものである。この結果、対象ホストのIDSは、それぞれ異なる複数のIPアドレスから、5から10のポートスキャンが実行されたことを報告する場合もあるが、実際にどのIPがスキャンを実行していたもので、どれが無実のおとりだったのかを知られることはない。このおとりスキャンは、ルータの経路追跡、応答の破棄、その他の動的メカニズムによって阻止される可能性があるが、通常は攻撃元のIPアドレスを隠蔽する技法として非常に効果的である。
|
||||
.sp
|
||||
@@ -662,7 +678,7 @@ Nmapには、ファイアウォールルールを回避したりIDSをこっそ
|
||||
.sp
|
||||
これらの問題に対するセキュアなソリューションは、多くの場合、アプリケーションレベルのプロキシや、プロトコル解析型ファイアウォールモジュールの形で存在する。だが残念ながら、もっと簡単で、安全性の低いソリューションもあるのだ。多くの管理者は、DNS応答は53番ポートから、アクティブftpは20番ポートから来ることに注目し、これらのポートからの内向きトラフィックを無条件に許可してしまうという罠に陥る。こうしたファイアウォールの抜け穴の存在に気付いて悪用するような攻撃者がいるとは思ってもいない場合が多い。また別のケースでは、管理者がこうした処置を、より安全性の高いソリューションを実装するまでの短期間の応急処置と見なしている場合もある。そして結局、セキュリティを向上させることなどすっかり忘れてしまうわけだ。
|
||||
.sp
|
||||
こうした罠に陥るのは何も、多忙なネットワーク管理者だけではない。この種の安全性の低いルールが標準で装備されてくる製品は膨大な数にのぼる。マイクロソフト社にも、責任の一端はある。Windows 2000 や Windows XPに標準装備されているIPsecフィルタには、88番ポート(Kerberos)からのTCP や UDPのトラフィックをすべて許可するという暗黙のルールが含まれている。この他に有名なケースでは、Zone Alarm社製パーソナルファイアウォールの2\.1\.25以下のバーションでは、ソースポートが53番(DNS)と67番(DHCP)の内向きUDPパケットをすべて許可するようになっていた。
|
||||
こうした罠に陥るのは何も、多忙なネットワーク管理者だけではない。この種の安全性の低いルールが標準で装備されてくる製品は膨大な数にのぼる。マイクロソフト社にも、責任の一端はある。Windows 2000 や Windows XPに標準装備されているIPsecフィルタには、88番ポート(Kerberos)からのTCP や UDPのトラフィックをすべて許可するという暗黙のルールが含まれている。この他に有名なケースでは、Zone Alarm社製パーソナルファイアウォールの2\&.1\&.25以下のバーションでは、ソースポートが53番(DNS)と67番(DHCP)の内向きUDPパケットをすべて許可するようになっていた。
|
||||
.sp
|
||||
Nmapには、この種の弱点を突くためのオプションとして、\fB\-g\fR
|
||||
や\fB\-\-source\-port\fR(これらは同等のもの)が用意されている。単ポート番号を指定すると、可能な場合であれば、Nmapはそのポートからパケットを送信する。特定のOS検出検査が正しく機能するようにするために、Nmapは様々なポート番号を使用する必要がある。NmapはDNS要求の処理にシステムのライブラリを用いているので、この\fB\-\-source\-port\fRフラグを指定していても、DNS要求には無視されることになる。SYNスキャンを含む大部分のTCPスキャン、およびUDPスキャンは、このオプションに完全に対応している。
|
||||
@@ -680,12 +696,12 @@ Nmapには、この種の弱点を突くためのオプションとして、\fB\
|
||||
.PP
|
||||
\fB\-\-randomize\-hosts\fR (ターゲットホストの順番を無作為化する)
|
||||
.RS 4
|
||||
このオプションは、Nmapがスキャンを実行する前に、各グループあたり最大8096のホストをランダムに並び替えるようにする。これにより、特にスキャン速度を遅く設定するタイミングオプションと併用する場合は、各種ネットワーク監視システムにスキャンが検知される可能性を小さくすることができる。より大規模なグループを無作為化したい場合は、\fInmap\.h\fRのPING_GROUP_SZを増やして再コンパイルする。別の手段としては、リストスキャンでターゲットIPリストを作成し(\fB\-sL \-n \-oN \fR\fB\fIfilename\fR\fR)、これをPerlスクリプトで無作為化して、\fB\-iL\fRでリストをそのままNmapに渡す。
|
||||
このオプションは、Nmapがスキャンを実行する前に、各グループあたり最大8096のホストをランダムに並び替えるようにする。これにより、特にスキャン速度を遅く設定するタイミングオプションと併用する場合は、各種ネットワーク監視システムにスキャンが検知される可能性を小さくすることができる。より大規模なグループを無作為化したい場合は、nmap\&.hのPING_GROUP_SZを増やして再コンパイルする。別の手段としては、リストスキャンでターゲットIPリストを作成し(\fB\-sL \-n \-oN \fR\fB\fIfilename\fR\fR)、これをPerlスクリプトで無作為化して、\fB\-iL\fRでリストをそのままNmapに渡す。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-\-spoof\-mac <mac address, prefix, or vendor name>\fR (MACアドレスを偽装する)
|
||||
.RS 4
|
||||
Nmapが送信するすべての生イーサネット フレームに、指定したMACアドレスを使うようにする。このオプションは、Nmapが実際にイーサネットレベルのパケットを送信するように、\fB\-\-send\-eth\fRが必要条件になる。MACアドレスは、さまざまな形式で指定できる。文字列の\(lq0\(rqだけが指定された場合は、NmapはセッションのMACアドレスを完全に無作為に選ぶ。指定した文字列が偶数の16進数(一組ずつ状況に応じてコロンで区切る)の場合は、NmapはこれをMACアドレスとして使用する。12桁未満の16進数が指定された場合は、Nmapは残りの6バイトにランダムな値を補充する。引数が0や16進文字列ではない場合は、Nmapは\fInmap\-mac\-prefixes\fR
|
||||
Nmapが送信するすべての生イーサネット フレームに、指定したMACアドレスを使うようにする。このオプションは、Nmapが実際にイーサネットレベルのパケットを送信するように、\fB\-\-send\-eth\fRが必要条件になる。MACアドレスは、さまざまな形式で指定できる。文字列の\(lq0\(rqだけが指定された場合は、NmapはセッションのMACアドレスを完全に無作為に選ぶ。指定した文字列が偶数の16進数(一組ずつ状況に応じてコロンで区切る)の場合は、NmapはこれをMACアドレスとして使用する。12桁未満の16進数が指定された場合は、Nmapは残りの6バイトにランダムな値を補充する。引数が0や16進文字列ではない場合は、Nmapはnmap\-mac\-prefixes
|
||||
を調べて、指定した文字列を含むベンダ名を見つける(大文字と小文字は区別されない)。一致するものがあった場合、そのベンダのOUI(Organizationally Unique Identifier:3バイトのベンダコード)を使用し、残りの3バイトにはランダムに記入する。有効な\fB\-\-spoof\-mac\fR引数は、Apple、0、01:02:03:04:05:06、deadbeefcafe、0020F2、Ciscoなどになる。
|
||||
.RE
|
||||
.SH "出力"
|
||||
@@ -700,11 +716,11 @@ XML出力は、最も重要な出力タイプの1つであり、HTMLに変換し
|
||||
.PP
|
||||
残り2つの出力タイプは、grepで検索可能なシンプルな出力で、ターゲットホストに関するほとんどの情報が1行で表示されるものと、自分のことを>sCRiPt KiDDi3だと思うユーザ向けのsCRiPt KiDDi3 0utPUt(出力)だ。
|
||||
.PP
|
||||
インタラクティブ出力はデフォルトで、関連するコマンドラインオプションはないが、他の4つのフォーマットオプションでは、同じ構文が使われる。取る引数は1つで、結果を保存するファイル名である。複数のフォーマットを指定してもよいが、各フォーマットは1度しか指定できない。例えば、自分の調査用に通常の出力を保存し、同時に同じスキャン結果をプログラムの解析用にXML形式で保存したい場合もあるだろう。これは、\fB\-oX myscan\.xml \-oN myscan\.nmap\fRというオプションを使って実行できる。なお、ここでは簡潔にするためにmyscan\.xmlのような単純なファイル名を用いているが、通常はもっと説明的な名前にするのが推奨されている。どのようなファイル名にするかは、個人の好みの問題だが、筆者はスキャンの実施日と簡単なコメントを組み入れた長い名前を使い、スキャン対象の企業名にちなんだ名前のディレクトリに入れている。
|
||||
インタラクティブ出力はデフォルトで、関連するコマンドラインオプションはないが、他の4つのフォーマットオプションでは、同じ構文が使われる。取る引数は1つで、結果を保存するファイル名である。複数のフォーマットを指定してもよいが、各フォーマットは1度しか指定できない。例えば、自分の調査用に通常の出力を保存し、同時に同じスキャン結果をプログラムの解析用にXML形式で保存したい場合もあるだろう。これは、\fB\-oX myscan\&.xml \-oN myscan\&.nmap\fRというオプションを使って実行できる。なお、ここでは簡潔にするためにmyscan\&.xmlのような単純なファイル名を用いているが、通常はもっと説明的な名前にするのが推奨されている。どのようなファイル名にするかは、個人の好みの問題だが、筆者はスキャンの実施日と簡単なコメントを組み入れた長い名前を使い、スキャン対象の企業名にちなんだ名前のディレクトリに入れている。
|
||||
.PP
|
||||
これらのオプションは結果をファイルに保存するが、同時にNmapは通常通りインタラクティブ出力を標準出力(stdout)に書き出している。例えば、\fBnmap \-oX myscan\.xml target\fRというコマンドで、XML出力が\fImyscan\.xml\fRに書き込まれ、同じ結果のインタラクティブ出力が標準出力に書き出される。この出力は、\fB\-oX\fRが指定されなかった場合でも行われる。ハイフン(\-)文字を引数としてフォーマットタイプの1つに渡すと、これを変更することができる。すなわち、Nmapはインタラクティブ出力を停止して、代わりにユーザが指定した形式の結果を、標準出力ストリーム(stdout)に書き出すことになる。\fBnmap \-oX \- target\fRというコマンドでは、XML出力だけがstdoutに送られる。この場合も、重大なエラーは標準エラーストリーム(stderr)に書き出される場合がある。
|
||||
これらのオプションは結果をファイルに保存するが、同時にNmapは通常通りインタラクティブ出力を標準出力(stdout)に書き出している。例えば、\fBnmap \-oX myscan\&.xml target\fRというコマンドで、XML出力がmyscan\&.xmlに書き込まれ、同じ結果のインタラクティブ出力が標準出力に書き出される。この出力は、\fB\-oX\fRが指定されなかった場合でも行われる。ハイフン(\-)文字を引数としてフォーマットタイプの1つに渡すと、これを変更することができる。すなわち、Nmapはインタラクティブ出力を停止して、代わりにユーザが指定した形式の結果を、標準出力ストリーム(stdout)に書き出すことになる。\fBnmap \-oX \- target\fRというコマンドでは、XML出力だけがstdoutに送られる。この場合も、重大なエラーは標準エラーストリーム(stderr)に書き出される場合がある。
|
||||
.PP
|
||||
Nmapの一部の引数とは異なり、ログファイルオプションのフラグ(例:\fB\-oX\fR)とファイル名やハイフンとの間のスペースは必須である。この注意を無視して、引数を\fB\-oG\-\fRや\fB\-oG\-\fRのように指定したら、Nmapの下位互換機能により、それぞれ\fIG\-\fRや\fIXscan\.xml\fRという名前の\fI標準フォーマット\fRの出力ファイルが作成される。
|
||||
Nmapの一部の引数とは異なり、ログファイルオプションのフラグ(例:\fB\-oX\fR)とファイル名やハイフンとの間のスペースは必須である。この注意を無視して、引数を\fB\-oG\-\fRや\fB\-oG\-\fRのように指定したら、Nmapの下位互換機能により、それぞれG\-やXscan\&.xmlという名前の\fI標準フォーマット\fRの出力ファイルが作成される。
|
||||
.PP
|
||||
またNmapには、スキャン結果の冗長性を制御するオプションや、出力ファイルに上書きしないで追加書き込みするためのオプションも用意されている。これらのオプションについてはすべて以下で説明する。
|
||||
.PP
|
||||
@@ -717,13 +733,13 @@ Nmapの一部の引数とは異なり、ログファイルオプションのフ
|
||||
.PP
|
||||
\fB\-oX <filespec>\fR (XML 出力)
|
||||
.RS 4
|
||||
XML出力が指定した名前のファイルに書き込まれるようにする。Nmapには文書型定義(DTD)が組み込まれており、XMLパーサーはこれを用いて、NmapのXML出力を検証する。本来はプログラムによる使用を目的としたものだが、人間がNmapのXML出力を解釈するのにも役立つ。DTDには、フォーマットの文法要素が定義されており、これらの要素が取ることのできる属性や値が列挙されていることが多い。最新版は以下から常時入手できる:\fI\%http://www.insecure.org/nmap/data/nmap.dtd\fR
|
||||
XML出力が指定した名前のファイルに書き込まれるようにする。Nmapには文書型定義(DTD)が組み込まれており、XMLパーサーはこれを用いて、NmapのXML出力を検証する。本来はプログラムによる使用を目的としたものだが、人間がNmapのXML出力を解釈するのにも役立つ。DTDには、フォーマットの文法要素が定義されており、これらの要素が取ることのできる属性や値が列挙されていることが多い。最新版は以下から常時入手できる:\m[blue]\fB\%http://www.insecure.org/nmap/data/nmap.dtd\fR\m[]
|
||||
.sp
|
||||
XMLは、ソフトウェアで容易に解析できる定型書式を提供する。C/C++、Perl、Python、Javaなどを含む、あらゆるメジャーなコンピュータ言語用のXMLパーサーが、フリーで入手できるようになっている。これらの言語のほとんどについては、Nmapの出力と実行に特化して処理するためのバインディングも作成されている。例えば、Perl CPAN(Comprehensive Perl Archive Network)の\fINmap::Scanner\fR\&[6]
|
||||
XMLは、ソフトウェアで容易に解析できる定型書式を提供する。C/C++、Perl、Python、Javaなどを含む、あらゆるメジャーなコンピュータ言語用のXMLパーサーが、フリーで入手できるようになっている。これらの言語のほとんどについては、Nmapの出力と実行に特化して処理するためのバインディングも作成されている。例えば、Perl CPAN(Comprehensive Perl Archive Network)の\m[blue]\fBNmap::Scanner\fR\m[]\&\s-2\u[6]\d\s+2
|
||||
や
|
||||
\fINmap::Parser\fR\&[7]などがある。重要なアプリケーションがNmapとインターフェースで連結する場合はほとんど、XMLが推奨フォーマットになる。
|
||||
\m[blue]\fBNmap::Parser\fR\m[]\&\s-2\u[7]\d\s+2などがある。重要なアプリケーションがNmapとインターフェースで連結する場合はほとんど、XMLが推奨フォーマットになる。
|
||||
.sp
|
||||
XML出力はXSLスタイルシートを参照して、出力結果の書式をHTMLに変換できる。これを使用する最も簡単な方法としては、単にFirefoxやIEなどのWebブラウザでXML出力を読み込むだけでよい。デフォルトでは、これはNmapを実行したマシン上(もしくは同じ構成のマシン)でのみ機能する。これは、\fInmap\.xsl\fRのファイルシステムのパスがハードコード化されているためである。Webに接続したマシン上であればHTMLとして表示されるような、移植性のあるXMLファイルを作成する方法については、\fB\-\-stylesheet\fRオプションの項を参照のこと。
|
||||
XML出力はXSLスタイルシートを参照して、出力結果の書式をHTMLに変換できる。これを使用する最も簡単な方法としては、単にFirefoxやIEなどのWebブラウザでXML出力を読み込むだけでよい。デフォルトでは、これはNmapを実行したマシン上(もしくは同じ構成のマシン)でのみ機能する。これは、nmap\&.xslのファイルシステムのパスがハードコード化されているためである。Webに接続したマシン上であればHTMLとして表示されるような、移植性のあるXMLファイルを作成する方法については、\fB\-\-stylesheet\fRオプションの項を参照のこと。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-oS <filespec>\fR (ScRipT KIdd|3 oUTpuT)
|
||||
@@ -741,12 +757,12 @@ Grep可能出力は、コメント行(パウンド(#)記号で始まる行)と
|
||||
.sp
|
||||
これらのフィールドの中で通常最も重要なのは、Ports(ポート)であり、ここからそれぞれの興味あるポートに関する詳細情報が得られる。ポートエントリのカンマ区切りリストになっており、各ポートエントリは、1つの興味あるポートを表し、7つのスラッシュ(/)で区切られたサブフィールドから成る。各サブフィールドはPort number、State、Protocol、Owner、Service、SunRPC info、Version infoである。
|
||||
.sp
|
||||
XML出力の場合と同様に、本稿でこのフォーマットのすべてを論ずることはできない。Nmapのgrep可能出力フォーマットについての詳細な解説は以下で入手できる:\fI\%http://www.unspecific.com/nmap-oG-output\fR
|
||||
XML出力の場合と同様に、本稿でこのフォーマットのすべてを論ずることはできない。Nmapのgrep可能出力フォーマットについての詳細な解説は以下で入手できる:\m[blue]\fB\%http://www.unspecific.com/nmap-oG-output\fR\m[]
|
||||
.RE
|
||||
.PP
|
||||
\fB\-oA <basename>\fR (全フォーマットに出力する)
|
||||
.RS 4
|
||||
簡便のために、\fB\-oA \fR\fB\fIbasename\fR\fRを指定すると、スキャン結果を通常、XML、grep可能の3つのフォーマットで一度に保存できるようにした。それぞれ、\fIbasename\fR\.nmap、\fIbasename\fR\.xml、\fIbasename\fR\.gnmapというファイルに保存される。たいていのプログラムと同じく、以下の例のようにファイル名の前にディレクトリパスを付けることもできる:\fI~/nmaplogs/foocorp/\fR(UNIX)、\fIc:\ehacking\esco\fR(Windows)
|
||||
簡便のために、\fB\-oA \fR\fB\fIbasename\fR\fRを指定すると、スキャン結果を通常、XML、grep可能の3つのフォーマットで一度に保存できるようにした。それぞれ、\fIbasename\fR\&.nmap、\fIbasename\fR\&.xml、\fIbasename\fR\&.gnmapというファイルに保存される。たいていのプログラムと同じく、以下の例のようにファイル名の前にディレクトリパスを付けることもできる:~/nmaplogs/foocorp/(UNIX)、c:\ehacking\esco(Windows)
|
||||
.RE
|
||||
.PP
|
||||
\fB冗長性とデバッグのオプション\fR
|
||||
@@ -793,11 +809,11 @@ Nmapが検出したインターフェースやシステム経路のリストを
|
||||
.PP
|
||||
\fB\-\-stylesheet <path or URL>\fR (XML出力変換のXSLスタイルシートを設定する)
|
||||
.RS 4
|
||||
Nmapには、XML出力を閲覧したりHTMLに変換したりするための\fInmap\.xsl\fRというXSLスタイルシートが同梱されている。XML出力には、xml\-stylesheetディレクティブが組み込まれており、Nmapが最初にインストールした場所(もしくはWindows上の現在作業中のフォルダ)にある\fInmap\.xml\fRを参照する。最近のWebブラウザにNmapのXML出力を読み込むと、ブラウザはファイルシステムから\fInmap\.xsl\fR
|
||||
Nmapには、XML出力を閲覧したりHTMLに変換したりするためのnmap\&.xslというXSLスタイルシートが同梱されている。XML出力には、xml\-stylesheetディレクティブが組み込まれており、Nmapが最初にインストールした場所(もしくはWindows上の現在作業中のフォルダ)にあるnmap\&.xmlを参照する。最近のWebブラウザにNmapのXML出力を読み込むと、ブラウザはファイルシステムからnmap\&.xsl
|
||||
を読み出して、出力結果の処理に使用する。別のスタイルシートを使いたい場合は、この\fB\-\-stylesheet\fRオプションの引数として指定する。引数はフルパス名かURLで指定する。よく用いられる例を以下に示す:
|
||||
\fB\-\-stylesheet http://www\.insecure\.org/nmap/data/nmap\.xsl\fR
|
||||
これで、スタイルシートの最新バージョンがInsecure\.Orgからブラウザに読み込まれる。これにより、Nmap(および
|
||||
\fInmap\.xsl\fR)がインストールされていないマシン上でも、結果を閲覧しやすくなる。そのため、URLのほうが便利な場合が多いが、デフォルトではプライバシー上の理由で、ローカルファイルシステムでのnmap\.xslの場所が使われている。
|
||||
\fB\-\-stylesheet http://www\&.insecure\&.org/nmap/data/nmap\&.xsl\fR
|
||||
これで、スタイルシートの最新バージョンがInsecure\&.Orgからブラウザに読み込まれる。これにより、Nmap(および
|
||||
nmap\&.xsl)がインストールされていないマシン上でも、結果を閲覧しやすくなる。そのため、URLのほうが便利な場合が多いが、デフォルトではプライバシー上の理由で、ローカルファイルシステムでのnmap\&.xslの場所が使われている。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-\-no_stylesheet\fR (XSLスタイルシート宣言をXMLから除外する)
|
||||
@@ -813,7 +829,7 @@ NmapがXML出力をXSLスタイルシートと関連付けないようにする
|
||||
.RS 4
|
||||
Nmapは2002年より、その最もよく使われる機能に対してIPv6のサポートを提供している。特に、pingスキャン(TCPのみ)、connect()スキャン、バージョン検出などはすべてIPv6に対応している。コマンド構文は、\fB\-6\fRオプションを追加する以外は従来通りである。もちろん、ホスト名ではなくてアドレスを指定する場合は、IPv6の構文を使う必要がある。ただし、アドレス表示は3ffe:7501:4819:2000:210:f3ff:fe03:14d0のようになるので、ホスト名を使う方がよい。出力も従来とほぼ同じであり、\(lq興味のあるポート\(rq行のアドレスがIPv6方式になっているのが唯一のIPv6の証拠である。
|
||||
.sp
|
||||
IPv6は必ずしも世界を席巻しているわけではないが、一部(通常はアジア)の国々ではかなり普及しており、最近のOSのほとんどでサポートされている。NmapをIPv6で使用するためには、スキャンのソースとターゲットの両方をIPv6対応に設定する必要がある。自分のISP(他の多くのISPと同様の)からIPv6アドレスを割り当てられていない場合は、様々な場所で入手可能なフリーのトンネルブローカーがNmapとうまく連携して機能する。優れたトンネルブローカーの1つに、BT Exact社が以下で運営しているものがある:\fI\%https://tb.ipv6.btexact.com/\fR。 Hurricane Electric社が以下で提供しているものも使ったことがある:\fI\%http://ipv6tb.he.net/\fR。「6to4 tunnels」という人気のフリーソフトもある。
|
||||
IPv6は必ずしも世界を席巻しているわけではないが、一部(通常はアジア)の国々ではかなり普及しており、最近のOSのほとんどでサポートされている。NmapをIPv6で使用するためには、スキャンのソースとターゲットの両方をIPv6対応に設定する必要がある。自分のISP(他の多くのISPと同様の)からIPv6アドレスを割り当てられていない場合は、様々な場所で入手可能なフリーのトンネルブローカーがNmapとうまく連携して機能する。優れたトンネルブローカーの1つに、BT Exact社が以下で運営しているものがある:\m[blue]\fB\%https://tb.ipv6.btexact.com/\fR\m[]。 Hurricane Electric社が以下で提供しているものも使ったことがある:\m[blue]\fB\%http://ipv6tb.he.net/\fR\m[]。「6to4 tunnels」という人気のフリーソフトもある。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-A\fR (アグレッシブ・スキャンオプション)
|
||||
@@ -823,10 +839,10 @@ IPv6は必ずしも世界を席巻しているわけではないが、一部(通
|
||||
.PP
|
||||
\fB\-\-datadir <directoryname>\fR (Nmapの特別データファイルの位置を指定する)
|
||||
.RS 4
|
||||
Nmapは、実行時に特別なデータを、\fInmap\-service\-probes\fR、\fInmap\-services\fR、\fInmap\-protocols\fR、\fInmap\-rpc\fR、\fInmap\-mac\-prefixes\fR、\fInmap\-os\-fingerprints\fRという名前のファイルに取得する。Nmapはまず、(ある場合は)\fB\-\-datadir\fR
|
||||
オプションで指定したディレクトリ内で、これらのファイルを探す。ここで見つからなかったファイルは、「NMAPDIR」環境変数で指定したディレクトリから検索する。次に、実在する有効なUID(POSIXシステムの場合)やNmapの実行ファイル(Win32の場合)が格納されているディレクトリの\fI~/\.nmap\fR
|
||||
を探し、その次に、組み込みディレクトリの\fI/usr/local/share/nmap\fR
|
||||
や\fI/usr/share/nmap\fRを探す。それでもない場合は最後の手段として、Nmapはカレントディレクトリを検索する。
|
||||
Nmapは、実行時に特別なデータを、nmap\-service\-probes、nmap\-services、nmap\-protocols、nmap\-rpc、nmap\-mac\-prefixes、nmap\-os\-fingerprintsという名前のファイルに取得する。Nmapはまず、(ある場合は)\fB\-\-datadir\fR
|
||||
オプションで指定したディレクトリ内で、これらのファイルを探す。ここで見つからなかったファイルは、「NMAPDIR」環境変数で指定したディレクトリから検索する。次に、実在する有効なUID(POSIXシステムの場合)やNmapの実行ファイル(Win32の場合)が格納されているディレクトリの~/\&.nmap
|
||||
を探し、その次に、組み込みディレクトリの/usr/local/share/nmap
|
||||
や/usr/share/nmapを探す。それでもない場合は最後の手段として、Nmapはカレントディレクトリを検索する。
|
||||
.RE
|
||||
.PP
|
||||
\fB\-\-send\-eth\fR (raw(生の)イーサネット層で送信する)
|
||||
@@ -863,7 +879,7 @@ Nmapのバージョン番号を書き出して終了する。
|
||||
.RE
|
||||
.SH "実行時の対話型操作"
|
||||
.PP
|
||||
この機能はまだNmapに存在しない。この項は内容を追加するか削除する必要がある。
|
||||
.\" この機能はまだNmapに存在しない。この項は内容を追加するか削除する必要がある。
|
||||
.PP
|
||||
Nmapの実行中に、すべてのキープロセスをキャプチャする。これにより、停止して再開という手順を経ないでも、プログラムとの情報のやり取りが可能になる。特定の特殊キーで、オプションを変更する。その他のキーは、スキャンに関する情報を伝えるステータスメッセージを表示する。仕様としては、\fI小文字は書き出される情報量を増やし\fR、\fI大文字は減らす\fR。
|
||||
.PP
|
||||
@@ -888,28 +904,28 @@ Nmapの実行中に、すべてのキープロセスをキャプチャする。
|
||||
.sp
|
||||
Stats: 0:00:08 elapsed; 111 hosts completed (5 up), 5 undergoing Service Scan
|
||||
.sp
|
||||
Service scan Timing: About 28\.00% done; ETC: 16:18 (0:00:15 remaining)
|
||||
Service scan Timing: About 28\&.00% done; ETC: 16:18 (0:00:15 remaining)
|
||||
.RE
|
||||
.SH "使用例"
|
||||
.PP
|
||||
以下に、Nmapの使用例を、単純なものからやや複雑で難解なものまでいくつか示した。例で使用したIPアドレスやドメイン名は、あくまでも具体性を持たせることが目的であるため、実際のスキャンでは、それらを\fI自分のネットワーク\fRのアドレスまたはホスト名で置き換えることに注意する。筆者は個人的に、他人のネットワークに対してポートスキャンを実行することは違法行為には当たらないと見ているが、ネットワーク管理者のなかには、自分のネットワークを勝手にスキャンされるのを快く思わずに苦情を訴える者もいるかもしれない。最初に許可を得たほうが得策である。
|
||||
.PP
|
||||
ユーザには、テスト目的で、ホストscanme\.nmap\.orgをスキャンする許可が与えられている。この許可の対象は、Nmapによるスキャンに限定されるものであり、エクスプロイトやサービス妨害攻撃のテストは含まれない。帯域幅を節約するために、このホストに対するスキャンは、一日につき十数回以上は行わないようにすること。このフリーのスキャン対象提供サービスが悪用された場合、サービスは停止され、NmapはFailed to resolve given hostname/IP: scanme\.nmap\.org(指定したホスト名/IP:scanme\.nmap\.orgの解決に失敗しました)という報告を出す。これらの許可は、scanme2\.nmap\.org、scanme3\.nmap\.org等の各ホストにも適用されるが、これらのホストは、現在は存在しない。
|
||||
ユーザには、テスト目的で、ホストscanme\&.nmap\&.orgをスキャンする許可が与えられている。この許可の対象は、Nmapによるスキャンに限定されるものであり、エクスプロイトやサービス妨害攻撃のテストは含まれない。帯域幅を節約するために、このホストに対するスキャンは、一日につき十数回以上は行わないようにすること。このフリーのスキャン対象提供サービスが悪用された場合、サービスは停止され、NmapはFailed to resolve given hostname/IP: scanme\&.nmap\&.org(指定したホスト名/IP:scanme\&.nmap\&.orgの解決に失敗しました)という報告を出す。これらの許可は、scanme2\&.nmap\&.org、scanme3\&.nmap\&.org等の各ホストにも適用されるが、これらのホストは、現在は存在しない。
|
||||
.PP
|
||||
|
||||
\fBnmap \-v scanme\.nmap\.org\fR
|
||||
\fBnmap \-v scanme\&.nmap\&.org\fR
|
||||
.PP
|
||||
このオプションを利用すると、scanme\.nmap\.orgというマシン上の予約済みTCPポートすべてに対してスキャンを実行する。また、\fB\-v\fRが指定されているため、冗長モードが有効になる。
|
||||
このオプションを利用すると、scanme\&.nmap\&.orgというマシン上の予約済みTCPポートすべてに対してスキャンを実行する。また、\fB\-v\fRが指定されているため、冗長モードが有効になる。
|
||||
.PP
|
||||
|
||||
\fBnmap \-sS \-O scanme\.nmap\.org/24\fR
|
||||
\fBnmap \-sS \-O scanme\&.nmap\&.org/24\fR
|
||||
.PP
|
||||
scanme\.nmap\.orgが属している\(lqクラスC\(rqネットワーク上のマシン255台のうちで稼動している各マシンに対して、SYNスキャン(ステルススキャン)を実行する。また、稼動中の各ホスト上で動作しているOSの特定も同時に試行する。SYNスキャンとOSの検出を行うため、root権限が必要となる。
|
||||
scanme\&.nmap\&.orgが属している\(lqクラスC\(rqネットワーク上のマシン255台のうちで稼動している各マシンに対して、SYNスキャン(ステルススキャン)を実行する。また、稼動中の各ホスト上で動作しているOSの特定も同時に試行する。SYNスキャンとOSの検出を行うため、root権限が必要となる。
|
||||
.PP
|
||||
|
||||
\fBnmap \-sV \-p 22,53,110,143,4564 198\.116\.0\-255\.1\-127\fR
|
||||
\fBnmap \-sV \-p 22,53,110,143,4564 198\&.116\&.0\-255\&.1\-127\fR
|
||||
.PP
|
||||
198\.116のクラスBアドレス空間で、8ビットで表せる255のサブネットに属するホストのうち、前半(1\-127)のIPアドレスを持つホストに対して、ホストの列挙とTCPスキャンを行う。このスキャンを行う目的は、対象システムでsshd、DNS、POP3d、IMAPd、4564番ポートが動作しているかどうかを調査することだ。これらのポートのなかで開いている(open)ことが判明したポートすべてに対してバージョン検出を使用して、何のアプリケーションが動作しているかを特定する。
|
||||
198\&.116のクラスBアドレス空間で、8ビットで表せる255のサブネットに属するホストのうち、前半(1\-127)のIPアドレスを持つホストに対して、ホストの列挙とTCPスキャンを行う。このスキャンを行う目的は、対象システムでsshd、DNS、POP3d、IMAPd、4564番ポートが動作しているかどうかを調査することだ。これらのポートのなかで開いている(open)ことが判明したポートすべてに対してバージョン検出を使用して、何のアプリケーションが動作しているかを特定する。
|
||||
.PP
|
||||
|
||||
\fBnmap \-v \-iR 100000 \-P0 \-p 80\fR
|
||||
@@ -918,78 +934,113 @@ Nmapは100,000台のホストを無作為に選び、Webサーバ(80番ポート
|
||||
で無効にしてある。各ターゲットホスト上で1つのポートしか調査しないのに、どのホストが稼動中であるかを特定するためにプローブを送るのは無駄だからだ。
|
||||
.PP
|
||||
|
||||
\fBnmap \-P0 \-p80 \-oX logs/pb\-port80scan\.xml \-oG logs/pb\-port80scan\.gnmap 216\.163\.128\.20/20\fR
|
||||
\fBnmap \-P0 \-p80 \-oX logs/pb\-port80scan\&.xml \-oG logs/pb\-port80scan\&.gnmap 216\&.163\&.128\&.20/20\fR
|
||||
.PP
|
||||
4096個のIPをスキャンしてWebサーバを見つけ出し(pingなしで)、結果出力をgrep可能およびXMLフォーマットで保存する。
|
||||
.PP
|
||||
|
||||
\fBhost \-l company\.com | cut \-d \-f 4 | nmap \-v \-iL \-\fR
|
||||
\fBhost \-l company\&.com | cut \-d \-f 4 | nmap \-v \-iL \-\fR
|
||||
.PP
|
||||
company\.comに存在するホストを発見するためにDNSのゾーン転送を実行し、発見したIPアドレスをnmapに渡す。このコマンドは、筆者のGNU/Linuxマシンで使用しているものだ。他のシステムには、ゾーン転送を実行するための別のコマンドがある。
|
||||
company\&.comに存在するホストを発見するためにDNSのゾーン転送を実行し、発見したIPアドレスをnmapに渡す。このコマンドは、筆者のGNU/Linuxマシンで使用しているものだ。他のシステムには、ゾーン転送を実行するための別のコマンドがある。
|
||||
.SH "バグ"
|
||||
.PP
|
||||
Nmapも作者と同様に完全ではない。それでもNmapのほうは、ユーザによるバグの報告やパッチの作成のおかげで、よりよいものにしてゆくことができる。Nmapを使っていて、思い通りに動かない場合は、まず\fI\%http://www.insecure.org/nmap/\fRから入手できる最新のバージョンにアップグレードしてみる。問題が続くようなら、すでに発見・対処が行われた問題かどうかを調査して確かめる。エラーメッセージをGoogle検索したり、\fI\%http://seclists.org/\fRでNmap\-devアーカイブを閲覧したりしてみる。このmanページも全体に目を通した方がよい。それでもどうにもならない場合は、バグレポートを<nmap\-dev@insecure\.org>宛てにメールで送ること。メールには、使用しているNmapのバージョンと、Nmapを実行しているOSの名前とバージョンなどの情報だけでなく、問題に関して分かったことは何でも書いていただきたい。問題の報告やNmapの使い方についての質問などは、nmap\-dev@insecure\.org宛てに送るほうが、筆者宛てに直接送るよりも返事がある可能性ははるかに高い。
|
||||
Nmapも作者と同様に完全ではない。それでもNmapのほうは、ユーザによるバグの報告やパッチの作成のおかげで、よりよいものにしてゆくことができる。Nmapを使っていて、思い通りに動かない場合は、まず\m[blue]\fB\%http://www.insecure.org/nmap/\fR\m[]から入手できる最新のバージョンにアップグレードしてみる。問題が続くようなら、すでに発見・対処が行われた問題かどうかを調査して確かめる。エラーメッセージをGoogle検索したり、\m[blue]\fB\%http://seclists.org/\fR\m[]でNmap\-devアーカイブを閲覧したりしてみる。このmanページも全体に目を通した方がよい。それでもどうにもならない場合は、バグレポートをnmap\-dev@insecure\&.org宛てにメールで送ること。メールには、使用しているNmapのバージョンと、Nmapを実行しているOSの名前とバージョンなどの情報だけでなく、問題に関して分かったことは何でも書いていただきたい。問題の報告やNmapの使い方についての質問などは、nmap\-dev@insecure\&.org宛てに送るほうが、筆者宛てに直接送るよりも返事がある可能性ははるかに高い。
|
||||
.PP
|
||||
またバグレポートより、バグを修正するためのコードパッチのほうが歓迎される。ユーザ自身のコード変更によるパッチファイルの作成方法についての基本的な注意事項は\fI\%http://www.insecure.org/nmap/data/HACKING\fR
|
||||
またバグレポートより、バグを修正するためのコードパッチのほうが歓迎される。ユーザ自身のコード変更によるパッチファイルの作成方法についての基本的な注意事項は\m[blue]\fB\%http://www.insecure.org/nmap/data/HACKING\fR\m[]
|
||||
で参照できる。パッチは、nmap\-dev宛てに送る(推奨)か、筆者Fyodorまで直接送っていただきたい。
|
||||
.SH "作者"
|
||||
.PP
|
||||
Fyodor
|
||||
<fyodor@insecure\.org>
|
||||
(\fI\%http://www.insecure.org\fR)
|
||||
fyodor@insecure\&.org
|
||||
(\m[blue]\fB\%http://www.insecure.org\fR\m[])
|
||||
.PP
|
||||
ここ数年で何百人もの人々から、Nmapに対して貴重な貢献をしていただいた。この詳細については、Nmapとともに配布されている\fICHANGELOG\fRファイルを参照のこと。CHANGELOGファイルは以下からも入手できる:\fI\%http://www.insecure.org/nmap/nmap_changelog.html\fR
|
||||
ここ数年で何百人もの人々から、Nmapに対して貴重な貢献をしていただいた。この詳細については、Nmapとともに配布されているCHANGELOGファイルを参照のこと。CHANGELOGファイルは以下からも入手できる:\m[blue]\fB\%http://www.insecure.org/nmap/nmap_changelog.html\fR\m[]
|
||||
.SH "法的通知事項"
|
||||
.SS "著作権と使用許諾"
|
||||
.PP
|
||||
Nmapセキュリティスキャナの著作権は、Insecure\.Com LLCに帰属している(1996\-2005)。また、Nmapは、Insecure\.Com LLCの登録商標。このプログラムはフリーソフトウェアであり、Free Software Foundation(FSF)が発行するGNU一般公衆利用許諾契約書のバージョン2で定められている条件に従い、再配布、改変することが可能である。これは、特定の条件下でNmapを使用、改変、再配布する権利を保証するものである。Nmapの技術を独自仕様のソフトウェアに組み込むことを希望する場合は、喜んで別の形態のライセンスを販売する(その際は、<sales@insecure\.com>に連絡)。多くのセキュリティスキャナのベンダーは、ホスト発見、ポートスキャン、OS検出、サービス/バージョンの検出などの、Nmap技術のライセンスを受けている。
|
||||
Nmapセキュリティスキャナの著作権は、Insecure\&.Com LLCに帰属している(1996\-2005)。また、Nmapは、Insecure\&.Com LLCの登録商標。このプログラムはフリーソフトウェアであり、Free Software Foundation(FSF)が発行するGNU一般公衆利用許諾契約書のバージョン2で定められている条件に従い、再配布、改変することが可能である。これは、特定の条件下でNmapを使用、改変、再配布する権利を保証するものである。Nmapの技術を独自仕様のソフトウェアに組み込むことを希望する場合は、喜んで別の形態のライセンスを販売する(その際は、sales@insecure\&.comに連絡)。多くのセキュリティスキャナのベンダーは、ホスト発見、ポートスキャン、OS検出、サービス/バージョンの検出などの、Nmap技術のライセンスを受けている。
|
||||
.PP
|
||||
GPL(一般公有使用許諾)は、\(lq派生著作物\(rqに対して重要な制約を課していることに注意する必要がある。けれども、この用語の詳細な定義はいまだに与えられていない。ここでは誤解を避けるため、以下のいずれかの事項が行われた場合に、アプリケーションが、GPLにおける\(lq派生著作物\(rqを構成するものと見なす:
|
||||
.sp
|
||||
.RS 4
|
||||
\h'-04'\(bu\h'+03'Nmapのソースコードを統合する
|
||||
.ie n \{\
|
||||
\h'-04'\(bu\h'+03'\c
|
||||
.\}
|
||||
.el \{\
|
||||
.sp -1
|
||||
.IP \(bu 2.3
|
||||
.\}
|
||||
Nmapのソースコードを統合する
|
||||
.RE
|
||||
.sp
|
||||
.RS 4
|
||||
\h'-04'\(bu\h'+03'\fInmap\-os\-fingerprints\fR
|
||||
.ie n \{\
|
||||
\h'-04'\(bu\h'+03'\c
|
||||
.\}
|
||||
.el \{\
|
||||
.sp -1
|
||||
.IP \(bu 2.3
|
||||
.\}
|
||||
nmap\-os\-fingerprints
|
||||
や
|
||||
\fInmap\-service\-probes\fRなどの、Nmapの著作権のあるデータファイルを読み込む
|
||||
nmap\-service\-probesなどの、Nmapの著作権のあるデータファイルを読み込む
|
||||
.RE
|
||||
.sp
|
||||
.RS 4
|
||||
\h'-04'\(bu\h'+03'Nmapを実行して結果を解析処理する(通常のシェルや実行メニューのアプリケーションとは異なる。これらは未処理のNmap出力を単に表示するだけなので、派生著作物にはならない)
|
||||
.ie n \{\
|
||||
\h'-04'\(bu\h'+03'\c
|
||||
.\}
|
||||
.el \{\
|
||||
.sp -1
|
||||
.IP \(bu 2.3
|
||||
.\}
|
||||
Nmapを実行して結果を解析処理する(通常のシェルや実行メニューのアプリケーションとは異なる。これらは未処理のNmap出力を単に表示するだけなので、派生著作物にはならない)
|
||||
.RE
|
||||
.sp
|
||||
.RS 4
|
||||
\h'-04'\(bu\h'+03'InstallShield社の製品のような独自開発の実行可能インストーラに統合/組込/集約する
|
||||
.ie n \{\
|
||||
\h'-04'\(bu\h'+03'\c
|
||||
.\}
|
||||
.el \{\
|
||||
.sp -1
|
||||
.IP \(bu 2.3
|
||||
.\}
|
||||
InstallShield社の製品のような独自開発の実行可能インストーラに統合/組込/集約する
|
||||
.RE
|
||||
.sp
|
||||
.RS 4
|
||||
\h'-04'\(bu\h'+03'上で述べたことを行うような、ライブラリにリンクしたりプログラムを実行したりする
|
||||
.ie n \{\
|
||||
\h'-04'\(bu\h'+03'\c
|
||||
.\}
|
||||
.el \{\
|
||||
.sp -1
|
||||
.IP \(bu 2.3
|
||||
.\}
|
||||
上で述べたことを行うような、ライブラリにリンクしたりプログラムを実行したりする
|
||||
.RE
|
||||
.PP
|
||||
\(lqNmap\(rqという用語は、Nmapの一部あるいは派生物を含めるために用いられるべきである。このリストは排他的な性質のものではなく、一般的な例を用いて、派生著作物の解釈を明確にすることを意図したものである。これらの制約事項は、実際にNmapを再配布する場合にのみ適用される。例えば、Nmap向けの独自開発フロントエンドを作成して販売することには何ら支障はない。ただし、その製品を単体で配布することと、ユーザにNmapのダウンロード先として以下を示すことが必要である:\fI\%http://www.insecure.org/nmap/\fR
|
||||
\(lqNmap\(rqという用語は、Nmapの一部あるいは派生物を含めるために用いられるべきである。このリストは排他的な性質のものではなく、一般的な例を用いて、派生著作物の解釈を明確にすることを意図したものである。これらの制約事項は、実際にNmapを再配布する場合にのみ適用される。例えば、Nmap向けの独自開発フロントエンドを作成して販売することには何ら支障はない。ただし、その製品を単体で配布することと、ユーザにNmapのダウンロード先として以下を示すことが必要である:\m[blue]\fB\%http://www.insecure.org/nmap/\fR\m[]
|
||||
.PP
|
||||
われわれはこれらを、GPLにさらに追加された制約とは見なしていない。そうではなくて、\(lq派生著作物\(rq
|
||||
という用語がGPL準拠のNmap製品に適用される場合に、それをどのように解釈するかを明確にするためのものと見なしている。これは、Linus Torvalds氏が、Linuxカーネルモジュールに\(lq派生著作物\(rq
|
||||
がどのように適用されるかについての自分の解釈を表明したやり方に似ている。われわれの解釈はNmapだけに言及するもので、その他のGPL製品について述べているわけではない。
|
||||
.PP
|
||||
GPL準拠でない著作物におけるNmapの使用に対する、GPLライセンスによる制約について質問がある場合は喜んでお答えするつもりだ。上で述べたように、独自開発のアプリケーションやアプライアンスにNmapを統合するための代替ライセンスも提供している。このライセンス契約はすでに多くのセキュリティベンダに販売されており、その内容には通常、永久ライセンス、サポートやアップデートの優先提供、Nmap技術の開発継続のための資金援助などが含まれている。詳細については電子メールで<sales@insecure\.com>
|
||||
GPL準拠でない著作物におけるNmapの使用に対する、GPLライセンスによる制約について質問がある場合は喜んでお答えするつもりだ。上で述べたように、独自開発のアプリケーションやアプライアンスにNmapを統合するための代替ライセンスも提供している。このライセンス契約はすでに多くのセキュリティベンダに販売されており、その内容には通常、永久ライセンス、サポートやアップデートの優先提供、Nmap技術の開発継続のための資金援助などが含まれている。詳細については電子メールでsales@insecure\&.com
|
||||
に問い合わせていただきたい。
|
||||
.PP
|
||||
Insecure\.Com LLCは、GPLの取り決めに対する特例として、NmapのコードとOpenSSLライブラリとのリンクを認めており、この2つをリンクで組み合わせたものを配布している。OpenSSLライブラリは、同梱のCopying\.OpenSSLファイルにリストされたものと同一のライセンスのもとで配布されている。OpenSSL以外の使用されているすべてのコードに対しては、あらゆる点でGNU GPLに従わなければならない。このファイルの一部を変更する場合、そのファイルの自身のバージョンにこの例外を拡大して適用できるが、そのように行う義務を負うものではない。
|
||||
Insecure\&.Com LLCは、GPLの取り決めに対する特例として、NmapのコードとOpenSSLライブラリとのリンクを認めており、この2つをリンクで組み合わせたものを配布している。OpenSSLライブラリは、同梱のCopying\&.OpenSSLファイルにリストされたものと同一のライセンスのもとで配布されている。OpenSSL以外の使用されているすべてのコードに対しては、あらゆる点でGNU GPLに従わなければならない。このファイルの一部を変更する場合、そのファイルの自身のバージョンにこの例外を拡大して適用できるが、そのように行う義務を負うものではない。
|
||||
.PP
|
||||
上記の条件以外の条件が記載されたライセンス契約書とともにこれらのファイルを入手した場合、そのライセンス契約書は、ここで述べた内容に優先する。
|
||||
.SS "ソースコードの入手可能性とコミュニティへの寄与"
|
||||
.PP
|
||||
われわれは、ユーザーにこのプログラムのソースコードを提供している。その理由は、ユーザが実際にプログラムを実行する前に、そのプログラムがどんな動作を行うのかを正確に知る権利がある、と考えているからだ。また、ソフトウェアに対して脆弱性を見つけるための監査を行うこともできる(まだ1つも見つかったことはないが)。
|
||||
.PP
|
||||
ソースコードは、新しいプラットフォームへの移植、バグの修正、新しい機能の追加を可能にする。コードに何らかの変更を加えた場合は、主要ディストリビューションに組み込まれる可能性もあるため、その内容を<fyodor@insecure\.org>
|
||||
までぜひお送りいただきたい。ただし、変更したコードをFyodorまたはInsecure\.orgの開発用メーリングリストの1つに送信することで、そのコードを無制限かつ非独占的に再利用、改変、再ライセンスする権利をFyodorおよびInsecure\.Com LLCに提供するものと見なす。Nmapは常にオープンソースで利用できるようにする予定だが、これが重要なのは、コードのライセンス再発行ができなかったことで、他のフリーソフトウェア・プロジェクト(KDEやNSAMなど)に壊滅的な問題が発生したことがあったためである。また上で述べた通り、サードパーティに対してコードの再ライセンスを行こともある。自分が寄与したコードに特別なライセンス条件を指定したい場合は、コードの送信時にその旨を伝えて欲しい。
|
||||
ソースコードは、新しいプラットフォームへの移植、バグの修正、新しい機能の追加を可能にする。コードに何らかの変更を加えた場合は、主要ディストリビューションに組み込まれる可能性もあるため、その内容をfyodor@insecure\&.org
|
||||
までぜひお送りいただきたい。ただし、変更したコードをFyodorまたはInsecure\&.orgの開発用メーリングリストの1つに送信することで、そのコードを無制限かつ非独占的に再利用、改変、再ライセンスする権利をFyodorおよびInsecure\&.Com LLCに提供するものと見なす。Nmapは常にオープンソースで利用できるようにする予定だが、これが重要なのは、コードのライセンス再発行ができなかったことで、他のフリーソフトウェア・プロジェクト(KDEやNSAMなど)に壊滅的な問題が発生したことがあったためである。また上で述べた通り、サードパーティに対してコードの再ライセンスを行こともある。自分が寄与したコードに特別なライセンス条件を指定したい場合は、コードの送信時にその旨を伝えて欲しい。
|
||||
.SS "無保証"
|
||||
.PP
|
||||
このプログラムは、人々の役に立つことを期待して配布されているが、その保証は一切行わない。すなわち、商品適格性や特定目的への適合性の黙示保証は一切行わない。詳細については、GNU一般公有使用許諾契約書を参照のこと。GNU GPLは、
|
||||
\fI\%http://www.gnu.org/copyleft/gpl.html\fRから、またはNmapに同梱のCOPYINGファイルで参照できる。
|
||||
\m[blue]\fB\%http://www.gnu.org/copyleft/gpl.html\fR\m[]から、またはNmapに同梱のCOPYINGファイルで参照できる。
|
||||
.PP
|
||||
またNmapは、不完全なアプリケーション、TCP/IPスタック、OSなどをクラッシュさせることが確認されていることに注意すること。きわめてまれなこととはいえ、記憶に留めておく必要がある。ダウンタイムを受容する準備ができていない限り、\fINmapをミッションクリティカルなシステムに対して実行してはならない\fR
|
||||
。Nmapがシステムやネットワークに障害を与える可能性がある点については認めたうえで、Nmapの使用により発生しうるいかなる損害や問題に対しても一切の責任を負わないものとする。
|
||||
@@ -1001,15 +1052,15 @@ Insecure\.Com LLCは、GPLの取り決めに対する特例として、Nmapの
|
||||
.SS "サードパーティ ソフトウェア"
|
||||
.PP
|
||||
Nmapには、
|
||||
\fIApache Software Foundation\fR\&[8]
|
||||
によって開発されたソフトウェアが含まれており、改訂版の\fILibpcap portable packet capture library\fR\&[9]
|
||||
が、Nmapとともに配布されている。Windows版Nmapでは、libpcapより派生した\fIWinPcap ライブラリ\fR\&[10]が用いられる。正規表現のサポートは、Philip Hazel氏作成のオープンソースのソフトウェアである
|
||||
\fIPCRE ライブラリ\fR\&[11]パッケージで提供されている。特定のRAWネットワーク機能では、Dug Song氏作の\fILibdnet\fR\&[12]ネットワークライブラリが使用される。修正バージョンが、Nmapとともに配布されている。Nmapはオプションで、SSLバージョン検出をサポートするために、
|
||||
\fIOpenSSL 暗号化ツールキット\fR\&[13]
|
||||
\m[blue]\fBApache Software Foundation\fR\m[]\&\s-2\u[8]\d\s+2
|
||||
によって開発されたソフトウェアが含まれており、改訂版の\m[blue]\fBLibpcap portable packet capture library\fR\m[]\&\s-2\u[9]\d\s+2
|
||||
が、Nmapとともに配布されている。Windows版Nmapでは、libpcapより派生した\m[blue]\fBWinPcap ライブラリ\fR\m[]\&\s-2\u[10]\d\s+2が用いられる。正規表現のサポートは、Philip Hazel氏作成のオープンソースのソフトウェアである
|
||||
\m[blue]\fBPCRE ライブラリ\fR\m[]\&\s-2\u[11]\d\s+2パッケージで提供されている。特定のRAWネットワーク機能では、Dug Song氏作の\m[blue]\fBLibdnet\fR\m[]\&\s-2\u[12]\d\s+2ネットワークライブラリが使用される。修正バージョンが、Nmapとともに配布されている。Nmapはオプションで、SSLバージョン検出をサポートするために、
|
||||
\m[blue]\fBOpenSSL 暗号化ツールキット\fR\m[]\&\s-2\u[13]\d\s+2
|
||||
とリンクできる。ここで述べたすべてのサードパーティ・ソフトウェアは、BSD方式のソフトウェアライセンスのもとで、自由に再配布できる。
|
||||
.SS "米国輸出管理分類"
|
||||
.PP
|
||||
米国輸出管理:Insecure\.Com LLCでは、NmapはUS ECCN(輸出管理分類番号)5D992に該当すると考えている。5D992に分類されるものは、\(lq5D002で規制されない情報セキュリティソフトウェア\(rqとなっており、この分類に唯一適用される規制は、AT(テロ防止)規制である。ATは、ほぼすべての物品に適用され、イランや北朝鮮などの少数の無法国家への輸出を禁止する規制である。このため、Nmapの輸出には、特別なライセンスや許可、あるいは政府の承認を一切必要としない。
|
||||
米国輸出管理:Insecure\&.Com LLCでは、NmapはUS ECCN(輸出管理分類番号)5D992に該当すると考えている。5D992に分類されるものは、\(lq5D002で規制されない情報セキュリティソフトウェア\(rqとなっており、この分類に唯一適用される規制は、AT(テロ防止)規制である。ATは、ほぼすべての物品に適用され、イランや北朝鮮などの少数の無法国家への輸出を禁止する規制である。このため、Nmapの輸出には、特別なライセンスや許可、あるいは政府の承認を一切必要としない。
|
||||
.SH "NOTES"
|
||||
.IP " 1." 4
|
||||
RFC1122
|
||||
|
||||
Reference in New Issue
Block a user