キヤノンMJ/サイバーセキュリティ情報局
「Follina」、ゼロクリックでリモートコードを実行可能なWindowsの脆弱性
本記事はキヤノンマーケティングジャパンが提供する「サイバーセキュリティ情報局」に掲載された「Windowsの脆弱性「Follina」が招いた危険性」を再編集したものです。
2022年5月末に発覚した「Follina」と呼ばれる、ゼロクリックでリモートコードを実行可能なWindowsの脆弱性。従来からのマルウェア対策の常識を覆しかねない脆弱性であったことから、今後の動向に注目が集まっている。この記事では、Follinaという脆弱性の危険性と、類似の手法が登場した場合を見据えた対策について解説する。
Follinaとは
「Follina(フォッリーナ)」とはWindows OSの脆弱性「CVE-2022-30190」の別名だ。この脆弱性が見つかったWordのファイル名が「05-2022-0438.doc」であり、0438がイタリアのFollina市の市外局番であったことから、あるセキュリティ研究者が命名したと言われている。
この脆弱性について、2022年5月30日にマイクロソフト社より、概要と回避策などの情報が公開された。ここで示された回避策は、MSDT(Microsoft Support Diagnostic Tool:マイクロソフトサポート診断ツール)のURLプロトコルを無効にするというものだった。また、6月14日にはセキュリティアップデートによってこの脆弱性に対するパッチファイルが配布・適用された。
この脆弱性が該当する影響範囲は広く、クライアントOSでは、Windows 11、10、8.1、RT 8.1、7が対象に。サーバーOSではWindows Server, version 20H2(Server Core Installation)、Server 2022、Server 2019、Server 2016、Server 2012/2012 R2、Server 2008/2008 R2が対象となった。
これら対象の端末では、マイクロソフト社のWordなどのソフトウェアからOffice URI Schemeを使用し、MSDTを呼び出す(編集可能な状態で開く)ことで、任意コードの実行が可能となる、という内容だった。
MSDTとはマイクロソフトサポート診断ツールとの名称のとおり、マイクロソフト社製品の調査にあたって必要なログを収集することを目的とするツールである。このゼロデイ脆弱性が発覚した際には、既にこの脆弱性を利用した攻撃が確認されていたと言われている。
なお、5月末にマイクロソフト社が行った情報公開時には、米国のCISAなども対応を推奨するアドバイザリをリリース。また、NECの研究者によりPoCによる動作検証動画が公開されるなど、多くの情報が提供され、高い注目を集めた。
Follinaの危険性を象徴する3つのトピック
Follinaが、ほかのWindowsの脆弱性と比較しても強く危険視されたのには、以下のような理由が挙げられる。
・マルウェア配布用としてゼロデイ攻撃に使われた可能性
未知の脆弱性を悪用するゼロデイ攻撃として、Follinaが狙われた。米国、EUの政府機関をターゲットとしたフィッシング攻撃などで、この脆弱性が用いられたとされている。
・マクロ機能OFFの場合でも実行可能
この脆弱性を悪用することで、Officeファイルのマクロを有効化せずとも、編集モードで読み込むだけで悪意のプログラムが起動してしまう。実際の画面(図1)では、ファイルを開いた際の保護ビューにて、黄色のエリアにて編集の有効化の危険性についてアラートが表示される。Follinaの場合、ここで「編集を有効にする」をクリックするだけで、実行されてしまうということだ。
現時点で「最恐」との呼び声高いマルウェアであるEmotetは、主にマクロ機能を用いて攻撃を行っていた。その結果、マイクロソフト社ではマクロは標準で無効化するという対策を講じた。しかし、このFollinaが悪用されてしまうと、その対策は実質的に無意味化されてしまうのだ。
・リッチテキストファイルでも実行可能
この脆弱性を用いることで、WordやExcel形式でなくとも、リッチテキストファイル(RTF)形式のファイルへも悪意を持ったプログラムを埋め込み、実行することが可能となる。
また、さらに厄介なことに、リッチテキストファイルの場合はプレビュー機能をONにしているExplorerで表示しただけで、悪意あるプログラムが起動してしまうという危険性も指摘された。この場合、通常のファイル経由よりも起動までのステップが短いため、より一層危険性も高まる。
Follinaに類似した脆弱性とその対策
先述のとおり、極めて危険とされる脆弱性Follina。セキュリティアップデートの適用で、この脆弱性は解消するものの、今後も同様の脆弱性が発覚する可能性は極めて高いだろう。
例えば、過去を振り返れば「Log4Shell」と呼ばれる2021年に発覚した脆弱性が挙げられる。この脆弱性はApache Log4jというJavaをベースとするログ取得用のソフトウェアで見つかった。攻撃者はこの脆弱性を悪用することで、任意のJavaベースのコードを実行可能となるのだ。Log4Shellについては、大手クラウドサービス事業者などが影響を受けたことで大きな問題となった。
今後も同様に、ソフトウェアの開発者が意図しない脆弱性が断続的に発生していくことが見込まれるが、ユーザーとしては以下のような対策を講じるぐらいしか方法がないのが実状だ。
・セキュリティに関する情報のキャッチアップ
近年、社会的な影響が大きいセキュリティトピックについては、テレビ、新聞などのニュースでも取り扱われるようになっている。しかし、それだけでは十分だとは言えない。
例えば、このサイバーセキュリティ情報局などのセキュリティに関する情報を取り扱うWebメディアを定期的にチェックするのが望ましい。あるいは、脆弱性の情報を収集するのであれば、JVN(脆弱性対策情報データベース)といったサイトでも得られる。ただし、可処分時間が限られる中で、こうした専門サイトの定期的なチェックは現実的ではないかもしれない。その際は、スマホなどのキュレーションアプリ、ポータルニュースサイトなどをチェックするとよいだろう。多くのユーザーに影響がある話題については、こういったサービスで取り扱われることが多いからだ。自らの興味ある項目としてIT、セキュリティなどの選択肢があれば、それらを設定しておくことで、情報をより入手しやすくなるはずだ。
・セキュリティソフトのインストール、適切な運用
近年、有償のセキュリティソフトは「統合型セキュリティソフト」と呼ばれるようになっている。それらは、パーソナルファイアウォール、フィッシング詐欺対策といった機能も充実しており、端末を常時監視して不正なプログラムが実行されるのを防ぐことが可能だ。
ただし、セキュリティソフトをインストールしていたとしても、定義モジュールが最新版でなければ効果は半減するに等しい。先述のとおり、攻撃者は常に脆弱性を探し回り、見つけ次第、速やかに攻撃プログラムを開発する。そうしたスピード感へ対処するためにも、セキュリティ事業者の対応サイクルも高速化している。特段の事情がなければ、自動更新を選択して、最新の状態を維持しておくことが望ましいだろう。
・ソフトウェア、ドライバーのアップデート
OSをはじめ、普段利用するソフトウェア、あるいはWebブラウザーなどを最新版に維持すること。これは先述のセキュリティソフトと同様に、セキュリティ対策の基本中の基本とも言える。特に昨今、脆弱性が発覚次第、速やかにセキュリティアップデートが提供される傾向にある。ソフトウェアからの通知を受け取り次第、その通知内容を確認し、アップデートなどの対応を速やかに行うようにしたい。