SFX ファイル形式とは?
.sfx は 自己解凍形式アーカイブ(self-extracting archive)フォーマットです。.sfx ファイルは、圧縮されたデータとそれを展開するために必要な解凍コードを一緒に保存しているため、ターゲットのマシンに追加のソフトウェアがなくてもアーカイブ自体が自己解凍します。Windowsでは、完成した自己解凍ファイルは標準的な PE 実行ファイルであり、最初の2バイトは通常の Windows 実行ファイルヘッダーである MZ で、その後に圧縮されたペイロードが追加されています。スタブ(解凍プログラム部分)は、埋め込まれたアーカイブ固有の末尾のシグネチャを介してアーカイブデータの位置を特定します。
一度作成されたこのようなアーカイブには、後からファイルを追加することはできない点に注意が必要です。圧縮アルゴリズムは作成に使用されたアーカイバに依存し、一般的な選択肢には DEFLATE (.ZIP)、RAR (.RAR)、または LZMA/LZMA2 (.7Z) が含まれます。
ほとんどのアーカイブ・圧縮ツールには、自己解凍アーカイブを作成するオプションがあります。最も一般的な完成形態は .EXE ファイルです。単なる .sfx ファイルは通常、完成したアーカイブそのものではなく、WinRAR の SFX «モジュール»(自己解凍ファイルを組み立てるために使用されるスタブ)を指します。.sfx ファイルをダブルクリックしても展開できない場合は、拡張子を .exe に変更して実行するか、実行せずに 7-Zip や WinRAR で直接開くことで通常は解決します。
.sfx ファイルはその実行ファイルとしての性質上、メールに添付されるとメールサーバーによってブロックされるのが一般的です。同じ理由で、信頼できないソースからの .sfx や自己解凍形式の .exe は、未知の実行ファイルと全く同じように扱ってください。7-Zip や WinRAR などの本物のアーカイバは、ファイルを実行せずに埋め込まれたアーカイブのペイロードを開くことができるため、見慣れないソースに対してはこれが最も安全な方法です。
セキュリティと安全性
リスク: HIGHSFX は実行コードであるため、古典的なマルウェア配布手法となります。攻撃者はドロッパーを無害な自己解凍アーカイブに偽装したり、WinRAR SFX スクリプトを悪用して解凍後にコマンドをサイレント実行したりすることがあります(既知の Living-off-the-land 手法)。ルール:不明な送信者からの SFX は絶対にダブルクリックしないこと。まず 7-Zip や WinRAR で読み取り専用として開き、ペイロードを検査すること。ウイルス対策ソフトでスキャンすること。そして、プログラムを自動起動させる SFX の «コメント»/セットアップスクリプトに注意すること。ベンダーの公式サイトからの署名済みインストーラーは問題ありませんが、メールに添付された予期しない .exe は危険です。
形式の詳細
概要- BlackBerry テーマ / OTA パッケージフラグメント - 一部の BlackBerry やその他のベンダーのツールチェーンでは、自己解凍リソースバンドルに .sfx が使用されていました。
- ゲーム/エンジン自己解凍データブロブ - インストーラーやパッチツールが、自己解凍ペイロードを .exe ではなく .sfx と命名することが稀にあります。
SFX ファイルを開くプログラム
技術的詳細
詳細仕様| フォーマットタイプ | 圧縮アーカイブを包む実行ファイルラッパー (PE/COFF スタブ) |
| マジックバイト | オフセット 0 に 4D 5A ("MZ") - 標準的な Windows PE 実行ファイルヘッダー |
| エンコーディング | バイナリ |
| バイト順序 | リトルエンディアン |
| 圧縮 | 埋め込まれたアーカイブから継承: DEFLATE (ZIP), RAR, LZMA/LZMA2 (7-Zip), ARJ, LZH など |
| 暗号化 | オプション。埋め込まれたアーカイブが AES-256 (WinRAR, 7-Zip) をサポート。解凍スタブ自体は暗号化されません |
| MIMEタイプ | application/x-msdownload; または application/octet-stream |
| 一般的なファイルサイズ | スタブのオーバーヘッドによる数百 KB から、ペイロードに応じた数 GB まで |
| 最大アーカイブエントリ数 | 埋め込まれたフォーマットに依存 (ZIP: ZIP64 なしで 65,535、RAR および 7z: 実質無制限) |
| 整合性チェック | 埋め込まれたアーカイブからのエントリごとの CRC32。RAR/7z はリカバリレコードを追加可能。PE ラッパーへの Authenticode コード署名は任意 |
| パスワード保護 | 埋め込まれたアーカイブの暗号化によりサポート。WinRAR および 7-Zip では AES-256。解凍時にパスワードプロンプトが表示されます |
| 関連プラットフォーム | Windows (主要)、DOS (歴史的な ZIP2EXE/ARJ)、Classic Mac OS .sea 自己解凍形式 (歴史的) |
| 構造 | 先頭にネイティブの解凍スタブ (.exe エントリポイント) があり、その後に圧縮アーカイブデータと末尾のディレクトリまたはアーカイブ終了シグネチャが続きます |
| 開発者エコシステム | 単一の開発者は存在しません。PKWARE (ZIP2EXE)、win.rar GmbH (WinRAR SFX モジュール)、Igor Pavlov (7-Zip 7zSD.sfx)、WinZip/Corel などによって生成されます |
| リリース日 | Early 1990s (DOS-era self-extracting ZIP/ARJ archives) |
| 最新バージョン | N/A (no single spec; defined by the host archiver, e.g. WinRAR SFX module) |
| 仕様書 | www.win-rar.com |
SFX の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。SFX ファイルについて最初の質問をしてみましょう。