最終更新: 2026年9月28日
Excel ファイルのセキュリティ解説:XLSX、XLSM、マクロのリスク 何十年もの間、Microsoft Excel はビジネス業務の汎用エンジンとして位置付けられてきました。企業予算のバランスを取り、複雑なデータセットを可視化し、在庫を追跡し、ほぼすべての業界で分析パイプラインを支えています。
しかし、同じ計算柔軟性がスプレッドシートをサイバー攻撃者にとって根強い標的にしています。攻撃者は 1990 年代後半のマクロウイルスの初期からスプレッドシートを武器化してきました。Microsoft とシステム管理者は、ファイル形式の分離やデフォルトのマクロブロックなど、複数の防御層を導入していますが、ソーシャルエンジニアリングや微妙なアーキテクチャ上のリスクにより、Excel に特化した攻撃は依然として重要です。
レジリエントなセキュリティ体制を構築するには、開発者、管理者、パワーユーザーはワークブックインターフェイスの下層を見なければなりません。基盤となる OpenXML フォーマットの動作や、.xlsx と .xlsm がアーキテクチャレベルでどのように異なるか、マクロ実行のメカニズムがどのように機能するかを理解することは、最新のエンドポイントを防御する上で不可欠です。
1. 現代の Excel ファイルの構造:OpenXML の解体 Microsoft Office 2007 がリリースされる前、Excel は主に独自のバイナリ形式でファイルを保存しており、特に .xls フォーマット(Binary Interchange File Format、通称 BIFF8 に準拠)が代表的でした。.xls ファイルでは、データレコード、書式定義、数式、そして Visual Basic for Applications (VBA) マクロストリームが単一の構造化ストレージコンテナにパッケージ化されていました。このため、プログラムによる検査が困難になり、攻撃者は不透明なバイナリ領域内に悪意のあるペイロードスクリプトを隠すことができました。
Excel 2007 以降、Microsoft は Office Open XML (OOXML) 標準(ECMA-376 および ISO/IEC 29500 として標準化)を導入しました。OOXML の下では、Excel ワークブックはもはや単一のバイナリブロブではなく、XML ドキュメント、リレーションシップテーブル、埋め込みメディア資産の階層構造を含む zip アーカイブとなります。
ZIP コンテナ内 標準的な最新のExcelブックの拡張子を .zip に変更すれば、任意の標準的な解凍ユーティリティでその内容を抽出できます:
my_workbook.xlsx (extracted) │ ├── [Content_Types].xml <-- Registry of MIME types and structural parts ├── _rels/ <-- Package-level relationship mappings │ └── .