Microsoftが2020年6月にリリースした定例セキュリティアップデートには、Microsoft Officeの脆弱性「CVE-2020-1321」を修正するパッチが含まれていた。この脆弱性は「3D Office Exploiter」と呼ばれるもので、Microsoft Office 365向けのクラウドメールサービスを運営するMimecastによって発見・報告された。

そのMimecastが7月10日(米国時間)、同社公式ブログ「Mimecast Discovers “3D Office Exploiter,” a Remote Code Execution Vulnerability in Microsoft Office|Mimecast Blog」で、3D Office Exploiterがシステムに与える影響と、同社研究チームがこの脆弱性の発見に用いた手法について詳しく伝えた。

Mimecast Discovers “3D Office Exploiter,” a Remote Code Execution Vulnerability in Microsoft Office | Mimecast Blog

「3D Office Exploiter」(CVE-2020-1321)はMicrosoft Officeの3Dライブラリに存在する脆弱性で、ライブラリがメモリ内の3Dオブジェクトを適切に処理できない場合に、任意のコードを実行できてしまう危険性があるというもの。対象となる製品はMicrosoft Officeのソフトウェア全般に及ぶ。詳細は下記のページを参照いただきたい。

CVE-2020-1321 | Microsoft Office Remote Code Execution Vulnerability

この脆弱性を悪用されると、特別に細工したファイルを用いて、現在ログインしているユーザと同じ権限で悪意のあるコードを実行できてしまう。それには、ユーザーが該当するMicrosoft Officeソフトウェアで細工されたファイルを開く必要がある。一般的には、電子メールにファイルを添付したり、Webサイトへのリンクをクリックさせてファイルを開いたりするように誘導するような手法が使われる。

Mimecastは、Microsoft Officeアプリケーションに関する別の研究の過程で、アプリケーションへの入力をランダムに変更することによって3Dグラフの動作に影響を与えることを発見したという。そして、3Dライブラリの問題があり、アプリケーションを確実にクラッシュできる可能性があることも突き止めた。

Mimecastの研究者がこの脆弱性の解析に使用した手法がファジングだ。ファジングは、アプリケーションに大量のランダムに生成したデータを入力することによって、予期しない挙動を起こさないかどうかを調べる手法である。研究者は、Microsoft Officeの3Dライブラリに対してファジングを実施することで、クラッシュを引き起こす入力データセットと、クラッシュシーケンスを発見することに成功した。

Microsoft Officeアプリケーションのクラッシュシーケンスと関連するメモリの場所はよく知られているため、これを利用すると攻撃者がプログラムがクラッシュで終了する直前に任意の実行コードを挿入できてしまう。このことから、Mimecastはこれを悪用可能な脆弱性であると結論付け、非公開でMicrosoftに報告したという。

報告を受けたMicrosoftは問題のコードを修正し、対策パッチを2020年6月の定例アップデートで公開した。新たに発見された脆弱性に対してこうした速やかな分析と報告が行われることによって、ゼロデイ攻撃を予防し、ユーザがサイバー攻撃に晒されるリスクの大幅な軽減につながる。

3D Office Exploiterを放置すると、対象のシステムに深刻な影響を与える危険性があるため、Mimecastでは早急にパッチを適用することを推奨している。