VBAマクロは、ExcelやWordを使った日々の業務にとても有用なツールです。繰り返し作業の自動化や複雑な計算処理、書式設定の統一化など、マクロによって法律事務所での文書作成や案件管理業務は格段に効率化されます。
しかし、この便利な機能には看過できないセキュリティ上のリスクが潜んでいます。サイバー攻撃の手法が高度化する中、ユーザーの意図や認識に関係なく、マクロを悪用した攻撃が多くの組織で深刻な被害をもたらしています。特に、スタートアップ機能を悪用した攻撃では、ユーザーがマクロの存在すら知らないうちに感染が発生する可能性があります。このような状況を踏まえ、マクロに関連する脅威から組織を守るため、十分な対策を講ずることが求められます。
マクロの脅威とその変化
マクロ攻撃の深刻な現実
マクロを悪用したサイバー攻撃は、これまで多数の組織に深刻な被害をもたらしてきました。最大のリスクは悪意のあるマクロプログラムがユーザーの知らないうちに自動実行されることです。
この問題については、「Microsoft Officeのスタートアップ機能を悪用したマルウェア」(NTTデータ先端技術株式会社のINTELLILK セキュリティ情報配信サービス2022年9月版)が詳しく説明しています。同レポートによると、Microsoft Officeのスタートアップ機能を悪用するマルウェア「Xanpei」や「RestyLink」といった攻撃キャンペーンが確認されています。
攻撃の概要
これらの攻撃は、次のようにして実行されます。
スタートアップフォルダの悪用:WordやExcelの起動時に自動的にファイルを読み込む機能を利用し、ユーザーが意図せず悪意のあるマクロを持続的に実行させます。この手法では、%AppData%\Microsoft\Word\STARTUP
や%AppData%\Microsoft\Excel\XLSTART
といったフォルダに悪意のあるファイルを配置し、アプリケーションが起動されるたびにマルウェアを実行します。
持続的な感染:一度感染すると、ユーザーが気づかないうちに継続的にマルウェアが実行され、機密情報の窃取や更なる攻撃の基盤として利用されます。
Mark of the Web(MOTW)の導入とその限界
MOTW機能の概要
このようなマクロによる攻撃リスクの高まりを受け、マイクロソフトは、「Mark of the Web(MOTW)」というセキュリティ機能を導入しました(Office 2013以降)。MOTWは、ファイルがインターネットから取得されたことを示すメタデータ情報で、Windowsによって自動的に付与される仕組みです。この機能により、インターネットからダウンロードされたOfficeファイルは、マクロが自動的にブロックされるようになりました。
MOTW機能は、信頼できない場所から取得されたファイル内のマクロ実行を制限します。これにより、従来型のメール添付ファイルによるマクロ攻撃は大幅に減少しました。
回避手法の横行
しかし、サイバー犯罪者たちは新たな回避手法を開発しています:
コンテナファイルの悪用:ISOファイルやZIPアーカイブなどのコンテナ形式を利用することで、MOTW保護を回避する手法が増加しています。これらのファイル形式では、展開後の内部ファイルにMOTW属性が適切に継承されない場合があります。
圧縮ソフトウェアの脆弱性を悪用した攻撃:一部の圧縮・解凍ソフトウェアにおいて、特定の条件下でMOTW属性が失われる脆弱性が報告されており、サイバー犯罪グループがこれらの脆弱性を悪用した攻撃を行っていることが確認されています。
WebDAVとショートカットファイルの悪用:WebDAV(Web Distributed Authoring and Versioning:ウェブサーバー上でファイル編集を可能にするプロトコル)共有から複製されたファイルがMOTW属性を回避する問題や、不正な形式のショートカット(LNK)ファイルを使用した回避手法も発見されています。
法律事務所が直面する特有のリスク
機密性の高いデータの扱い
法律事務所は、顧客の機密情報、訴訟戦略など、極めて価値の高い情報を日常的に取り扱います。これらの情報が漏洩した場合の影響は計り知れません。
業務上の制約
しかし、裁判所への提出書類の作成における書式設定などには、マクロ機能を使用することが極めて有効です。このため、セキュリティを理由にマクロ機能を完全に無効化することは現実的ではありません。むしろ、マクロを使うことにより、過去の文書ファイルの流用を回避し、文書の内容に集中できるようなるという効果も期待できます。
リスクを最小限にするための推奨対策
現代のデジタル環境では、マクロの脅威は避けて通れないリスクとなっています。ExcelやWordを使用する限り、マクロ機能を実際に使用していない場合でも、スタートアップ機能を悪用した攻撃の対象となる可能性があります。そのため、マクロ機能利用の有無に関係なく、すべてのユーザーが適切なセキュリティ対策を講じることが重要です。
VBAアセットでは、出どころが分からないファイルを開かない、不審なメール添付ファイルには触れないといった基本的なセキュリティ意識を徹底したうえで、以下のように対処することを推奨しています。
免責事項
これらの推奨対策はVBAアセット独自の見解に基づくものであり、その効果や完全性について責任を負うものではありません。マクロやVBAの利用に伴うリスクについては、最終的にはユーザーの皆様の責任と判断において対処していただく必要があります。また、セキュリティ環境は日々変化するため、定期的な見直しと最新の情報収集が必要です。
Excel向けの対策
トラストセンターの設定強化
Excelの場合、トラストセンターで「すべての信頼できる場所を無効にする」のチェックボックスをONにすることを推奨します。この設定により、悪意のあるマクロが自動実行されることを防止できます。
具体的な設定手順:
- Excel起動後、「ファイル」→「オプション」を選択
- 「トラストセンター」→「トラストセンターの設定」を選択
- 「信頼できる場所」で「すべての信頼できる場所を無効にする」にチェック
- 「マクロの設定」で「警告を表示してすべてのマクロを無効にする」を選択
アドインとしての安全な利用
マクロをアドインとして利用する場合は、Excelのアドインメニューから手動で有効化することで安全性を確保できます。一度有効にすれば、以降は自動的に起動されるため、利便性に問題はありません。
「マクロの設定」のオプション選択
Excelの場合、マクロファイルを使用する場合が多いと思いますので、「マクロの設定」は「警告を表示してすべてのマクロを無効にする」を選択すること(デフォルトのまま)を推奨します。
この状態でマクロファイルを開き、セキュリティ警告バーの「コンテンツの有効化」をクリックして許可を与えると、そのファイルは「信頼済みドキュメント」として扱われるようになります。次回以降に同じファイルを開いた際には、警告を表示することなくマクロが自動的に有効化されます。
Word向けの対策
Wordマクロの特殊事情
Wordの場合、Excelよりも対策が複雑になります。Wordでマクロを自動起動させるには、STARTUPフォルダにマクロプログラムを配置し、かつSTARTUPフォルダを「信頼できる場所」にすること(デフォルトのまま)が必要です。
Excelの場合のように「すべての信頼できる場所を無効にする」設定を適用すると、正当なマクロも含めて動作しなくなり、利便性を大きく損なってしまいます。
VAプロテクトツールの活用
この課題を解決するため、VBAアセットでは「VAプロテクト」という専用ツールを提供しています。このツールは、Wordのスタートアップフォルダを書き込み禁止状態にすることで、不正なマクロファイルの侵入を防ぐことができます。
「マクロの設定」のオプション選択
Wordの場合、STARTUPフォルダに配置されたマクロを使用するのが通常で、個別のマクロファイルを開くことはないと考えられます。そのため、「マクロの設定」は「すべてのマクロを無効にする(通知しない)」を選択することを推奨します。
この設定では、マクロ付きファイルを開いてもセキュリティ警告バーが表示されないため、誤って「コンテンツの有効化」をクリックしてしまうリスクを回避できます。STARTUPフォルダ内のマクロは、そのフォルダが「信頼できる場所」に設定されていれば、この制限の影響を受けずに実行されます。
コメント