☀️

リモートデスクトップPCが1日5000回も攻撃されていた!実体験で学ぶセキュリティ対策

に公開

はじめに

近年、サイバー攻撃の脅威がますます増加しています。企業や個人にとって、セキュリティ対策はもはや避けて通れない重要な課題です。
この記事では、メンテナンス作業中に発見した攻撃内容やその対策を共有したいと思います!
リモートデスクトップ接続を使用している人のこれからのセキュリティ対策に役立てば幸いです!

攻撃の概要

ログを詳しく分析した結果、1日あたりおよそ5000回、リモートデスクトップ接続へのログイン試行が行われていました。

攻撃の詳細分析

攻撃の種類と規模

  • 攻撃タイプ: 不正ログイン試行(詳細な攻撃手法は不明)
  • 対象サービス: WindowsOSのリモートデスクトップ(RDP)
  • 1日の総攻撃回数: 約5,000回
  • 攻撃の特徴: IPアドレスを変えながらの攻撃(複数のIPアドレスから分散して攻撃を実行)

不正ログイン試行の脅威

このような大量のログイン試行は、以下のような攻撃の可能性があります。

  • ブルートフォース攻撃: パスワードの総当たり試行
  • パスワードスプレー攻撃: 複数アカウントへの効率的な攻撃
  • 辞書攻撃: 一般的なパスワードリストを使用した攻撃
  • 自動化されたボット攻撃: スクリプトによる大量攻撃

攻撃の脅威とリスク評価

ログイン成功の可能性

この攻撃回数(1日5,000回)を考えると、以下のようなリスクが想定されます。

アカウント名が分かっている場合の突破時間

攻撃者が特定のアカウント名(例:adminrootadministratorなど)を狙っている場合、パスワードの複雑さによって突破時間が大きく変わります。
以下の表は、1日5,000回の攻撃を想定した場合の突破に必要な日数を示しています。

一般的なパスワードの突破時間(1日5,000回の試行の場合)

パスワードの種類 文字数 組み合わせ数 突破に必要な日数
英小文字のみ 8桁 26^8 = 208,827,064,576 41,765,413日
英数字混合 8桁 62^8 = 218,340,105,584,896 43,668,021,117日
英数字+記号 12桁 95^12 = 54,559,203,418,120,000,000,000,000 10,911,840,683,624,000,000,000日

現実的なパスワードのリスク

上記の表を見ると、一般的に推奨されるパスワードポリシーを満たしていれば、1日5,000回の攻撃では実質的に突破は困難であることが分かります。

ただし、辞書攻撃パスワードリスト攻撃に対しては、複雑なパスワードでも注意が必要です。これらの攻撃は、一般的によく使われるパスワードや、過去に漏洩したパスワードリストを使用するため、パスワードの複雑さだけでは防げない場合があります。

リモートデスクトップログイン成功時の想定被害

もし攻撃が成功して、攻撃者がサーバーにログインできたらどうなるでしょうか?

  • データが全部見られる・盗まれる(顧客情報、機密ファイル、設定ファイルなど)
  • システムを自由に操作される(マルウェアの感染、バックドアの設置、他のサーバーへの攻撃など)
  • 業務が止まる(ファイルの削除、サービスの停止、復旧作業の必要など)

つまり、攻撃者にサーバーの完全な制御権を渡してしまうことになります。一度ログインされてしまえば、攻撃者は管理者と同じ権限でサーバーを操作でき、組織全体のセキュリティが脅かされることになります。

攻撃検知の方法

では実際に不正ログイン試行を検知するにはどのような方法があるのでしょうか?

セキュリティソフトによる検知

私のケースでは、セキュリティソフトで攻撃を受けていることを検知できました。
これは以下のような機能によるものです。

  • IPS/IDS機能: ネットワークレベルでの攻撃検知
  • ログ分析: 異常なアクセスパターンの検出

OS標準機能での攻撃検知

もし現在導入しているセキュリティソフトに該当機能がなくとも、OSの標準機能でログ取得設定を追加するなどして攻撃を検知することが可能です(実際に検証はしていません)。

Windowsの場合

  • イベントビューアー: セキュリティログ、システムログの確認
  • Windows Defender: 組み込みのセキュリティ機能
  • ファイアウォールログ: 接続試行の記録

macOSの場合

  • コンソールアプリ: システムログ、セキュリティログの確認
  • ファイアウォール: システム環境設定から設定可能
  • セキュリティとプライバシー: ログイン項目やアクセシビリティの確認

Linuxの場合

  • /var/log/auth.log: 認証関連のログ
  • /var/log/secure: セキュリティ関連のログ
  • iptables/nftables: ファイアウォールログ

効果的な対策と実装

不正ログイン試行への対策は何をすればよいでしょうか?

ファイアウォールによる防御

簡単かつ効果的な対策はファイアウォールでのポート制限です。
RDP(リモートデスクトップ)サービスで使用される受信側のポート3389に対して制限をかけることで対策ができます。

ファイアウォールでのアクセス制限には、以下のような設定などが考えられます。

  • VPN経由のみ許可
  • 社内ネットワークのみ許可
  • 特定のIPアドレスのみ許可(管理者の固定IPアドレスなど)
  • 時間帯制限(業務時間内(例:9:00-18:00)など)

ファイアウォール対策の効果

実装前の状況(攻撃を受けている状態)

実装後の状況(ファイアウォールで防御)

この対策により得られるメリット

  • 攻撃の遮断: 不正なIPアドレスからのアクセスを完全にブロック
  • 攻撃の分散化を無効化: 複数IPからの攻撃でも、許可されていないIPは全て遮断
  • 正当なアクセスのみ許可: 管理者やVPN経由のアクセスのみを許可

ファイアウォールによるIPアドレス制限時の注意点

もしクラウドでレンタルしているPCの場合、クラウドサービス側でもIPアドレス制限をかけられることが多いです。

  • AWS: セキュリティグループ
  • Azure: ネットワークセキュリティグループ(NSG)
  • GCP: ファイアウォールルール
  • その他: 各クラウドサービスのファイアウォール機能

OS側のファイアウォールとクラウド側のセキュリティ設定の両方で同じIPアドレスを許可するように統一してください。
片方だけ設定していると、思わぬ接続エラーが発生する可能性があります。

対策の効果

ファイアウォールで攻撃者のアクセス経路を遮断した結果、セキュリティログには同様の攻撃は出なくなった(PCに届く前の段階で通信をはじけた)ことが確認できました。

ただし、定期的なログチェックとセキュリティ監視を継続することが重要です。攻撃者は常に新しい手法を開発しており、油断は禁物です。

まとめ

今回は、セキュリティログで発見した大量の不正ログイン試行の体験と、その効果的な対策について詳しく紹介しました。

もしリモートデスクトップのサーバがあるときは、ファイアウォールでポート3389を守ろう!

という内容でした。この記事が、皆さんのセキュリティ対策の一助となれば幸いです。

おまけ

以前、セキュリティに関する記事を書きました。こちらもご興味あればご覧ください。

https://zenn.dev/zenzoe/articles/b54a3c39a2b7c8

Discussion