ZIPファイルにウイルスは含まれる?圧縮ファイルを安全に展開する方法
圧縮ファイルを受け取ったとき、多くの方は特に考えることなくダブルクリックして展開されるかと思います。ゲームの改造データ、アニメの字幕ファイル、フリーソフトのインストーラー——日本では、これらがZIPやRARで配布されることが日常的です。しかし攻撃者はまさにその習慣を利用します。ZIP・RAR・7z・TARは単なる容れ物ではありません。これらは配送手段であり、中身はランサムウェアからシステム設定をひそかに書き換えるスクリプトまで、何でも入り得ます。
この記事では、アーカイブに潜む脅威の種類、ローカルのウイルス対策ソフトが万全でない理由、そしてサンドボックス型のオンライン展開ツールがどのようにリスクを取り除くかを解説します。
ZIPファイルの中に潜み得るもの
アーカイブはコンテナです。何でも格納できます。具体的には:
- 実行ファイル —
.exe、.bat、.cmd、.vbs、.ps1など、開いた瞬間にコードを実行するファイル。 - マクロ付きOfficeドキュメント — 開いた際にマクロが動作し、バックグラウンドで第二のペイロードをダウンロードする
.docxや.xlsm。 - JavaScriptペイロード — WindowsスクリプトホストがデスクトップからそのままROMすることができる
.jsファイル。 - 難読化スクリプト — 静的スキャナーがパターンを認識できないよう意図的に読みにくくされたコード。
- 二重拡張子トリック —
invoice.pdf.exeというファイルは、Windowsで拡張子が非表示の場合(既定設定)invoice.pdfと表示されます。アイコンはPDF。実体は実行ファイルです。
これらの脅威は、アーカイブソフトウェアに脆弱性がなくても機能します。展開してファイルを開くだけで十分です。
アーカイブを通じてマルウェアが広がる仕組み
アーカイブ形式そのものが、ソーシャルエンジニアリングの道具として機能します。主な配布経路:
ゲームの改造データや非公式パッチ — 有名ゲームの「セーブデータ改造ツール」や「チートソフト」を探してダウンロードしたZIPに、目的のソフトとともにキーロガーや遠隔操作ツールが同梱されているケースがあります。
字幕ファイルの配布サイト — アニメや映画の字幕をZIPで提供するサイトの中には、悪意あるスクリプトを混入させたものがあります。
フィッシングメールの添付ファイル — 請求書や荷物の不在通知を装ったメールにZIPが添付されている場合があります。一部のメールゲートウェイは、展開前には内部の実行ファイルを検知しません。
ネスト構造のアーカイブ — ZIP の中に ZIP の中に ZIP。各層を手動で展開する必要があり、一段階しか検査しない自動スキャナーを疲弊させます。
パスワード付きアーカイブ — メール本文にパスワードが記載された状態でZIPが送られてくる場合、アーカイブは暗号化されているためウイルス対策ソフトは内容を検査できません。ユーザー自身が復号し、スキャナーを無効化してしまいます。
Zip Bomb:小さなファイルがシステムをクラッシュさせる
Zip bombは、展開すると壊滅的なサイズに膨張するよう設計されたアーカイブです。最もよく知られた例が 42.zip です。ディスク上では42キロバイトですが、完全に展開すると約4.5ペタバイト——数千台のハードドライブを満杯にし、無防備なシステムをクラッシュまたはフリーズさせるのに十分な量です。
仕組みは、繰り返しデータを層状に圧縮することです。圧縮状態では10億個の同一バイトはほぼスペースを取りません。展開時には、システムはそのすべてに対してメモリとディスクを同時に確保しようとします。
展開前にuncompressedサイズを確認しないエクストラクターは、ディスクかメモリが枯渇するまで処理を続けます。
パストラバーサル攻撃
パストラバーサル攻撃では、悪意あるファイル名がアーカイブに直接埋め込まれます。document.txt の代わりに、エントリ名が ../../Windows/System32/drivers/etc/hosts や ../../../.bashrc になっている場合があります。脆弱なエクストラクターはこのパスをそのまま辿り、意図した展開フォルダの外にファイルを書き込みます。
平たく言えば:攻撃者はあなたのファイルシステム上でファイルの着地点を制御できます。システムファイルを上書きしたり、設定ファイルを置き換えたり、起動時に自動実行される場所に実行ファイルを配置したりすることが可能です。アーカイブは普通のZIPに見えます。被害は展開中にひっそりと発生します。
ローカルで展開することのリスク
アーカイブをローカルで展開すると、3つの層を同時にリスクにさらします:
- ファイルシステム — パストラバーサルや自動実行スクリプトが、ユーザーアカウントのアクセス権がある場所ならどこにでも書き込める。
- ウイルス対策ソフト — 既知のものしか検出できない。難読化・新種・暗号化ペイロードはローカルAVをすり抜けることが多い。
- 展開ソフトウェア — WinRAR、7-Zip、Windowsの組み込みエクストラクターには、実際に悪用されたことのある未パッチの脆弱性があります。改ざんされたアーカイブを開くだけで脆弱性が発動する場合があります。
アーカイブ内のファイルへのたった一度のダブルクリックが、ウイルス対策ソフトが反応する前にスクリプトを実行してしまうことがあります。
サンドボックスアプローチ:リモートでファイルを処理する
オンラインツールでアーカイブを展開する場合、展開処理はリモートサーバー上で行われます——お使いのデバイス上ではありません。OS・ファイルシステム・ローカルアプリケーションは一切関与しません。Zip bombが含まれていても、被害を受けるのはサーバー上のコンテナです。実行ファイルが含まれていても、ダウンロード後に削除される一時ディレクトリに置かれるだけで、ローカルでは実行されません。
これは回避策ではありません——信頼できないコンテンツとローカル環境を適切に分離するための、アーキテクチャ上の正しい設計です。
FileCrankが安全のために行っていること
FileCrankの展開ツールは、これらの具体的な脅威を念頭に置いて構築されています:
- Zip bomb検出 — 展開開始前に非圧縮サイズを確認します。安全な上限を超えるファイルはデータ書き込みが行われる前に即座に拒否されます。
- パストラバーサル防止 — 書き込み前にすべての出力パスをサニタイズします。トラバーサルシーケンス(
../、..\\)を正規化し、展開されたファイルが常に指定されたディレクトリ内に収まるようにします。 - MIMEタイプ検証 — 拡張子だけでなくファイルヘッダー(マジックバイト)を検査します。
photo.jpgという名前のWindowsの実行ファイルはヘッダーレベルで検出されます。 - 自動クリーンアップ — アップロードされたアーカイブと展開されたファイルは、ダウンロード完了後にサーバーから削除されます。データは保持されません。
- インストール不要 — デバイス上では何も実行されません。ブラウザ拡張機能なし、デスクトップアプリなし、インストールソフトウェアによるサプライチェーンリスクなし。
不要なファイルを削除してから共有したい場合はアーカイブの再パックを、自分でクリーンなアーカイブを作成する場合はファイルの圧縮をご利用いただけます。
チェックリスト:アーカイブを開く前に
受け取った圧縮ファイルを展開する前に、以下を確認してください:
- このファイルを自分で請求しましたか?それとも予期せず届きましたか?
- 送信者の身元は確認されていますか?名前だけでなく、メールドメインを確認しましたか?
- ファイル名は期待していたものと一致していますか?
- アーカイブに実行ファイル・スクリプト・マクロ付きOfficeファイルが含まれていますか?
- パスワードが設定されていて、そのパスワードが同じメッセージで送られてきましたか?
- すべて展開する前にファイルリストを確認しましたか?
少しでも疑問を感じたら、ローカルで触れる前にオンライン展開ツールでサンドボックス環境の中で内容を確認してください。
よくある質問
ZIPファイルをダウンロードするだけでコンピューターが感染することはありますか? 通常、ダウンロードだけでは感染しません——悪意あるコンテンツが展開・実行される必要があります。ただし、一部のブラウザは自動的にファイルを展開する場合があり、展開ソフトウェアの脆弱性によってはファイルを開いた瞬間に発動するケースもあります。
Zip bombとは何ですか?どう対策すればよいですか? Zip bombは展開時に巨大なサイズに膨張するよう設計されたアーカイブで、ディスクやメモリを使い尽くしてシステムをクラッシュさせます。データを書き込む前に非圧縮サイズを確認するエクストラクターを使うことで対策できます——FileCrankは処理開始前にこれを行います。
メールで届いたZIPを開いても安全ですか?
送信者とその文脈について確信が持てる場合のみ安全です。予期しないZIP、同じメッセージにパスワードが記載されたZIP、.exe や .vbs ファイルを含むZIPは疑わしいとみなすべきです。
ウイルス対策ソフトはZIP内のマルウェアを検出できますか? 最新のAVの多くは暗号化されていないアーカイブの内容をスキャンします。ただし、パスワード保護されたアーカイブ、深くネストされたアーカイブ、新種や難読化されたマルウェアは検出を回避することが多くあります。
なぜオンライン展開ツールはローカルソフトウェアより安全なのですか? 展開処理はリモートサーバーで行われます。ローカルのファイルシステムとアプリケーションは一切露出しません。Zip bombはサーバーのサンドボックスに当たります。パストラバーサル攻撃は一時コンテナに書き込まれます。あなたのデバイスは展開後のファイルを直接受け取ることはありません。