ポートスキャンの仕組み

TCPの場合

TCPの場合のポートチェックは、スリーウェイハンドシェイクの機能を
利用します。

まず、対象のサーバーにSYNフラグを立てたパケットを送信します。

対象サーバーで該当のポート番号がオープンであれば
(サービスが起動していれば)、サーバーは「SYN+ACK パケット」
返信します。

もしサービスが停止していてポートがクローズしていれば
「RST+ACK パケット」を返信します。

◯正常な場合

正常な場合

 

◯サービスが停止している場合

サービスが停止している場合

UDPの場合

UDPの場合、UDPパケットを該当サーバーに送信した時に、
何も返信がなければサービスが起動していると判断します。

もし、「ICMP port unreachable」のメッセージが返信されてきた場合は、
サービスが停止していてポートがクローズしていると判断します。

◯正常な場合

ネットワークサービスが正常な場合

 

◯サービスが停止している場合

ネットワークサービスが停止している場合

 

UDPの場合はTCPとは違って、パケットの到達性を保証することはしないため、
ネットワーク上でパケットフィルタリングされていた場合も、
パケットの返信がないためポートがオープンしていると
判断されてしまいますので、事前にパケットの到達性を確認しておくなどの
考慮が必要になります。

 

ポートチェックツール

最後に便利なポートチェックツールをいくつかご紹介しておきましょう。

Nmap
ポートチェックツールで最も有名なツールといえば nmap では
ないでしょうか。
ポートスキャンだけでなく、OSおよびバージョンの検出機能、サービスと
そのバージョンの検出機能など、多くの機能を兼ね備えているのが特徴です。

Nmapの使い方はこちらのサイトが分かりやすいです。
nmapの実用的コマンド10選

関連記事

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: