ポートスキャンツールnmapの一般的なパラメータの説明
4586 ワード
転載は出典を明記してください.https://www.cnblogs.com/wangyanzhong123/p/12576406.html
nmapのダウンロードとインストール
これは何も言うことはありません.簡単な公式サイトでダウンロードすればOKですが、winPcapがnmapが持っているNpcapと衝突する可能性があることに注意してください.ここで私がダウンロードしたバージョンはNmap 7.80です.GUIインタフェースも提供されています(バグは多いですが).
nmapの基本命令
nmapのGUIを開くと、デフォルトの命令
-T<0/1/2/3/4/5>:時間テンプレートの設定
簡単に言えば、スキャン時間のレベルを調整することです.数字が大きいほど時間が速くなりますが、それに応じて他のものを犠牲にします.-T 0:paranoid、IDSアラームを避けることができて、速度は最も遅くて、1つの時間は1つのポートをスキャンして、各プローブメッセージの送信間隔は5分です.-T 1:sneaky,IDSアラームを回避でき,速度が遅く,プローブメッセージ送信間隔が15 sである.T 2:politeは、スキャン速度を低減し、帯域幅とターゲットホストリソースをより少なく使用でき、速度が遅く、プローブメッセージ送信間隔が0.4 sである.-T 3:normal,通常モード,何の変更も最適化も行わなかった.-T 4:aggressiveは、ユーザが適切で信頼性の高いネットワークを有してスキャンを加速すると仮定し、TCPポートに対して動的スキャン遅延が10 msを超えることを禁止し、一般的に信頼性の高いネットワークをスキャンする場合にこれを使用するのが好ましい.-T 5:insaneは,ユーザが特に速いネットワークを持っているか,速度のために正確性を犠牲にできるなどの他の要因があると仮定し,ターゲットホストをクラッシュさせる可能性がある.
スキャンターゲットの選択に関するオプション
-iL:1つのファイルからスキャンターゲット情報(IPアドレス、ホスト名、CIDR、IPv 6、または8バイト範囲)を入力します.ファイルの各項目は1つ以上のスペース、タブ、または改行で区切らなければなりません.たとえば、改行で区切られたIPアドレスを入力したファイルtest.txtを作成すると、nmapコマンド
-iR:ランダムに生成されたターゲットをスキャンします.hostnumが0の場合、無限のランダムスキャンを表します.慎重に使用してください.
--exclude:ホスト/ネットワークを除外します.スキャン中にスキャンしたいネットワーク/ホストがいくつかある場合は、このコマンドを使用して除外します.例えば、私のtest.txtには3つのIPアドレスがあります.今、
--excludefile:ファイル内のホスト/ネットワークリストを除外します.原理は上記と似ています.test.txtにIPアドレスがスキャンしたくない場合は、exclude.txtに配置し、適切な区切り記号で分割することができます.例を挙げると
ホスト/ネットワークの検出と検出
通常の
-sn:ポートスキャンなし、すなわちpingスキャンは、ターゲットが到達できるかどうかを検出するだけであり、例えば
--dns-servers:DNSサーバをポートスキャンに指定し、1つ以上のdnsサーバを指定すると、
スキャンモード
-sT:TCP全接続スキャンでは、ホストがターゲットポートと3回握手し、完全なTCP接続を確立します.この方式はスキャン速度が遅く、ネットワークトラフィックが大きく、発見されやすいです.例えば、
-sS:TCP SYNスキャン、ホストはターゲットポートにSYNメッセージを送信し、ターゲットポートが[ACK,SYN]を返した場合、ホストはRSTを送信して直接切断し、このスキャン方式は速度が速く、例えば
-sA:TCP ACKスキャン、ホストはターゲットポートにACKメッセージを送信し、ターゲットポートがRSTを返した場合、ターゲットポートがオープンであることを示し、この方法はファイアウォール、例えば
-sU:UDPスキャンは、UDPパケットをポートに送信することによって、どのUDPサービスがオンになっているかを判断します.UDPスキャンは通常、TCPスキャンよりも遅く、
-sN-sF-sX:これは3つの秘密走査方式であり、それぞれNULL走査、FIN走査、Xmas走査であり、それらは比較的隠蔽されており、プローブメッセージのフラグビットが異なる以外は、この3つの走査は動作的に完全に一致している.RSTメッセージが受信された場合、そのポートはオフであると見なされ、応答がないということは、ポートがオープンであるかフィルタリングされていることを意味し、これらのスキャンは
スキャンポートの設定
-p:スキャンポート範囲を設定し、スキャンポート範囲を設定するには、
--exclude-ports:スキャンで除外するポートを設定します.
-F:高速スキャンです.ここではnmap内蔵の最も一般的なポートテーブルに従ってスキャンします.スキャン数はデフォルトより少なく、時間も短くなります.例えば、
−r:通常、スキャン効率のために、ポートスキャンの順序はランダムであり、このパラメータは、スキャン順序を、例えば
--top-ports:nmapのポートテーブルで最も一般的な最初のnポート、例えば
バージョンとOSプローブ
-sV:ターゲットが実行するサービスのバージョンを検出します.たとえば、
-O:検出対象オペレーティングシステム、例えば
--host-timeout:パフォーマンスが劣っているか、信頼性の低いネットワークハードウェアやソフトウェア、帯域幅の制限、厳格なファイアウォールなどの理由で、一部のホストは長い時間スキャンを必要とします.これらのごく少数のホストスキャンは、スキャン時間の大部分を占めることが多い.そのため、最も良い方法は、時間の消費を減らし、これらのホストを無視し、--host-timeoutオプションを使用して待機時間(ミリ秒)を説明することです.--scan-delay:プローブメッセージの間隔を調整し、ファイアウォールを避けるために小さく設定します.
その他の一般的な設定
-v:出力情報の詳細を向上-A:オペレーティングシステム検出(-O)とバージョンスキャン(-sV)-6:IPv 6スキャンをデフォルトで開始する強力スキャンモードを起動します.
nmapのダウンロードとインストール
これは何も言うことはありません.簡単な公式サイトでダウンロードすればOKですが、winPcapがnmapが持っているNpcapと衝突する可能性があることに注意してください.ここで私がダウンロードしたバージョンはNmap 7.80です.GUIインタフェースも提供されています(バグは多いですが).
nmapの基本命令
nmapのGUIを開くと、デフォルトの命令
nmap -T4 -A -v
が与えられます.これも普段nmapを使用する過程で最もよく使われているいくつかの命令の一つですが、これらの命令のほかに、もっと多くのものを把握する必要があります.以下、徐々に紹介します.-T<0/1/2/3/4/5>:時間テンプレートの設定
簡単に言えば、スキャン時間のレベルを調整することです.数字が大きいほど時間が速くなりますが、それに応じて他のものを犠牲にします.-T 0:paranoid、IDSアラームを避けることができて、速度は最も遅くて、1つの時間は1つのポートをスキャンして、各プローブメッセージの送信間隔は5分です.-T 1:sneaky,IDSアラームを回避でき,速度が遅く,プローブメッセージ送信間隔が15 sである.T 2:politeは、スキャン速度を低減し、帯域幅とターゲットホストリソースをより少なく使用でき、速度が遅く、プローブメッセージ送信間隔が0.4 sである.-T 3:normal,通常モード,何の変更も最適化も行わなかった.-T 4:aggressiveは、ユーザが適切で信頼性の高いネットワークを有してスキャンを加速すると仮定し、TCPポートに対して動的スキャン遅延が10 msを超えることを禁止し、一般的に信頼性の高いネットワークをスキャンする場合にこれを使用するのが好ましい.-T 5:insaneは,ユーザが特に速いネットワークを持っているか,速度のために正確性を犠牲にできるなどの他の要因があると仮定し,ターゲットホストをクラッシュさせる可能性がある.
スキャンターゲットの選択に関するオプション
-iL:1つのファイルからスキャンターゲット情報(IPアドレス、ホスト名、CIDR、IPv 6、または8バイト範囲)を入力します.ファイルの各項目は1つ以上のスペース、タブ、または改行で区切らなければなりません.たとえば、改行で区切られたIPアドレスを入力したファイルtest.txtを作成すると、nmapコマンド
nmap -iL test.txt
を入力してファイル内のターゲットをスキャンすることができます.-iR:ランダムに生成されたターゲットをスキャンします.hostnumが0の場合、無限のランダムスキャンを表します.慎重に使用してください.
--exclude:ホスト/ネットワークを除外します.スキャン中にスキャンしたいネットワーク/ホストがいくつかある場合は、このコマンドを使用して除外します.例えば、私のtest.txtには3つのIPアドレスがあります.今、
192.168.1.121
をスキャンしたくない場合は、nmapコマンドnmap -iL test.txt --exclude 192.168.1.121
を入力できます.--excludefile:ファイル内のホスト/ネットワークリストを除外します.原理は上記と似ています.test.txtにIPアドレスがスキャンしたくない場合は、exclude.txtに配置し、適切な区切り記号で分割することができます.例を挙げると
nmap -iL test.txt --excludefile exclude.txt
です.ホスト/ネットワークの検出と検出
通常の
ping
命令と理解できますが、nmapには私たちの「ping」を実現するための他の方法があります.-sL:指定されたネットワーク上の各ホストをリストし、ターゲットホスト、例えばnmap -sL 192.168.1.1
にメッセージを送信しません.もちろん、多くのネットワークがこれを保護しています.何もスキャンできないかもしれません.-sn:ポートスキャンなし、すなわちpingスキャンは、ターゲットが到達できるかどうかを検出するだけであり、例えば
nmap -sn 192.168.1.112
であり、以前のバージョンでは、このコマンドは-sP
と呼ばれ、ローカルエリアネットワーク内では、ICMPメッセージを送信するのではなく、ARPメッセージをブロードキャストする可能性がある.--dns-servers:DNSサーバをポートスキャンに指定し、1つ以上のdnsサーバを指定すると、
nmap --dns-servers xxx.xxx.xxx.xxx -sn 192.168.1.112
などのスキャンを高速化できます.スキャンモード
-sT:TCP全接続スキャンでは、ホストがターゲットポートと3回握手し、完全なTCP接続を確立します.この方式はスキャン速度が遅く、ネットワークトラフィックが大きく、発見されやすいです.例えば、
nmap -sT 192.168.1.112
です.-sS:TCP SYNスキャン、ホストはターゲットポートにSYNメッセージを送信し、ターゲットポートが[ACK,SYN]を返した場合、ホストはRSTを送信して直接切断し、このスキャン方式は速度が速く、例えば
nmap -sS 192.168.1.112
で広く使用される.-sA:TCP ACKスキャン、ホストはターゲットポートにACKメッセージを送信し、ターゲットポートがRSTを返した場合、ターゲットポートがオープンであることを示し、この方法はファイアウォール、例えば
nmap -sA 192.168.1.112
を迂回するために使用することができる.-sU:UDPスキャンは、UDPパケットをポートに送信することによって、どのUDPサービスがオンになっているかを判断します.UDPスキャンは通常、TCPスキャンよりも遅く、
nmap -sS -sU 192.168.1.112
などのUDPスキャンとTCPスキャンを同時に行うことができます.-sN-sF-sX:これは3つの秘密走査方式であり、それぞれNULL走査、FIN走査、Xmas走査であり、それらは比較的隠蔽されており、プローブメッセージのフラグビットが異なる以外は、この3つの走査は動作的に完全に一致している.RSTメッセージが受信された場合、そのポートはオフであると見なされ、応答がないということは、ポートがオープンであるかフィルタリングされていることを意味し、これらのスキャンは
--scanflags
と組み合わせて使用することができ、そのパラメータはURG、ACK、PSH、RST、SYNなどであることができる.スキャンポートの設定
-p:スキャンポート範囲を設定し、スキャンポート範囲を設定するには、
nmap -sS -p 1-65535 192.168.1.112
がスキャン1から65535を表すなど、さまざまな方法があります.もちろん、nmap -sS -p U:53,111,137,T:21-25,80,139,8080 192.168.1.112
はUDPをスキャンする53111137ポートとTCPの21~25,80を表すなど、異なるプロトコルに基づいてより細かく指定することもできます.のTはTCPを表し、UはUDPを表し、SはSCTPを表し、PはIPプロトコルを表す.--exclude-ports:スキャンで除外するポートを設定します.
nmap -sS -p 1-65535 --exclude-ports 3306 192.168.1.112
など、上記と同様の使い方をします.-F:高速スキャンです.ここではnmap内蔵の最も一般的なポートテーブルに従ってスキャンします.スキャン数はデフォルトより少なく、時間も短くなります.例えば、
nmap -sS -F 192.168.1.112
です.−r:通常、スキャン効率のために、ポートスキャンの順序はランダムであり、このパラメータは、スキャン順序を、例えば
nmap -sS -r 192.168.1.112
のような低〜高の順序でスキャンすることができる.--top-ports:nmapのポートテーブルで最も一般的な最初のnポート、例えば
nmap -sS --top-ports 10 192.168.1.105
をスキャンします.バージョンとOSプローブ
-sV:ターゲットが実行するサービスのバージョンを検出します.たとえば、
nmap -sV 192.168.1.105
です.ターゲットホストポート番号が実行するサービスまたはソフトウェアのバージョンを検出します.-O:検出対象オペレーティングシステム、例えば
nmap -O 192.168.1.105
スキャン時間の設定--host-timeout:パフォーマンスが劣っているか、信頼性の低いネットワークハードウェアやソフトウェア、帯域幅の制限、厳格なファイアウォールなどの理由で、一部のホストは長い時間スキャンを必要とします.これらのごく少数のホストスキャンは、スキャン時間の大部分を占めることが多い.そのため、最も良い方法は、時間の消費を減らし、これらのホストを無視し、--host-timeoutオプションを使用して待機時間(ミリ秒)を説明することです.--scan-delay:プローブメッセージの間隔を調整し、ファイアウォールを避けるために小さく設定します.
その他の一般的な設定
-v:出力情報の詳細を向上-A:オペレーティングシステム検出(-O)とバージョンスキャン(-sV)-6:IPv 6スキャンをデフォルトで開始する強力スキャンモードを起動します.