|
|||||||||||||||||||||||||||||||||||||||||||||||||||
|
|
メソッド (ヘッダー/実際) |
結果 | コメント |
lh4/lh5 | ○ |
|
lh5/lh4 | ○ |
|
lh5/lh6 | × | 普通は展開できない。 |
lh6/lh5 | × | 普通は展開できない。 |
lh6/lh7 | ○ | DJLHA を始めとした一時期のツールで作成される。 |
lh7/lh6 | ○ |
|
h0/h1/h2 形式が扱えますので, 通常, 問題は発生しないものと思われます。
7-Zip では基本ヘッダーの SUM チェックしか行われません。 従って, h2 形式の全て, 多くの h1 形式, そして (Linux 上などで作成された) h0 形式の書庫については, ヘッダー改竄・破損の確認が行われません。 攻撃書庫の多くはヘッダー改竄を伴っていますので, そういった意味では危険性が高いと言えます。
7-Zip 共通のルーチンを使用していることから, 絶対パスをもつものや, 親ディレクトリーを示す ".." のパス情報をもつメンバーについては, 指定したディレクトリー配下へ展開が行われるように調整が行われます。
1000 文字といった長い名前をもったメンバー等の存在する書庫については, 一覧表示は行えますが展開されない (エラーログが出力される。) ようになっています。
これらの不正なパス情報等をもったファイルについては以下のとおりです:
不正内容 | 結果 |
絶対パス (/WORK/Test.TXT) |
冒頭の "/" を無視して, 展開先の配下へ展開する。 |
不正パス 1 (../../WORK/Test.TXT) |
"../" のパス情報を無視して, 展開先の配下へ展開する。 |
不正パス 2 (D/../../D/Test.TXT) |
"../" のパス情報を無視して, 展開先の配下へ展開する。 |
不正パス 3 (D/.../Test.TXT) |
そのまま展開しようとして失敗。 プラットフォームによっては ".." のパス情報として扱われてしまうので注意。 |
オーバーフロー (Long~700字~.txt) |
OS で扱える範囲であれば展開される。 |
拡張子偽造 (Test.c ←40字→ .exe) |
関連付け実行しようとした際には, 拡張子偽造ファイルとしてエラーとなる。 展開は可能。 偽造を伴わない実行形式ファイルについては, 確認無く実行されるので多少注意が必要。 |