圧縮ファイルの内容を確認する
ZIPやLZHなどの圧縮ファイルがメールに添付されることはよくあることです。
自己解凍が可能なEXE形式の圧縮ファイルを送付してくる方も中にはいらっしゃるでしょう。
そのような添付ファイルに対し「怪しいファイルではないのか?」と疑った場合に、EXE形式の圧縮ファイルの内容確認ができると便利です。
そこで紹介するツールの1つが、「7-zip」です。
まずは、環境に合った7-zipのインストーラーを以下のURLからダウンロードしましょう。
ここでは、「7-Zip for 32-bit Windows」を選択することとします。
ダウンロードしたインストーラーをダブルクリックするだけでインストールが完了します。
- ツール名:7-zip
- 使用目的:圧縮・解凍
- 入手方法:https://sevenzip.osdn.jp/download.html
拡張子を関連付ける
7-zipと、よく利用する可能性のある拡張子を関連付けしておきましょう。
「7-zip File Manager」を起動し、「ツール」→「オプション」をクリック。
表示されたオプション画面上で、「種類(拡張子)」に対して利用する解凍ソフトウェアをユーザー毎に設定することができます。
PC上の全てのユーザーに7-zipを利用させたい場合は、該当の「種類」に対する「全てのユーザー」の箇所をクリックします。
標準設定されたソフトウェアから「7-Zip」の表記に変更されれば設定完了です。
7-Zipの利用方法
圧縮ファイルをダブルクリックすると、圧縮されているファイル群が確認することができます。
調べたいファイルがあるときには、該当ファイルを選択し、右クリックする事でファイルのハッシュ値を調べることができます。
ファイルのハッシュ値は、デジタルデータの指紋のようなものです。
ハッシュ値がわかれば、VirusTotalなどのデータベースを活用することで、他組織で悪用された既知のマルウェアであるかどうかがわかります。
不審なドキュメントファイルを確認する
メール添付で送られてきたMicrosoft OfficeやPDFといったドキュメントファイルをクリックで開き、そこからマルウェアに感染するといった例は多く見られるケースです。
圧縮ファイルであれば「7-Zip + PeStudio」の利用によって簡易的な確認ができます。
ドキュメントファイルの場合には、専用の解析ツールの利用を推奨します。
ここでは、それらのドキュメントファイルを開かずに中身を確認する方法を紹介します。
o-checker
「o-checker」は、悪性コードの検出アプローチではなく、ファイルフォーマットの構造に着目した方法によって、不正ドキュメントファイルの検出を試みるツールです。
ツール名:o-checker
使用目的:ドキュメントファイル内に悪性コードが含まれるかをチェック
実行にはPythonが必要になります。
解析環境にPythonをインストールがされていなければ、以下のURLからダウンロードしてインストールしましょう。
Python
https://www.python.org/downloads/
入手先からダウンロードし、任意のフォルダーに解凍することでツールの利用準備が完了します。
コマンドプロンプトから解凍したフォルダーヘ移動し、
python o-checker.py[調査したいドキュメントファイル]
と入力することで、簡単にチェックすることが出来ます。
このツールは、Microsoft OfficeやPDFの他に、一太郎(.jtd拡張子)にも対応していることが、非常に重宝する点です。
普段利用しないにも関わらず、一太郎ファイルがメールで送付されてきた際にはぜひ利用してみましょう。
OfficeMalScanner
たいていの不正ドキュメントファイルはo-checkerで検出できるでしょうが、やはり100%の検出は難しいです。
そのため、o-checkerで不正を検出しなかった場合であっても、以下の条件を満たすような場合には悪性コードの検出アプローチを試しておきましょう。
- VirusTotalなどでハシシュ値を検索した結果、複数のウイルス対策ソフトが不正ドキュメントファイルと判定している
- マクロなどが含まれている
そこで有効なツールが、「OfficeMalScanner」です。
OfficeMalScannerは、以下の入手先からをダウンロードすることが出来ます。
2013年からは更新が止まっているので若干古いものではあるが、今のところ有効なツールです。
ツール名:OfficeMalScanner
使用目的:Officeドキュメントファイル内に悪性コードが含まれていないかをチェックし、該当箇所の抽出を行う
入手方法:http://www.reconstructer.org/code/OfficeMalScanner.zip
ダウンロードしたツールを解凍し、コマンドプロンプトを使って実行するのですが、オプションを付与する必要があります。
OfficeMalScannerのオプション
オプション:概説
scan:悪性コードや暗号化された実行ファイルを検出することができる
info:VBマクロを抽出することができる
inflate:Office2007以降に採用されたOfficeファイルをチェックするためのオプション(docx、xlsx、pptx)
検出例
o-checkerには不正ドキュメントではないと判定されたが、VirusTotalでは悪性である可能性を示唆された場合
- 「scan」オプションを使って実行ファイルが含まれていないかを改めてチェックする。
- 実行ファイルが含まれていれば、o-checkerで検出される確率が高いが、何も検出されない場合でもOLE(Object Linking and Embedding)が検出された場合は、「info」オプションの利用を促される。
- 「scan」オプションで動かす。
一太郎などのワープロソフトで作成されたファイルでも、OLEを利用していれば解析できます。
Officemalscanner[チェックを行うファイル]scan
ツールのメッセージに従い、「info」オプションで再度ツールを使用します。
これにVBマクロが埋め込まれている場合には、関連したデータを抽出することができます。
あとは、簡単に中身を確認すれば悪性であるかの判定ができるでしょう。
もし、docxやxlsx、pptx拡張子の場合には「inflate」オプションを使うことで解析することができます。