· 12 min read
Port scanning is one of the most fundamental techniques in n
ポートスキャンは、ネットワークセキュリティとシステム管理における最も基本的な技術の一つです。侵入テストを実施するセキュリティ専門家、インフラストラクチャを強化するシステム管理者、接続の問題をトラブルシューティングする開発者のいずれであっても、安全で機能的なネットワークを維持するためにはポートスキャンの理解が不可欠です。
この包括的なガイドでは、基本的な概念から高度な技術、セキュリティへの影響、実用的なアプリケーションまで、ポートスキャンについて知っておくべきすべてのことを説明します。
ポートスキャンは、サーバーまたはホストのオープンポートを調査して、どのサービスが実行されており、悪用される可能性があるかを特定するプロセスです。建物のさまざまなドアをノックして、どのドアが開いていて、その向こうに何があるかを確認するようなものだと考えてください。
ウェブサイトに接続したり、メールを送信したり、ネットワーク経由でファイルを転送したりするとき、コンピュータはポートと呼ばれる特定の番号付きチャネルを通じて通信します。各ポートは特定のプロトコルまたはサービスに関連付けられており、ポートスキャンはこれらのチャネルのどれが接続を積極的にリッスンしているかを特定するのに役立ちます。
ポートスキャンにはいくつかの正当な目的があります:
プロのヒント: 所有していないネットワークをスキャンする前に、必ず書面による許可を取得してください。無許可のポートスキャンは違法である可能性があり、侵入検知システムをトリガーする可能性があります。
ポートスキャンを理解するには、まずネットワークポートがどのように機能するかを把握する必要があります。ポートは、0から65535までの番号で識別されるネットワーク通信の仮想エンドポイントです。
ポートは3つの範囲に分かれています:
サービスがネットワーク経由で通信したい場合、特定のポートで「リッスン」します。たとえば、ウェブサーバーは通常、HTTPトラフィック用にポート80で、HTTPSトラフィック用にポート443でリッスンします。ブラウザがウェブサイトに接続すると、これらのポートのいずれかにリクエストを送信します。
ポートを使用する主要なトランスポートプロトコルは2つあります:
TCP(Transmission Control Protocol): データ転送前に信頼性の高い接続を確立する接続指向プロトコル。TCPは接続を確立するために3ウェイハンドシェイク(SYN、SYN-ACK、ACK)を実行します。ほとんどのウェブトラフィック、メール、ファイル転送はTCPを使用します。
UDP(User Datagram Protocol): 接続を確立せずにデータを送信するコネクションレスプロトコル。UDPはTCPよりも高速ですが、信頼性は低くなります。ストリーミング、ゲーム、DNSクエリ、および保証された配信よりも速度が重要なその他のアプリケーションに使用されます。
各プロトコルには独自の65,536ポートのセットがあり、ポート80 TCPはポート80 UDPとは異なります。
どのサービスが通常どのポートで実行されるかを理解することは、セキュリティとトラブルシューティングの両方にとって重要です。最も一般的に使用されるポートの包括的な内訳は次のとおりです:
| ポート | プロトコル | サービス | 説明 |
|---|---|---|---|
20/21 |
TCP | FTP | ファイル転送プロトコル(データ/制御) |
22 |
TCP | SSH | リモートアクセス用のセキュアシェル |
23 |
TCP | Telnet | 暗号化されていないリモートアクセス(非推奨) |
25 |
TCP | SMTP | シンプルメール転送プロトコル |
53 |
TCP/UDP | DNS | ドメインネームシステム |
80 |
TCP | HTTP | ハイパーテキスト転送プロトコル |
110 |
TCP | POP3 | ポストオフィスプロトコル v3 |
143 |
TCP | IMAP | インターネットメッセージアクセスプロトコル |
443 |
TCP | HTTPS | HTTPセキュア(暗号化) |
3306 |
TCP | MySQL | MySQLデータベースサーバー |
3389 |
TCP | RDP | リモートデスクトッププロトコル |
5432 |
TCP | PostgreSQL | PostgreSQLデータベースサーバー |
当社のポートスキャナーツールを使用すると、任意のサーバーでどのポートが開いているかを迅速に確認でき、即座に結果とサービス識別が提供されます。
さまざまなポートスキャン技術は、ステルス性、速度、精度のレベルが異なります。これらの方法を理解することで、特定のニーズに適したアプローチを選択できます。
最も基本的で信頼性の高いスキャン方法。各ポートで完全なTCP 3ウェイハンドシェイクを完了します。接続が成功すればポートは開いており、拒否されればポートは閉じています。
利点: 特別な権限なしで動作し、非常に正確で、生のパケット操作を必要としません。
欠点: ファイアウォールや侵入検知システムに簡単に検出され、他の方法よりも遅く、ターゲットシステムに明確なログを残します。
SYNパケットを送信し、応答を待ちます。SYN-ACKを受信した場合、ポートは開いています。スキャナーはハンドシェイクを完了する代わりにRSTパケットを送信するため、完全な接続スキャンよりも「ステルス性」が高くなります。
利点: TCP接続スキャンよりも高速で、アプリケーションによってログに記録される可能性が低く、検出が困難です。
欠点: root/管理者権限が必要で、最新のIDS/IPSシステムによって検出される可能性があります。
ターゲットポートにUDPパケットを送信します。UDPはコネクションレスであるため、ポートの状態を判断することはより困難です。オープンポートは通常応答しませんが、クローズドポートはICMP「ポート到達不能」メッセージを返します。
利点: TCPスキャンが見逃すUDPサービスを発見し、完全なネットワークマッピングに不可欠です。
欠点: ICMPレート制限により非常に遅く、結果の信頼性が低く、オープンポートとフィルタリングされたポートを区別することが困難です。
これらのステルス技術は、異常なフラグの組み合わせを持つパケットを送信することにより、TCP RFCの動作を悪用します。クローズドポートはRSTパケットで応答する必要がありますが、オープンポートはそれらを無視する必要があります。
利点: 一部の単純なファイアウォールとパケットフィルターをバイパスできます。
欠点: Windowsシステムに対しては機能せず、結果が信頼できず、最新のファイアウォールによって簡単にブロックされます。
クイックヒント: ほとんどの正当な使用例では、標準のTCP接続スキャンが精度とシンプルさの最良のバランスを提供します。高度な技術は、特定のセキュリティテストシナリオのために保存してください。
すべてのオープンポートは、システムへの潜在的なエントリポイントを表します。セキュリティへの影響を理解することで、どのサービスを公開し、どのように保護するかについて情報に基づいた決定を下すことができます。
オープンポートは攻撃面を作成します—攻撃者が悪用できるすべての可能なエントリポイントの合計です。不要なオープンポートごとにリスクエクスポージャーが増加します:
| ポート/サービス | 一般的なリスク | 緩和策 |
|---|---|---|
21 (FTP) |
暗号化されていない資格情報、匿名アクセス、ディレクトリトラバーサル | SFTP/FTPSを使用し、匿名アクセスを無効にし、VPNに制限する |
| More Tools: seo-ioimg-kitrun-devgo-calc |