Netwrix 1Secureは、データとアイデンティティ全体にわたる統合された可視性を提供します。14日間の無料トライアルでフルアクセス可能です。無料トライアルを開始

リソースセンターブログ

オープンポートの脆弱性:完全なリストとセキュリティガイド

オープンポートの脆弱性:完全なリストとセキュリティガイド

Jan 21, 2025

露出しているすべてのポートは潜在的な侵入口です。攻撃者はSSH(22)、FTP(21)、Telnet(23)、SMB(445)、RDP(3389)などの開いているポートを継続的にスキャンし、未パッチのサービスや弱い認証情報を悪用してアクセスします。オープンポートの管理が不十分な組織は、強力なポート制御を行う同業者の2倍以上の侵害率に直面しており、インターネットに露出した未パッチのサービスが1つだけでも十分です。

侵入者が施設に侵入しようとするとき、まず“隙”を探します。オープンポートは、ハッカーや脅威アクターがデジタルネットワークへアクセスするために探す入口の一つです。そのオープンポートは、ファイアウォール、サーバー、またはネットワークに接続されたあらゆるコンピューティング機器上に存在する可能性があります。施錠されていないドアが1枚でもあれば、あなたのプライバシーが危険にさらされ、物理的な建物への立ち入りが許可されてしまうのと同様に、オープンポートが1つでもあると、ハッカーがあなたのシステムに侵入するための突破口になり、彼らの悪意ある意図にさらされることになります。

以下では、最も脆弱なポートと、それらを防ぐための重要なセキュリティ戦略を紹介します。

オープンポートの脆弱性の概要

ネットワーク内で開いているポートは脆弱性です。これは、許可されていないアクセスがファイアウォールやその他のセキュリティ対策を回避してネットワークに侵入するための潜在的な侵入口となります。侵入されると、攻撃者は望む攻撃を仕掛けたり、偵察を行って組織をより詳しく把握し、どのように悪用できるかを学んだりできます。オープンポートは大きな セキュリティリスク をもたらすため、セキュリティ管理において最優先事項にすべきです。

オープンポートを保護することの重要性

攻撃に対する脆弱性を減らすには、攻撃対象領域(attack surface)を減らす必要があります。これは、システム内で開いているポートの数を減らすことで実現できます。たとえば、外部からの Remote Desktop Protocol (RDP, port 3389) 接続を許可すると、正当なユーザーが社外から企業ネットワークにアクセスできるようになります。とはいえ、脅威アクターにとっては、開放された RDP ポートを探して積極的に悪用するための機会にもなります。

ポートとは何ですか?

定義と目的

ポートは、特定のサービスやアプリケーションに対するネットワーク通信を受け入れる「仮想の入口」として捉えることができます。各ポートはほかと区別するために、固有の番号によって識別されます。これらのポートは、割り当てられた管理者が管理でき、特定の種類の通信を許可または遮断するために、ポートを開閉します。たとえば、Web の通信はポート 80 と 443 に依存しています。外部ユーザー向けに Web アプリケーションをホストしているサーバーがある場合、そのユーザーにアクセス権を付与するために、これらのポートを開ける必要があります。使用していないポートはすべて閉じるべきです。

ポートの種類:TCP と UDP

ポート番号と組み合わせて最も一般的に使われる転送(トランスポート)プロトコルは、Transmission Control Protocol(TCP)とUser Datagram Protocol(UDP)です。ソフトウェアやサービスはTCPまたはUDPを使用するように設計され、指定されたポート番号が割り当てられます。

  • TCP は、再送信とエラー回復が組み込まれたコネクション指向のプロトコルです。TCP は通常、より信頼性の高いプロトコルです。
  • UDP  は、コネクションレスのプロトコルで、メッセージのエラーを回復または訂正しません。「best effort(最善の努力)」プロトコルとして知られています。

ポートの状態

TCP と UDP のポートは、必要に応じて次の 3 つの状態のいずれかになります:

  • オープン — ポートが接続要求に応答します。
  • クローズド — ポートに到達できず、対応するサービスが実行されていないことを示します。
  • フィルタリング — ファイアウォールがトラフィックを監視し、特定ポートへの接続要求をブロックします。

開放ポートに関連するセキュリティリスク

脅威の主体は、開放ポートを使って攻撃を実行し、脆弱性を悪用します。以下では、悪意のある攻撃者が悪用することの多い一般的なエクスプロイトや攻撃をいくつか紹介し、その後、開放ポートの脆弱性を通じて行われた有名な攻撃を2件詳しく説明します。

よくあるエクスプロイトと攻撃

  • 開かれた RDP 接続 は、サーバーにアクセスしたり、ランサムウェアのペイロードを配信したりするために、クレデンシャル・スタッフィング攻撃を開始するのに悪用できます。
  • サービス拒否(DoS)攻撃 は、さまざまなマシンから多数の接続要求を送り、特定のサービスを妨害します。典型的な例としては、Web サーバーのWebポートを狙い、帯域幅とリソースを消費させることで、正規のユーザーがサービスにアクセスできないようにすることが挙げられます。
  • Web サービスポート は、アプリケーション自身の脆弱性を悪用するために、SQL インジェクションやクロスサイト・リクエスト・フォージェリなどの攻撃を仕掛ける入口として、一般的に使用されます。
  • 中間者攻撃(Man-in-the-middle attacks) は、よく知られたポートの暗号化されていないデータ通信に入り込んで、機密情報を収集するために使われることがあります。例として、データ通信を再ルーティングして電子メールの通信を傍受するケースが挙げられます。

事例研究:WannaCry、RDP Pipe Plumbing

有名な攻撃の1つが、WannaCry Ransomware attack 2017年に開始されたものでした。この攻撃は世界規模で実行され、150か国にまたがって30万台以上のコンピューターに影響を与えました。攻撃は、445ポートのSMBプロトコルにある脆弱性を悪用していました。攻撃者が組織に侵入すると、そのファイルを暗号化し、身代金の支払いを要求しました。

RDP Pipe Plumbing は、Remote Desktop Protocol における Windows の名前付きパイプ(Windows-named pipes)を悪用する脆弱性です。攻撃者は、RDP の 3389 ポートを狙って、正規のものと同じ名前の偽のパイプサーバー・インスタンスを作成します。そして、その偽のパイプを用いて、RDP クライアントとサーバー間の通信を傍受します。この中間者攻撃(man-in-the-middle)により、クリップボードの内容やファイル転送などの機微なデータへの不正アクセスが可能になります。

脆弱なポートとそのリスク

以下は、オープンポートの脆弱性の一覧です。どれが悪用されやすいかを学ぶためにお読みください。

ポート 21 の脆弱性(FTP)

ファイル転送プロトコル(File Transfer Protocol、FTP)はポート 21 が割り当てられています。FTP により、ユーザーはサーバーとの間で暗号化されていない通信によってファイルを送受信できます。FTP は時代遅れで安全でないと考えられており、特に機密データを含むいかなるファイル転送にも使用すべきではありません。FTP は、以下のいずれかの方法で容易に悪用され得るためです:

  • パスワードの総当たり攻撃
  • 匿名認証(FTP ポートに対して、ユーザー名とパスワードに「anonymous」を指定してログインできる場合があります)
  • クロスサイトスクリプティング
  • ディレクトリトラバーサル攻撃
  • 中間者攻撃(Man-in-the-middle)

ポート22の脆弱性(SSH)

ポート22は Secure Shell 接続に一般的に使用されます。接続が暗号化されるため、Telnetよりも推奨されています。リモート管理によく使われるポート22は、安全なリモートアクセス を確保するためのTCPポートです。セキュリティが強化されているにもかかわらず、いくつかの基本的な脆弱性が依然としてあります:

  • 漏えいした SSH キー。SSHキーが適切に保護されていない場合、攻撃者がアクセスして必要なパスワードなしで侵入できてしまいます。
  • 認証情報の総当たり攻撃(Brute-forcing)。開いている SSH ポートは見つけやすいため、攻撃者がユーザー名とパスワードの組み合わせを推測できます。

ポート 23 の脆弱性(Telnet)

Telnet はポート 23 を使用する TCP プロトコルです。スイッチ、ルーター、サーバーなどのコマンドラインインターフェイスを備えたリモート機器に接続します。FTP と同様に、Telnet は暗号化されておらず、古く、セキュリティ上も不安全と考えられています。Telnet は SSH に置き換えられました。代表的な脆弱性には次のようなものがあります:

  • 認証情報の総当たり攻撃。攻撃者は、開いているポートの脆弱性を悪用して、露出しているサービスに対して繰り返しログイン試行を行い、認証情報を推測して不正アクセスを得ようとします。
  • なりすまし(スプーフィング)と認証情報の盗聴(スニッフィング)。開放されたポートは、攻撃者に対してサービスを露出させる可能性があります。攻撃者はそれを悪用して通信中に合法的な主体になりすまし、認証情報を傍受して盗み取ることがよくあります。

ポート 25 の脆弱性(SMTP)

ポート 25 は、電子メールの送受信に Simple Mail Transfer Protocol (SMTP) で使用されています。SMTP は、サイバーセキュリティが大きな懸念ではなかった時期に開発されたため、第三者のセキュリティソリューションがなくても簡単に悪用され得ます。適切な設定と保護がない場合、この TCP ポートは次のような脅威に対して脆弱です:

  • なりすまし(Spoofing)。攻撃者はメールヘッダーを偽造して、メッセージが信頼できる送信元から送られてきたように見せかけることができます。
  • スパム送信。保護されていない SMTP サーバーは悪用され、大量の迷惑メール(未承諾メール)を送信するために利用されることがあります。その結果、システムが圧倒されて動かなくなったり、マルウェアが拡散されたりすることがよくあります。
  • 中間者攻撃(Man-in-the-middle)。特に、メールそのものが平文で送信される場合に起こりやすくなります。

ポート 53 の脆弱性

ポート 53 は Domain Name System(DNS)に使用されており、facebook.com や linkedin.com のような人間が読めるドメイン名を IP アドレスに変換します。DNS はインターネット通信に不可欠で、クエリと転送のそれぞれに UDP と TCP の両方を使用して動作します。このポートは特に Distributed Denial of Service(DDoS)攻撃に対して脆弱で、攻撃者が大量の要求で DNS サーバーを圧倒し、サービスが中断される可能性があります。

  • DDoS 攻撃。これは、攻撃者が大量のパケットをサーバーに送りつけて処理を圧倒し、サービスの中断を引き起こそうとする一般的な攻撃です。この攻撃にはいくつかの種類があり、dDoS(distributed denial of service)や DNS アンプ(amplification)攻撃などがあります。

ポート 137 および 139(NetBIOS over TCP)と 445(SMB)の脆弱性

ポート 137 および 139(NetBIOS over TCP)と 445(SMB)は、Windows 環境でのファイル共有やネットワーク通信によく関連しています。とはいえ、これらは複数のセキュリティ脅威に対して脆弱であることも知られています:

  • EternalBlue エクスプロイト。この攻撃は、古いバージョンの Microsoft コンピューターに存在する SMBv1 の脆弱性を悪用します。2017 年に世界規模で発生した WannaCry ランサムウェア攻撃をきっかけに、広く知られるようになりました。
  • NTLM ハッシュのキャプチャ。攻撃者は NTLM ハッシュを傍受してキャプチャし、それを使用して正当なユーザーとして認証できます。
  • SMB ログイン認証情報の総当たり攻撃。攻撃者は、正しい認証情報が見つかるまで、さまざまなユーザー名とパスワードの組み合わせを系統的に試すことで、アクセスを得ようとする場合があります。

ポート 80、443、8080、8443 の脆弱性(HTTP および HTTPS)

Web ページを閲覧したことがある人は誰でも、Web ブラウザーで HTTP または HTTPS のプロトコルを使用しています。前述のとおり、Web ポートは、多くの種類の攻撃において攻撃者からよく狙われます。たとえば:

  • クロスサイトスクリプティング。 攻撃者は、Cookie、トークン、またはデータを盗むために、Web ページやアプリケーションに悪意のあるスクリプトを注入します。
  • SQL インジェクション。攻撃者は入力フィールドに悪意のある SQL コードを挿入し、データベースを操作します。
  • クロスサイト リクエスト フォージェリ。攻撃者は、ユーザーのWebブラウザーとWebアプリケーションの間にある信頼関係を悪用して、ユーザーが知らない、または同意していない状態でWebサイト上の操作を行うように欺きます。
  • DDoS 攻撃

ポート 1433、1434、3306 の脆弱性(データベースで使用)

これらは SQL Server と MySQL のデフォルトのポートです。これらは、次を含むさまざまな悪意のある行為を実行するために使用されます:

  • マルウェアの配布。攻撃者はオープンポートを使用してネットワークに侵入し、システムを侵害したり、データを盗んだり、インフラを損傷したりする可能性のある悪意のあるソフトウェアを配布します。
  • DDoS のシナリオ。 オープンポートの脆弱性が悪用され、分散型サービス拒否(Distributed Denial of Service(DDoS))攻撃で大量のトラフィックによりサービスを圧倒し、システムを使用不能にします。
  • 悪用可能なデフォルト設定を持つ保護されていないデータベースを見つける。オープンポートによって、弱い設定またはデフォルト設定のデータベースが公開される可能性があり、攻撃者はそれを効率的に悪用して不正アクセスを取得し、機密情報を操作または窃取できます。

ポート 3389 の脆弱性(Remote Desktop)

  • リモート デスクトップ プロトコル(Remote Desktop Protocol)の脆弱性により、RDP はブルートフォース攻撃や中間者攻撃にさらされます。

• BlueKeep の脆弱性(CVE-2019-0708)は、Windows 7 や Windows Server 2008 などの古い Microsoft オペレーティングシステムに見つかる RDP の脆弱性です。BlueKeep は、ユーザーの介入なしに組織内へマルウェアを拡散するために悪用できます。

開放ポートを保護する手順

暗号化されていないポートより、暗号化されたポートを優先する

IP ベースの環境で使用される通常のサービスの多くは、従来の平文(元の)プロトコルに対する暗号化バージョンを現在では備えています。情報がケーブルを通じて送信される際にデータ漏えいを防ぐため、暗号化バージョンへ切り替えるのが良い実践です。

定期的なパッチ適用とアップデート

パッチ適用により、システムとファイアウォールを最新の状態に保てます。ベンダーは定期的にパッチをリリースし、サイバー犯罪者があなたのシステムやデータに対する完全なアクセスを獲得するために悪用し得る、製品内の脆弱性や欠陥を修正します。

ポートスキャンツール

ポートも定期的にスキャンして確認する必要があります。主な方法は3つあります:

  • コマンドラインツール。 ポートを手作業でスキャンして確認する時間がある場合は、コマンドラインツールを使って開いているポートを特定し、スキャンしてください。例として Netstat や Network Mapper などがあり、Windows や Linux を含むさまざまなOSにインストールできます。
  • ポートスキャナー。 より速い結果が必要なら、ポートスキャナーの使用を検討してください。コンピュータプログラムが、ポートが開いているか、閉じているか、またはフィルタされているかを確認します。手順は簡単です。スキャナーは、特定のポートに接続するためのネットワーク要求を送信し、応答を取得します。
  • 脆弱性スキャンツール。 脆弱性スキャンツールは、サーバー、デスクトップ、ネットワーク機器などの IT 資産を識別して棚卸しし、セキュリティ上の弱点を検出する自動化アプリケーションです。設定ミスや欠陥のあるプログラミングによって生じる既知の脆弱性をスキャンします。これらのスキャン結果は、組織のリスク水準に関する貴重な洞察を提供し、効果的な緩和(対応)戦略の推奨に活用できます。

サービス設定の変更を監視する

サーバー、ファイアウォール、スイッチ、ルーター、およびその他のネットワーク機器に対して行われた設定変更を常に把握しておくことは重要です。これらの変更によって脆弱性が生じる可能性があるためです。このような変更は、偶発的に発生することもあれば、意図的に行われることもあります。Netwrix Change Trackerを使用することで、不正な変更やその他の疑わしいアクティビティを追跡し、システムを強化できます。特に、以下の機能を提供します。

  • 設定変更に関する実用的なアラート
  • すべての変更を自動的に記録、分析、検証、確認する
  • リアルタイムの変更監視
  • 継続的なアプリケーション脆弱性の監視

侵入検知・防止システム(IDPおよびIPS)の使用

IDS はネットワークトラフィックを監視して、不審な活動の兆候や既知の脅威を検出します。一方 IPS はさらに一歩進んで、検出した脅威をブロックします。どちらも、SQL インジェクション、DDoS 攻撃、その他のサイバー脅威など、開放ポートを狙う一般的なエクスプロイトを防ぐことができます。

SSH キーの導入

SSH キーは、ブルートフォース攻撃、フィッシング、そして人的ミスに対する脆弱性が低くなります。これらの暗号化されたキーにより、ユーザーがパスワードを覚えて入力する必要がなくなるため、開放されたポートを通じた不正アクセスの可能性が低減されます。SSH キーには 2 種類あります:

  • ユーザーを識別してアクセスを許可するプライベートキー(またはIDキー)
  • 誰がシステムにアクセスできるかを決める公開キー(または認可キー)

ペネトレーションテストと脆弱性評価の実施

ペネトレーションテストと脆弱性評価は、それぞれ異なるアプローチを用いますが、IT インフラ内の脆弱性を見つけるために活用すべきです。ペネトレーションテスト(ペンテスト)は、セキュリティの専門家が、コンピューターシステムまたはネットワークに対してサイバー攻撃をシミュレートし、脆弱性を特定して悪用するために実施します。これは、攻撃がどのようにしてあなたのネットワークへ能動的に侵入する可能性があるかを示します。一方、脆弱性評価は、既知の脆弱性を識別し、優先順位を付ける自動スキャンです。これらを組み合わせることで、ポートに関する脆弱性を包括的に要約できます。

ポートセキュリティのベストプラクティス

  • 外部の攻撃対象領域を評価します。 攻撃者が悪用できる可能性のあるオープンポートを特定し、適切に保護することで、ネットワークが外部の脅威にどの程度さらされているかを定期的に評価してください。すべてのオープンポートが必要であることを確認します。廃止(deprecated)されたアプリケーションやサービスに関連するポートは、直ちに閉じてください。
  • 新たなリスクに対する継続的な監視。 継続的かつ 幅広い監視 を実施して、オープンポートに関連する新しい脆弱性や脅威を検出します。必要に応じて、迅速に対応し、被害の軽減(ミティゲーション)を行ってください。
  • オープンポートのパフォーマンスを評価(ランク付け)します。 すべてのオープンポートについて、セキュリティと機能を定期的に見直し、評価してください。オープンポートが指定された内部ターゲットに適切にマッピングされていること、また該当するすべてのリソースに最小権限が適用されていることを確認します。
  • 一貫したパッチスケジュールを守ります。 定期的なパッチ適用は、大きなセキュリティ上の効果につながります。セキュリティ関連のすべてのパッチが、リリース直後に展開されるようにしてください。
  • 設定ミスがあり、未パッチで、脆弱なサービス。 未パッチまたは誤って設定されたシステムは、侵害されたシステムにつながる可能性があります。すべての設定がベストプラクティスのセキュリティ手法に従っていることを確認してください。構成変更が発生したときにネットワークサポート担当者へ通知するための監視システムを導入してください。

結論

開放ポートは両刃の剣のようなものです。一方では、Webページ、アプリケーション、サービスを有効にするために、ビジネス運用に不可欠です。 他方では、脅威アクターが侵入してネットワークを悪用するための機会にもなります。 そのため、開放ポートの管理と監視はネットワークセキュリティにおける重要な側面であり、決して過小評価できません。組織には、すべての開放ポートを確保するための手順を示すポリシーと、すべてのシステムおよびソフトウェアを定期的に更新することを徹底するための方針を用意しておくべきです。Telnet や FTP などの安全でないポートは廃止し、最新のセキュア技術を活用する現代的なソリューションに置き換えてください。定期的な評価を実施して、すべての開放ポートが必要であることを確認し、設定がベストプラクティスに従っていることを確実にしてください。技術の進化に伴って、ポート要件も変化することを忘れないでください。適切な戦略と重点をもって取り組めば、開放ポートはビジネスをより大きなリスクにさらす脆弱性ではなく、動作する資産として維持できます。

ネットワークセキュリティのガイドを入手する

ネットワークを保護し、侵害を防ぎ、進化し続けるサイバー脅威にいち早く対応するための専門的なガイダンス

詳しく見る

オープンポートはネットワークを機能させるものです。ウェブサーバーがトラフィックを受け入れ、リモート管理者が接続し、ビジネスアプリケーションが通信できるようにします。また、脅威アクターが最初にスキャンする対象でもあります。

オープンポートは運用に不可欠です。重要なのは、どのポートがリスクを伴い、どのような攻撃を可能にし、どのように露出を制御するかを理解することです。このガイドでは、一般的に使用される最も脆弱なポート、これらを狙った攻撃手法、および攻撃対象領域を減らすための手順を説明します。

オープンポートとは何ですか?

攻撃者は自動化ツールを使用してインターネット上の公開サービスを調査します。パッチ未適用のサービスが稼働しているポート、誤設定されたプロトコル、または弱い認証情報を見つけると、ネットワーク内部への直接的な経路を得ます。Verizon 2026 Data Breach Investigations Reportによると、初期アクセスベクターとしての脆弱性の悪用は前年比で55%増加し、侵害の31%を占めています。

ポートの種類

TCPとUDPはポートが使用する2つのトランスポートプロトコルです。違いを理解することは、ネットワークの露出を評価し制御する上で重要です。

TCP

ポートは、ネットワークトラフィックをデバイス上の適切なサービスやアプリケーションにルーティングする仮想通信エンドポイントです。すべてのネットワーク接続されたデバイスには、番号で識別される最大65,535のTCPポートと65,535のUDPポートがあります。管理者は、正当なサービスに必要なポートのみを開き、残りは閉じるかフィルタリングして、どのポートが受信接続を許可するかを制御します。

ポート80はHTTPウェブトラフィックを処理します。ポート443はHTTPSを処理します。ポート22はSSH接続を処理します。サービスが稼働していてポートが開いている場合、ネットワーク内の任意のデバイス、またはポートが外部に公開されている場合はインターネット上のデバイスが接続を試みることができます。

UDP

ポート状態の種類

TCPはコネクション指向です。データ転送前に検証済みの接続を確立し、組み込みのエラー検出と再送機能を含み、配信を保証します。信頼性が必要なほとんどのサービス(ウェブ閲覧、ファイル転送、リモートアクセスなど)はTCP上で動作します。

TCPおよびUDPポートは3つの状態のいずれかにあります:

UDPはコネクションレスです。配信確認なしにデータを送信し、オーバーヘッドを減らして速度を向上させます。DNSルックアップ、ストリーミング、VoIPなど、配信保証よりもパフォーマンスを優先するサービスで一般的にUDPが使われます。

  • 開いている: ポートは接続要求を受け入れ、サービスがアクティブに待機しています。
  • フィルタリング済み: ファイアウォールが接続試行をブロックするため、応答はリクエスターに届きません。

なぜ開放ポートがセキュリティリスクなのか

  • 閉じている: ポートには到達可能ですが、サービスは実行されていません。OSはTCP RST(リセット)パケットで応答するため、試行は沈黙ではなく明示的な拒否を受けます。

閉じたポートは既知のものです。フィルタリングされたポートは攻撃者に何も明かしません。リスクは、誤ったサービスが背後にある開いたポートにあります。

オープンポートは、インターネットからインフラ上で稼働しているサービスへの直接通信チャネルです。リスクは測定可能で増加しており、財務結果に直接結びついています。

攻撃者は開いているポートを継続的にスキャンします

ポートの悪用が増加しています

弱いポートの状態は侵害リスクを直接予測します

Netwrix Change Trackerは、すべてのファイアウォールルールの変更、サービス構成の更新、およびネットワークアクセスポリシーの変更を、前後の完全なコンテキストとともに記録します。デモを入手する

オープンポートの脆弱性ケーススタディ

自動スキャンツールは数時間以内にIPv4アドレス空間全体を調査します。ShodanやCensysのようなプラットフォームは露出したサービスを継続的にインデックス化しており、対応するファイアウォール制限なしに開かれたポートは数分で発見される可能性があります。攻撃者は特定の組織を狙う必要はありません。大規模にスキャンし、脆弱なバージョンを実行しているサービスを特定し、応答するIPを攻撃します。次回の定期監査で見つかる誤設定されたポートは、すでに数千件の不正接続試行にさらされているかもしれません。

Bitsightの調査によると、オープンポートの評価が低い組織は、強力なポート制御を持つ組織よりもデータ侵害を経験する可能性が2倍以上高いことがわかりました。財務リスクは現実のものです。Netwrix Cybersecurity Trends Report 2025によると、75%の組織がセキュリティ攻撃による財務被害を報告し、13%が20万ドル以上の損失を見積もっています。

WannaCry:SMBポート445と未修正の脆弱性のコスト

RDP Pipe Plumbing:ポート3389での中間者攻撃

実際の事例は、適切な制御なしにインターネットにさらされた未パッチのサービスを持つ開放ポートで何が起こるかを示しています。ポート445と3389への2つの攻撃は、ネットワークセキュリティで最も参照されるものの一つです。

ネットワークサービスを狙った攻撃が増加しています。Netwrix Cybersecurity Trends Report 2025によると、過去1年間で28%の組織がオンプレミスインフラへの標的型攻撃を受けており、2023年の19%から増加しています。より広く見ると、51%が過去12か月間にセキュリティチームによる専用対応を必要とするセキュリティインシデントを確認しています。attack surfaceを減らすには、どのサービスにアクセス可能かを管理し、それぞれがパッチ適用され正しく設定されていることを確認することから始まります。

脆弱な開放ポートとそれに関連するリスク

ポート21(FTP)

RDP Pipe Plumbingはポート3389を介してWindowsのnamed pipesを悪用します。攻撃者は正当な名前と一致する偽のパイプサーバーインスタンスを作成し、RDP通信を傍受してクリップボードの内容やファイル転送などのデータを取得します。この中間者攻撃手法は、実行にアクセス可能なRDPポートのみを必要とします。

以下のポートは攻撃データで一貫して高リスクの露出ポイントとして現れます。それぞれのポートの役割、脆弱性の理由、およびそれを狙った具体的な攻撃手法を説明しています。

2017年5月のWannaCry ランサムウェア攻撃は、オープンポートの悪用における最も重大な事例の一つとして残っています。攻撃者はEternalBlueエクスプロイトを使用してポート445のSMBv1を標的とし、ユーザーの操作なしに150か国以上の30万台を超えるシステムにランサムウェアを拡散しました。被害が可能だったのは、公開されたSMBポートがインターネットからアクセス可能であり、基盤となるプロトコルに未修正の重大な脆弱性があったためです。

ファイル転送プロトコルは制御コマンドにポート21を、データ転送にポート20を使用します。FTPは資格情報を含むすべてのデータを暗号化やサーバー検証なしで平文で送信します。これは時代遅れとされており、まだFTPを使用している組織はSFTPまたはFTPSに移行すべきです。

  • ブルートフォース攻撃: 自動化ツールがFTPサービスに対してユーザー名とパスワードの組み合わせを体系的に試行し、有効な資格情報が見つかるまで続けます。
  • 資格情報の傍受: FTPはユーザー名とパスワードをプレーンテキストで送信します。ネットワークトラフィックにアクセスできる攻撃者は、積極的な悪用なしに資格情報を取得できます。
  • 匿名認証の悪用: 多くのFTPサーバーはデフォルトでユーザー名とパスワードの両方に「anonymous」を受け入れ、認証されていないファイルアクセスを許可します。

ポート22(SSH)

  • ディレクトリトラバーサル: 攻撃者はFTPルートディレクトリの外側に移動し、基盤となるシステムのファイルにアクセスするために、細工されたファイルパスリクエストを送信します。

ポート23(Telnet)

  • SSHキーの盗難: 盗まれたか不適切に保管された秘密鍵は、対応する公開鍵を信頼する任意のシステムへの完全なアクセスをパスワードなしで許可します。
  • SSHトンネリングの悪用: 初期アクセスを持つ攻撃者は、SSHポートフォワーディングを使用してファイアウォールの制御を回避する暗号化トンネルを作成し、データの持ち出しや内部システムへの横移動を可能にします。
  • ブルートフォース攻撃: パスワード認証が有効なオープンSSHポートは持続的な標的です。自動化ツールはポート22に対して毎分数千回のログイン試行を実行します。

Secure Shellは暗号化されたリモートアクセスとファイル転送のためにポート22を使用し、secure remote accessをサーバーおよびネットワーク機器に提供します。SSHはリモートシステム管理の標準としてTelnetに取って代わりました。暗号化は転送中のデータを保護しますが、誤って設定されたSSHは2つのよく知られた攻撃面を作り出します。

TelnetはTCPポート23で動作し、ルーター、スイッチ、サーバーなどのリモートデバイスへのコマンドラインアクセスを提供します。FTPと同様に、Telnetは資格情報を含むすべてのデータを平文で送信します。SSHが安全な代替手段としてTelnetに取って代わり、インターネットに面したシステム上のTelnetサービスは完全に回避可能なリスクを意味します。

ポート25(SMTP)

  • ブルートフォース攻撃: 自動化ツールが、デフォルトの資格情報を保持するルーターやスイッチを対象に、大量のログイン試行で開放されたTelnetポートを狙います。
  • 資格情報の傍受: Telnetはユーザー名とパスワードをプレーンテキストで送信します。クライアントとサーバーの間にいる攻撃者は、積極的な攻撃なしに資格情報を取得します。

ポート25は、サーバー間メール中継の標準であるSimple Mail Transfer Protocolを処理します。SMTPは現代のセキュリティ要件より前に作られており、適切な設定がないと3つのよく知られた脆弱性が生じます。

  • メールのなりすまし: 攻撃者は送信者ヘッダーを偽造し、メッセージが信頼されたドメインから送信されたように見せかけ、基本的な送信者評価フィルターを回避するフィッシングキャンペーンを可能にします。

ポート53(DNS)

  • オープンリレーの悪用: リレー制限のない保護されていないSMTPサーバーが任意の送信者の代わりにメールを配信し、大量のスパムやマルウェア配布のプラットフォームとなります。
  • STARTTLSダウングレード攻撃: メールサーバーがSTARTTLSを強制しない場合、攻撃者が接続交渉を傍受し、暗号化されていないセッションを強制して、メールの内容や認証情報が送信中に露出します。
  • DNSトンネリング: 攻撃者はDNSクエリおよびレスポンス内にデータペイロードをエンコードし、情報を持ち出したり、DNSトラフィックを許可するファイアウォールを通じてコマンド&コントロール通信を維持したりします。

ポート53はドメインネームシステムのクエリを処理し、ドメイン名をインターネットトラフィック用のIPアドレスに変換します。DNSは標準クエリにUDPを、ゾーン転送にTCPを使用します。ほぼすべてのネットワーク操作がDNSに依存しているため、これは価値の高い攻撃対象であり、境界制御で頻繁に制限されないプロトコルです。

  • DNS増幅攻撃: 攻撃者は偽装された送信元IPで小さなクエリをオープンリゾルバに送信します。リゾルバは被害者に対してはるかに大きな応答を返し、DDoS攻撃で不釣り合いなトラフィック量を生成します。

ポート137、139、および445(NetBIOSとSMB)

ポート137と139はTCP上のNetBIOSを処理します。ポート445はファイル共有、プリンタ共有、ネットワーク通信のためのWindowsプロトコルであるServer Message Block(SMB)を処理します。すべてのシステムでSMBv1を無効にしてください。暗号化が有効なSMBv2およびSMBv3が現在の標準です。

  • DNSキャッシュポイズニング: 攻撃者が偽造したDNS応答をリゾルバのキャッシュに注入し、ユーザーの知らないうちに正当なドメインから攻撃者が管理するアドレスへリダイレクトします。 無許可の変更に対するDNSレコードの監視 は、この手法に対する重要な対策です。

ポート80、443、8080、および8443(HTTPおよびHTTPS)

  • NTLMリレー攻撃: 攻撃者はSMB経由でNTLM認証要求を傍受し、ネットワーク上の他のシステムに中継して、パスワードを取得せずに正当なユーザーとして認証します。
  • ブルートフォース認証情報攻撃: 自動化ツールが公開されたSMBポートを標的に大量のログイン試行を行い、特に弱いまたはデフォルトの認証情報を使用しているシステムを狙います。
  • EternalBlueのエクスプロイト: この攻撃はSMBv1の重大な脆弱性を狙い、認証やユーザー操作なしでリモートコード実行を可能にします。EternalBlueはWannaCryやNotPetyaの攻撃に利用され、現在も活発に使われています。
  • Cross-site scripting (XSS): 攻撃者がユーザーのブラウザで実行される悪意のあるスクリプトをウェブページに注入し、セッションの乗っ取りや資格情報の盗難を可能にします。

ほとんどの組織が機能するためにはウェブポートを開放し外部からアクセス可能にしておく必要があり、これが一貫した攻撃対象となっています。HTTP(80)とその代替(8080)はデータを平文で送信します。HTTPS(443、8443)はトランスポート層を暗号化しますが、アプリケーション層の攻撃からは保護しません。

ポート1433、1434、および3306(データベースポート)

  • SQLインジェクション: 攻撃者はウェブアプリケーションの入力フィールドに悪意のあるSQL文を挿入し、基盤となるデータベースを操作したり、機密データを抽出したり、レコードを変更したりします。
  • クロスサイトリクエストフォージェリ(CSRF): 攻撃者は認証済みユーザーのアクティブセッションを悪用し、ユーザーが開始していない操作を引き起こす不正なリクエストをウェブアプリケーションに送信します。
  • DDoS攻撃: 攻撃者がトラフィックでウェブポートを氾濫させ、サーバーリソースを枯渇させ、正当なユーザーのためのアプリケーションをオフラインにします。

ポート3389(RDP)

  • ブルートフォースおよび認証情報攻撃: 公開されたデータベースポートは直接ログイン試行を受け入れます。自動化ツールはSQL ServerおよびMySQLインスタンスのデフォルト認証情報と弱いパスワードを狙います。

ポート1433はMicrosoft SQL Serverのデフォルト、ポート1434はSQL Server Browserサービス用、ポート3306はMySQL用です。これらのポートはデータベースサービスへの直接アクセスを提供します。データベースはアプリケーション層の背後に配置し、インターネットからアクセスできないようにする必要があります。露出したデータベースポートは設定ミスが直接の原因です。

  • 直接SQLインジェクション: 攻撃者が公開されたデータベースポートに直接接続し、アプリケーション層を経由せずにSQLコマンドを実行し、ウェブアプリケーションファイアウォールの制御を完全に回避します。
  • 既知のサービス脆弱性の悪用: パッチ未適用のSQL ServerおよびMySQLインスタンスには、データベースポートにアクセス可能になると攻撃者が悪用するCVEが含まれており、データベースホストでのリモートコード実行や権限昇格を可能にします。

ポート3389はRemote Desktop Protocolを処理し、Windowsシステムへのグラフィカルなリモートアクセスを提供します。RDPはリモート管理、ヘルプデスクサポート、仮想デスクトップインフラストラクチャにおいて企業環境で広く使用されています。この普及度により、インターネット上で最も標的にされるポートの一つとなっています。

ポート5900(VNC)

  • BlueKeep (CVE-2019-0708): Windows 7 および Windows Server 2008 R2 における認証やユーザー操作なしでリモートコード実行を可能にするワーム型の脆弱性です。攻撃者は公開されているポート3389を狙い、ネットワーク全体にマルウェアを自動拡散できます。
  • ブルートフォースおよびクレデンシャルスタッフィング攻撃: 開放されたRDPポートは継続的な自動ログイン試行にさらされています。クレデンシャルスタッフィングは、過去の侵害からのユーザー名とパスワードの組み合わせを直接公開されたRDPサービスに対して再生します。
  • CVE-2024-38077: Windows Remote Desktop Licensing Serviceの重大なRCE脆弱性(CVSS 9.8)。認証されていない攻撃者が、ユーザー操作なしに特別に細工されたネットワークパケットを送信して任意のコードを実行します。このサービスを運用している組織は、直ちにパッチ適用を優先すべきです。
  • 平文セッションの傍受: 古いVNCの実装はセッションデータを平文で送信します。ネットワークトラフィックをキャプチャした攻撃者は、キーストロークや画面内容を含む完全なグラフィカルセッションを盗むことができます。

ポート5900は、ITサポートおよび管理環境で一般的なリモートデスクトップ共有システムであるVirtual Network Computingのデフォルトポートです。VNCはRDPに似たグラフィカルアクセスを提供しますが、認証の弱さや実装間での暗号化の不一致に起因する特有のリスクがあります。

MITRE ATT&CKへのポート攻撃のマッピング

  • ブルートフォース攻撃: 多くのVNC導入では単一の共有パスワードを使用し、アカウントロックアウトポリシーがないため、ポート5900が自動認証情報列挙の簡単なターゲットとなっています。

上記の手法は、セキュリティチームがすでに追跡している確立されたATT&CKエントリに対応しています:

  • デフォルト資格情報の悪用: 攻撃者は定期的に開いているポート5900をスキャンし、一般的に知られているデフォルトのVNCパスワードを使用してアクセスを試みます。デフォルトパスワードを変更せずに展開されたシステムは、開いているポートを見つけた誰でもアクセス可能です。
  • 初期アクセスと悪用:EternalBlueや類似の未修正サービス攻撃は、リモートサービスの悪用(T1210)に該当します。
  • 資格情報アクセス:SSH、RDP、VNC、およびデータベースポートに対するブルートフォースおよび資格情報詰め込み攻撃はBrute Force(T1110)です。
  • ラテラルムーブメント: 有効または盗まれた資格情報を使用してシステム間を移動するために使用されるRDP、SSH、およびSMBログインは、Remote Services (T1021)に該当します。
  • Man-in-the-middle:NTLMリレーとRDP Pipe PlumbingはAdversary-in-the-Middle(T1557)に該当します。
  • 外部偵察および内部探索:攻撃者がインターネット上で開いているポートをスキャンする行為は、ShodanやCensysのインデックス作成を促進する行動であり、Active Scanning (T1595)に該当します。ネットワーク内部に入った後、横方向に移動するために他の到達可能なサービスをスキャンするのは別の技術であるNetwork Service Discovery (T1046)です。

開いているポートのスキャン方法

  • コマンド&コントロールと回避:攻撃者が開いているポートを使用して、侵害されたホストを経由してトラフィックをリダイレクトまたは中継する場合、これは Proxy (T1090) に該当し、あなたが報告した「リダイレクト」ケースの背後にある技術です。DNSトンネリングはProtocol Tunneling (T1572)です。

コマンドラインツール

開いているポートを保護する前に、どのポートが公開されているかを知る必要があります。3つの主要なアプローチがこの可視性を提供します:

ポートスキャナー

脆弱性スキャナー

専用のポートスキャンツールは、ネットワークセグメント全体のプロービングを自動化します。接続要求を送信し、応答を開放、閉鎖、またはフィルタリングとして分類し、サービスのインベントリを作成します。多くは脆弱性データベースと連携し、検出されたサービスの既知のリスクを警告します。

WindowsとLinuxで利用可能なnetstatコマンドは、ローカルシステムのアクティブな接続とリッスンポートを表示します。netstat -anを実行すると、関連するアドレスを含むすべての接続が表示されます。ネットワーク全体の可視性には、Nmapが標準ツールです。nmap -sV <target>コマンドは対象のIPまたは範囲をスキャンし、開いているポートを特定し、それぞれのサービスバージョンを検出します。これは古いソフトウェアを特定するのに重要です。

開いているポートを保護する方法

脆弱性スキャンツールは、ポート検出とCVEデータベースの照合を組み合わせています。これらは開いているポートを特定し、各ポートで実行されているサービスを検出し、サービスのバージョンを既知の脆弱性と照合します。出力にはリスク評価と修復ガイダンスが含まれます。定期的なスキャンにより、設定変更時にも継続的な可視性が提供されます。

オープンポートのリスクを減らすには、単一の制御だけでは不十分です。以下の手順では、古いプロトコルや未パッチのサービスから、監視やアクセス管理のギャップまで、最も一般的な露出源に対応しています。

暗号化されたプロトコルを使用してください

パッチとアップデートを定期的に適用してください

ファイアウォールとACLでアクセスを制限する

ポートスキャンツールを使用する

未パッチのサービスは、開いたポートから侵害されたシステムへの最も直接的な経路です。WannaCryを駆動したEternalBlueのエクスプロイトは、Microsoftがすでにパッチを当てていた脆弱性を狙いました。MicrosoftはCVE-2024-38077を広く悪用される前にパッチしました。リリース後すぐに適用される一貫したパッチ適用サイクルにより、攻撃者が行動する前にほとんどの既知の脆弱性が排除されます。

可能な限り、平文プロトコルを暗号化された同等のものに置き換えてください。FTPはSFTPまたはFTPSに移行します。TelnetはSSHに移行します。HTTPはHTTPSにリダイレクトされます。暗号化されていない接続で資格情報を送信するサービスは、回避可能なリスクを伴います。この決定を支配するネットワークセキュリティのベストプラクティスは確立されています:暗号化されたプロトコルのバージョンが存在する場合は、それを使用してください。

ポートスキャンを定期的な運用タスクとして扱います。Nmapなどのツールによるスケジュールされたスキャンは、監査間にネットワーク上に現れた新しいサービスを特定します。既知の許可されたサービスに紐づかない開放ポートは、即時調査が必要な発見事項です。インターネット向けの露出と内部でアクセス可能なサービスの両方を把握するために、外部スキャンと内部スキャンを組み合わせてください。

サービス構成の変更を監視する

ホストファイアウォール、ネットワークファイアウォール、およびスイッチのACLレイヤーで、特定のポートにアクセスできる送信元IPおよびネットワークセグメントを制限します。アプリケーションサーバーのみが必要とするデータベースポートは、そのサーバーのIPからのみアクセス可能であり、サブネット全体からはアクセスできないようにすべきです。

サーバー、ファイアウォール、およびネットワーク機器の設定変更は、新たなポートの露出を頻繁に引き起こします。例えば、削除されない一時的なファイアウォールルール、トラブルシューティング中に有効化されそのまま動作し続けるサービス、強化されていないデフォルト設定の展開などです。

SSHキー認証を実装する

IDSおよびIPSを展開する

Netwrix Change Trackerは、インフラの設定変更をリアルタイムで監視し、ファイアウォールルール、サービス設定、システム設定の変更を追跡します。変更前後の状態をすべて記録し、特定のアカウントとソースシステムに紐付け、設定が承認された基準から逸脱した場合にアラートを発します。セキュリティチームは、何がいつ誰によって変更されたかを把握でき、定期スキャン時にのみ新たな脆弱性を発見することがありません。

ペネトレーションテストと脆弱性評価を実施する

SSHキーは、ポート22のサービスに対してパスワードより強力な認証を提供します。秘密鍵は計算上ブルートフォース攻撃が不可能です。鍵ベースの認証を実装し、SSHでのパスワードログインを無効にすることで、最大のSSH攻撃カテゴリを排除できます。秘密鍵はパスフレーズで保護し、安全に保管し、アクセス権を持つ従業員が退職した際には鍵をローテーションしてください。

侵入検知システムは、開いているポートを狙った疑わしい活動の兆候をネットワークトラフィックで監視します。侵入防止システムはさらに進んで、検出された攻撃パターンを積極的にブロックします。両者はSQLインジェクション、DDoS攻撃、ブルートフォースログイン試行などの一般的なポートベースの攻撃から防御します。IDSとIPSは、パッチ適用やポート閉鎖を補完し、開いているポートと侵入成功の間に検知およびブロックの層を追加します。

オープンポートのセキュリティベストプラクティス

ペネトレーションテストは、セキュリティ専門家が実際の攻撃をシミュレートし、開いているポートを通じて脆弱性を積極的に悪用し、攻撃者がどこまで進入できるかを示します。これにより、自動化された広範囲のカバレッジと最もリスクの高い経路の手動検証が提供されます。

ペネトレーションテストと脆弱性評価は、さまざまな角度からオープンポートのリスクに対処します。脆弱性評価は、自動スキャンを実行してインフラ全体の既知の弱点を特定し、優先順位付きの修復リストを作成します。

オープンポートの保護には、パッチ適用やスキャン以上の対策が必要です。以下の運用方法が、一貫したポートセキュリティの基盤となります。

Netwrixがオープンポートのリスクを監視する方法

  • 重要なパッチをすぐに適用してください: 脆弱性の公開から実際の悪用までの時間が短縮されています。RDPに影響を与える9.8評価のCVE-2024-38077のような、オープンポート上のサービスを狙う高深刻度のCVEは、公開後数日以内に公開された概念実証コードを受け取ります。オープンポートのサービスに対する重要なパッチのリリースは即時対応が必要です。
  • すべての開いているポートに所有者を割り当てる: 各開いているポートには、その背後にあるサービスの責任者が文書化されている必要があります。残存する開放ポートを持つ廃止されたサービスは、管理されていない露出の最も一般的な原因の一つです。サービスを廃止する際は、廃止チェックリストに関連ポートの閉鎖を含めてください。
  • 外部攻撃面を定期的に評価してください: インターネットから見えるすべての開いているポートは、潜在的な初期アクセス点です。SANS 2025 Attack Surface Management Survey は、未知の資産とサービスをセキュリティチームの主要な課題として特定し、定期的ではなく継続的な発見の必要性を強調しています。アクティブで文書化されたビジネス上の正当な理由がないポートは閉じるか制限してください。
  • ネットワークアクセスに最小権限の原則を適用してください: サービスは、それを必要とするIPアドレスおよびネットワークセグメントからのみアクセス可能であるべきです。アプリケーションサーバーだけがアクセスする必要があるデータベースポートは、そのサーバーのIPアドレスからのみアクセス可能であるべきです。この制限により、攻撃者が別の経路でネットワークに侵入した場合の被害を抑えられます。

リアルタイムの構成変更検出

自動化された構成ドリフトアラート

  • 構成ドリフトの監視: スケジュールされたスキャン間のポート露出の変化。パッチスクリプト、開発者のテスト環境、または誤設定されたセキュリティグループにより、正式な変更要求なしに新しいポートが開くことがあります。継続的なfile integrity and configuration monitoring tools はこれらの変更をほぼリアルタイムで検出し、次の監査サイクルまで未検出の露出が続くのを防ぎます。

設定が検出されずに変化すると、オープンポートのセキュリティは失敗します。一時的なプロジェクトのためにファイアウォールルールが追加され、削除されません。トラブルシューティング中にサービスが有効になり、そのまま稼働し続けます。デフォルト設定が強化なしで展開されます。これらはすべて、手動監査がサイクル間で見逃す露出ポイントを作り出します。

コンプライアンス対応レポート

Netwrix Change Trackerはサーバー、ネットワーク機器、ファイアウォールの設定を継続的に監視します。新しいサービスの開始、ファイアウォールルールの変更、ポートの開放などの変更が発生すると、変更前後の状態をキャプチャし、時間とソースを記録し、アラートを発します。セキュリティチームは、設定が承認されたベースラインから逸脱した際に即時通知を受け取り、定期スキャンの隙間を埋めます。

Netwrix Change Trackerは、現在のインフラ状態を承認された構成ベースラインと比較し、逸脱を検出します。オープンポート管理では、許可された状態から逸脱したサービスやポートの構成があれば、具体的な変更内容を含む実行可能なアラートを生成し、攻撃者が露出を発見する前にチームが調査・修正できるようにします。

デモをリクエストして、Netwrixが攻撃者より先にオープンポートインフラの設定変更を検出する方法をご覧ください。

オープンポート制御のコンプライアンスを示すには、単に制御が存在するだけでは不十分です。監査人は、これらの制御が一貫して適用されているという文書化された証拠を必要とします。Netwrix Auditorは、PCI DSS、NIST 800-53、HIPAA、およびCMMC向けの事前構築済みコンプライアンスレポートマッピングを提供し、ネットワーク向けインフラの変更管理およびアクセス監視要件をカバーします。Windowsの監査ポリシー設定はログ記録の基準を確立し、Netwrix Auditorはそのログデータを監査準備済みのレポートに構成し、誰がいつどのシステムから何を変更したかを記録し、コンプライアンスレビューに必要な証拠の追跡を提供します。

オープンポートの脆弱性に関するよくある質問

共有する

もっと詳しく

著者について

Dirk Schrader

セキュリティ リサーチの VP

Dirk Schrader は Netwrix の Resident CISO (EMEA) であり、セキュリティ リサーチの VP です。CISSP (ISC²) および CISM (ISACA) の資格を持つ、IT セキュリティ分野で 25 年のベテランとして、サイバー脅威に取り組むための現代的なアプローチであるサイバー レジリエンスの推進に取り組んでいます。Dirk はキャリアの初期に技術およびサポートの役割からスタートし、その後、大規模な多国籍企業から小さなスタートアップまでで、営業、マーケティング、プロダクト マネジメントのポジションへと移行しながら、世界中のサイバーセキュリティ プロジェクトに携わってきました。彼はサイバー レジリエンスを実現するために、変更管理と脆弱性管理に取り組む必要性について、多数の記事を発表しています。