情報セキュリティ10大脅威2021 No.1脅威!ランサムウェアに最も狙われているRDPの守り方、教えます。
はじめに
ランサムウェアに最も狙われているリモートデスクトッププロトコル(RDP)について、守り方を具体的に解説してきます。
守り方はRDP以外にも応用できますので、自社のサイバーセキュリティ防御の参考になりましたら幸いです。
なお、リモートデスクトッププロトコル(RDP)とは、デスクトップコンピューターをリモートで使用するためのプロトコル(技術的な規格)で、当初、Microsoftによってリリースされたものです。TCP/UDPの3389番を使っており、サーバ側は、このポートでクライアントからの接続をリッスン(待ち受け)しています。
RDPについてより詳しく知りたい方は以下の記事が参考になります。
リモートデスクトッププロトコル (RDP) とは? | Cloudflare
https://www.cloudflare.com/ja-jp/learning/access-management/what-is-the-remote-desktop-protocol/
【リモートワーク自由自在】Windowsリモートデスクトップ接続のポート番号を変更してよりセキュアにするhttps://www.atmarkit.co.jp/ait/articles/0309/27/news003.html
ランサムウェア感染経路No.1は?
ランサムウェア(ransomware)の脅威は広く知られていますね。
今年の「情報セキュリティ10大脅威2021」での組織編第一位の脅威はランサムウェアでした。
ランサムウェアの脅威についてはG7(主要7ヶ国首脳会議)から以下の声明が出ているほどです。
G7は、ランサムウェアによる攻撃の脅威が増していることを懸念している。特に、新型コロナウイルスのパンデミックの中で、悪意ある主体が重要なセクターを標的としている。しばしば暗号資産による支払を伴うこうした攻撃は、社会に不可欠な機能、ひいては我々皆の安全・ 繁栄を危うくする。我々は、共にそして各々でこの脅威と戦う決意を確認する。
デジタル・ペイメントに関するG7財務大臣・中央銀行総裁会議における声明の公表について
https://www.fsa.go.jp/inter/etc/20201014/20201014.html
このランサムウェアの脅威に対抗するにはどうすればよいか?
そもそもランサムウェア攻撃では何が一番狙われるのだろう?と考えると、実はリモートデスクトッププロトコル(RDP)が一番狙われているのです。
Image: Coveware
RDPはとても便利でビジネスに不可欠なところも多いでしょう。
いくらランサムウェアに狙われているからといって、RDPを廃止することはおいそれとはできないでしょう。
RDPは適切に守れば、十分にセキュアになります。ランサムウェア感染リスクを大幅に低減できます。
以降ではRDPの守り方について解説していきます。
RDPの守り方
RDPを守るための方法を6つ、説明していきます。
1. RDPへの接続はVPNを通じてのアクセスとすること
インターネット側から直接RDPをさわれないよう、FW(ファイアウォール)を設定しましょう。
これがまず第一にやるべきことです。
RDPはTCP ポート 3389を使用するので、FWでこのポートへのインバウンド通信をブロックしましょう。
外からオフィス内のPCにリモートアクセスする際にはVPN経由とするか、RDG(リモート・デスクトップ・ゲートウェイ)サーバーをセットアップすることが推奨されます。RDGはマイクロソフトのサービスです。
2. 複雑なパスワードの使用&多要素認証を有効にする
基本であるパスワードは当然複雑なものにしましょう。
可能な限りMFA(Multi-Factor Authentication, 多要素認証)も使いましょう。
MFAを利用していれば、
- 簡単なパスワードを設定していたためにパスワードが推測された
- 実はパスワードが流出していた
- 他のサービスにも同じパスワードを使い回ししており、他のサービスの方から漏れていた。
など、パスワードの脆弱性に起因した攻撃を防ぐことができます。
MFAの適用を全社員に強制することは難しい場合でも、管理者権限を持つ者には強制するなどメリハリをつけた運用も推奨されます。
なおパスワードですが、CISのパスワード・ポリシー・ガイドラインでは
MFAがない場合:パスワードは14文字以上
MFAがある場合:パスワードは8文字以上
が推奨されています。参考にしてください。
3. ネットワークレベル認証(NLA)を有効にする
RDP経由でシステムに侵入するために、必ずしもパスワードを必要としません。攻撃者はソフトウェアの脆弱性など、他の方法で侵入することができます。
RDPに脆弱性があった場合、その脆弱なRDPのセッションが開始する前に認証を強制し、認証を受けないとRDPにさわれないようにしちゃおうというのがNLA(Network Level Authentication, ネットワークレベル認証)です。
認証のタイミングを変えることにより、RDPとは別のセキュリティ層を追加するイメージです。
防御方法としては良いものです。(CVE-2019-0708という脆弱性のワークアラウンド※で知りました。)
※ワークアラウンド(workaround) : コンピューターにおいてシステム上で問題が発生した際の応急措置のこと
ただし副作用があり、RDP越しでのパスワード変更ができなくなってしまいます。この辺credsspというwindows kernel内部のモジュールの話がからみ、ややこしいですが詳しくは以下HPを確認してください。(この問題のため、NLAを切ってるところも多いんじゃないかと思います。)
Windows Server 2012 R2 および Windows 8.1 以降のネットワーク レベル認証の動作について
https://docs.microsoft.com/ja-jp/archive/blogs/askcorejp/windows-server-2012-r2-windows-8-1-1
4. ホストベースのセキュリティ製品を使用する
クライアントPC、endpoint(エンドポイント)と言ったりもしますが、に組み込むセキュリティ製品を活用するという手もあります。
このようなセキュリティ製品にホストベースのファイアウォール機能がある場合、システムへのアクセスを許可されていない外部システムからのRDP接続の着信を拒否し、許可されたシステムのアクセスのみを許可するように設定できます。
RDPによるアクセスが必要なシステムでは、インバウンド接続をブロックし、アクセスが必要なIPアドレスを手動で「allowlist」でホワイトリスト化します。
これにより、許可されたユーザのみがシステムにRDPでアクセスできるようになります。
そもそもRDPを必要としないシステムでは、これらのシステムへのインバウンド接続を完全にブロックしましょう。
5. パッチを当てよう
脆弱性を放置してはいけません。パッチを当てましょう。
パッチは常に最新を適用する方針が良いです。テストが大変なのでテストおよび障害に備えたロールバックの手順をしっかり用意しましょう。
脆弱性管理の面では定期的なパッチに備える体制に加え、必ず緊急パッチに対応するための体制を用意しておくべきです。
本当に危険な脆弱性に対して緊急パッチが発行されるからです。
6. ハードニングしよう
ここでいうハードニングとはセキュアな設定をしっかりしようということです。
RDPの場合であれば通信を暗号化する設定であったり、セッションタイムアウトの設定だったりがあります。
ハードニングには高度な知識が要求されます。RDPを深く深く理解するためだけに多大な時間をかけるわけにはいかず、他のいろいろなことに時間をさく必要があるでしょう。
そんな時のため CIS Benchmark というものがあります。無料です。
https://www.cisecurity.org/cis-benchmarks/
OSやSWの推奨設定が網羅されたものになっており、それを設定することによる影響なども書かれているのでとても勉強になります。
まずは CIS Microsoft Windows 10 Benchmarks を読んでみることをお勧めします。読んでみると言っても1,200 page 超えかつ全部英語なので、RDPで検索し、拾い読みしてみるだけでも良いと思います。
CIS Benchmarkはレベル1, 2とレベル分けされています。レベル1が必須、レベル2は推奨です。レベル2を適用するとセキュリティはより向上するが、システムに影響が出る可能性も高いというものです。どのような影響が出るかも書かれています。
おわりに
RDPはとても便利ですが、とても攻撃者に狙われています。
あまりに狙われすぎて、RDP(Ransomware Deployment Protocol)なんて呼ばれたりするくらいです。
ここで紹介した防御策を適用していきましょう。全て適用したいところですが、予算や運用の面もあり難しい場合も多いと思います。
大事なことは「多層防御(Security in depth)」の思想です。
Image: networkaccess.com
FWで守ったからあとは何もしなくてもいい。ということではなく、ネットワークレイヤーはFWで守り、プロトコルレイヤーはNLA追加とパッチとハードニング、PCはセキュリティ製品とパッチとハードニング、人の部分はパスワードの複雑化が如何に重要かの教育など、多層にわたって防御施策を打つことが有効です。