2ちゃんねる ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

【IT/ウィルス】「非再帰的ZIP爆弾」は10MBのファイルが281TBに膨らむ[07/06]

1 :一般国民 ★:2019/07/06(土) 02:34:22.48 ID:CAP_USER.net
「非再帰的ZIP爆弾」は10MBのファイルが281TBに膨らむ
https://gigazine.net/news/20190705-zip-bomb/
2019/7/5
GIGAZINE

画像:
https://i.gzn.jp/img/2019/07/05/zip-bomb/01.png

【科学(学問)ニュース+】

数十KBのZIPファイルに見えて解凍すると膨大なファイル容量を食う「ZIP爆弾(高圧縮ファイル爆弾)」は、ZIPファイルの中にZIPファイルを格納し、内側のZIPファイルの中にさらにZIPファイルが……という入れ子構造を用いることで圧縮アルゴリズムの限界をうまく回避していますが、それゆえに多くのアンチウイルスソフトで対策されています。この弱点を乗り越えた「非再帰的ZIP爆弾」は、展開後のサイズこそ高効率で作られた再帰的ZIP爆弾にかなわないものの、わずか10MBから281TBへ2800万倍に膨らみます。

ZIPの圧縮で一般的に用いられているアルゴリズムは「Deflate(デフレート)」と呼ばれるもので、圧縮・展開速度の速さが特徴的です。圧縮率が最高で1032:1(約0.096%)という点はZIP爆弾を作る際の「足かせ」となっており、この制限を回避するため、ZIP爆弾ではZIPファイル内にZIPファイルを格納する入れ子構造を利用して、入れ子1つごとに1032倍にできるだけ近い圧縮率を得ることで、巨大ファイルを極小に見せています。

たとえば、有名なZIP爆弾に「42.zip」というファイルがあります。このZIPファイルは2種類存在して、古いバージョンは展開時のパスが不要でファイルサイズが「42,374バイト」、新しいバージョンは展開時にパスが必要でファイルサイズが「42,838バイト」。以下は古いバージョンのプロパティです。

中をのぞいてみると「lib 0.zip」から「lib f.zip」まで連番のつけられた16個のZIPファイルが格納されています。ファイルの元サイズは34,902バイト(35KB)で、圧縮後は2,533バイト(2.6KB)。圧縮率は7.3%。

「lib 0.zip」には、さらに「book 0.zip」から「book f.zip」というZIPファイルがあります。こちらは元サイズが29,446バイト(30KB)、圧縮後が2,084バイト(2.1KB)で、圧縮率7.1%。

外側の42.zipから数えて5層目の「page 0.zip」を開くと、とうとう入れ子が終了して「0.dll」というファイルが登場しました。元サイズは4,294,967,295バイト(4.3GB)で、圧縮後は4,168,158バイト(4.2MB)なので、圧縮率は実に0.1%です。

6層目には同じように0.1%にまで圧縮された巨大ファイルが他にも大量にあるので、もし42.zipを展開をすると、わずか42KBのところから4,507,981,343,026,016バイト(4.5PB)ものファイルが出現することになります。その膨張率は1060億倍。

ただし、これは「再帰的な展開が行われる実装なら」という前提が必要で、最上位層しか展開されない場合、展開後サイズはわずかに558,432バイト(558KB)で、元の13.2倍にしかなりません。

一方、デビッド・フィフィールド氏の提唱する非再帰的ZIP爆弾は、1層目に0.1%まで圧縮されたファイルが250個並んでおり、元ファイルサイズは42.zipと同じ42KBですが、展開すると元の12万9000倍となる5,461,307,620バイト(5.5GB)にまで膨らみます。


元ファイルを10MBにすると、展開後サイズを元の2800万倍の281TBにまで増やせるとのこと。さらに、Zip64を用いると、46MBのファイルを9800万倍の4.5PBにすることが可能。

この非再帰的ZIP爆弾は、ZIPコンテナ内のファイルを重複させることで、コピーを作ることなく複数ファイルに含まれる圧縮率の高いカーネルを参照する仕組みとなっています。このため、入力サイズに比例して出力サイズが増大し、「爆弾」が大きくなるほど圧縮率が向上するとのこと。

記事作成時点で、42.zipはアンチウイルスソフトが反応してダウンロードできないようになっていましたが、フィフィールド氏の作った非再帰的ZIP爆弾ファイルには反応しなかったので、くれぐれも怪しいZIPファイルには気をつけてください。

2 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 02:41:26.87 ID:78Te2//l.net
破壊度

 貧者の爆弾 >>>非再帰的ZIP爆弾


貧者の生物化学兵器
https://www.newsweekjapan.jp/stories/world/2017/05/post-7597.php

3 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 02:48:21.91 ID:e8eG/trn.net
ZIP爆弾ねぇ。懐かしい気がする。
真っ当な解凍ソフトならそこそこ対策されてんじゃないかな?
対策と言っても空き容量チェックする程度の話だけど。

それより普通のZIP爆弾って入れ子構造だったの? 知らんかった。
しかもZIPってハードリンクみたいな事もできるのか。
まぁできるだろうね。FATみたいなのに位置が記されてるだろうし。

4 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:03:07.62 ID:L4LQv+hP.net
単色ビットマップで巨大サイズ作るイタズラ昔有ったよね。
手口としては懐かしい感じw

5 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:06:49.50 ID:Xiu0iszY.net
>>2
両爆弾はコンセプトとしては似ている。
同じ思想系の系譜。

6 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:33:06.71 ID:K48Ls8FS.net
うちの会社で画像圧縮して復元すると巨大になるやつ作ってるアホいたなあ。
福島出身の陰気な野郎だったよ

7 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:34:23.66 ID:eMKTeOzN.net
これでハードディスクが一瞬にして満杯になって作動不能になるわけだな。

8 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:38:37.56 ID:MPiotHvc.net
アウトルックででかいファイル添付するバカのせいでメールサーバー止まったことがあったな

9 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:46:04.04 ID:sjPV4wZp.net
xlsx とか docx とか、2007 以降の Office ファイルって、実態は zip ファイルなんだよな
>>1 を悪用すると、取引先に嫌がらせができちゃうw
嫌がらせどころじゃなく Windows が起動できなくなる破壊活動だけど

10 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 03:57:26.49 ID:wBnTbA2Z.net
素zipはソリッド圧縮出来ないだろ
なんでカーネルファイルなんて手法が出てくるんだ?

11 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 04:09:01.26 ID:uJHLNBXY.net
えげつない

12 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 04:39:05.85 ID:dEVPeXr3.net
>>8
20年前か?

13 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 06:40:13.35 ID:sA9+Al5+.net
7zipのソフトは対策されてる?

14 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 06:59:30.04 ID:2WMUeQXz.net
>>1
あまり使わないキャッシュファイルの収納に便利?
素数10億まで書き出したのが500MBあり
1000憶ぐらいまでファイルに書き出しておこうと思ってちょうど困ってたんだ
これでかすぎるぞ とな

素数の性質は大きな素数は存在するが濃度が薄い(大きな素数を追記しても
その数が少なく見積もれるのでたぶん1G ~2GB ぐらい1000億まで収まる可能性がある)
しかし1GBとか使わないときにはサイズ撮りすぎ

15 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 07:22:01.33 ID:/dhZJwJ7.net
だからズームイン朝のままが良かったんだよ

16 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 07:29:51.62 ID:eonF6hZy.net
幼稚な論理だw

17 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 07:30:42.02 ID:qLr2gT98.net
今時こんなの対策してないソフトあるん?

18 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 07:40:45.90 ID:w6fY5bI7.net
(`●ω●´) ロリータポルノ爆弾

19 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 08:33:21.96 ID:7JyKRXAM.net
Win95時代に白一色のビットマップファイルで同じようなことをやったな。

20 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 09:15:45.32 ID:IVRM4rOZ.net
しかし、展開先もどうせ仮想ディスクなのであった。

21 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:08:26.86 ID:5WJD2H0H.net
ディスクの容量って2種類あって、
一つはGBとかの分かりやすい容量
もう一つはファイル数を扱う容量
ファイル数を何百万個扱えるかは4KB、8KBといったフォーマット時のブロック単位で変わってきて、専門用語ではi-node数が2つ目の容量になる
1ファイルあたり、1ブロック数(4KB)より少ない容量で大量のファイルを用意すると、i-nodeが枯渇してディスク容量不足が発生する
Windowsならフォルダのインデックス作成で爆死するレベル
素人に作りやすいのは1個の巨大ファイルを高効率で圧縮できるバイナリファイルの作成だろうけど、この攻撃によるダメージは無いに等しいくらい簡単に復旧できる

22 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:12:03.41 ID:CYTBsbOx.net
なんと迷惑なw

23 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:12:15.76 ID:910UHNg7.net
>>14
ランダムなデータは圧縮効率が悪いが、素数はどうなんだろう

24 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:13:09.08 ID:37QDLEc5.net
>>21
で、おまえはなんの玄人なの?w

25 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:16:20.96 ID:T+jwW1Mz.net
数列ならともかく素数の並びじゃPC的にランダムなデータじゃないの?

26 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:31:51.18 ID:jsGN5Q7b.net
増えるワカメ

27 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 10:36:31.21 ID:4LJJ/RbW.net
他人に嫌がらせするために情熱燃やせる連中とは関わり合いたくねえな

28 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 11:27:06.12 ID:CS/lEhIg.net
300TBのHDD積んどけば問題ないな

29 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 11:30:27.90 ID:vUgIhzxr.net
中身を確認すればOK

30 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 11:37:00.36 ID:juWbXTxY.net
>>15
あれJAPをもじったタイトルだからな

31 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 11:45:09.30 ID:AlU5bwwx.net
FAT32なワイ高みの見物

32 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 11:51:36.14 ID:dBhWae2n.net
増えるワカメだったっけ、懐かしいな

33 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 12:28:22.59 ID:PwFGGGw1.net
32KBしか容量がなかったファミコン時代のテクニックみたいな話だなあ

34 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 12:54:54.28 ID:XaFcmuQ0.net
要するに「ZIPでくれw」は危険だ、ということかな?w

35 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 13:04:08.67 ID:JiRM0ybp.net
>>34
そこで「LZHでくれw」

36 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 13:05:13.84 ID:iRgQEo/l.net
つうか 今時怪しいZIPファイルだなんて・・・

37 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 13:10:57.73 ID:B9xnns66.net
メールに添付して送信すると
メールサーバがウイルスチェックのために zip を展開してダウンするのかね?

38 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 14:36:11.68 ID:S1RiveZ8.net
だまりゃ!麿は恐れ多くも帝より三位の位を賜わり中納言を務めた身じゃ!
すなわち帝の臣であって徳川の家来ではおじゃらん!

39 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 15:03:37.24 ID:tvjH2Efz.net
なつかC

40 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 15:13:03.92 ID:snrXmrhb.net
添付で送れないならHTTPDにPOSTすればいいじゃない

41 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 15:23:29.04 ID:mt7f2ZT8.net
>>3
少しは>>1を読んでから書け

42 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 15:56:38.75 ID:lKyYdeuW.net
これが問題になるセキュリティレベルとか・・・

43 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 15:59:21.37 ID:tRafcpzv.net
今時zipでくれとか誰も言わんよな

44 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 16:14:44.81 ID:L1W+E8aO.net
>>24
人生…かな?
私からは以上だ。仏陀(悟りし者)より。

45 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 16:16:02.51 ID:xw9BEHgw.net
>>3
元ソース全部読めなんて言わんけど
1も読まないのなんやねん

46 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 16:16:43.65 ID:7hHKV14C.net
ファイルを圧縮して送る場合、zip以外なら何がいいのだろ?

47 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 16:43:34.21 ID:jlHzf62D.net
ハードディスクの中身完全消去するには良さそう

48 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 17:30:23.85 ID:o09QgzYs.net
>>8
メールのサイズで弾かない設定にしてるのが悪い。

49 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 17:45:16.88 ID:KeIfOPor.net
>>46
RAR

50 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 18:38:34.08 ID:e8eG/trn.net
>>41
>>45
なんか勘違いしてるっぽいけど合ってるよ。
・ZIP爆弾は非再帰的と再帰的二種類ある
・非再帰的な方は昔からある
・記事では再帰的→非再帰的の順で説明している
・引っかかるのはウィルス対策ソフト。解凍ソフトの動作の話はしてない

なんか勘違いしてそうな点はこの辺かな。
読み違えてんじゃない?

51 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 18:39:51.39 ID:e8eG/trn.net
>>50
訂正:昔からあるのは再帰的の方

52 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 18:51:13.10 ID:HX1egFld.net
デフォルトでクォータかかってんだから無意味

53 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 19:24:52.62 ID:0ucx9Uqy.net
>>1
これはすごい発見だデータ量を劇的に小さくできるんだな!( ・`ω´・)

54 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 19:51:56.85 ID:MRa36w5f.net
ZIPでくれ

55 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 20:05:39.51 ID:L76+5H0T.net
format c/

56 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 20:38:58.67 ID:NwBYbFIP.net
増えるワカメ

57 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 21:28:15.00 ID:2WMUeQXz.net
FILESIZE 30GB
long type overflow at
2147483563 2147483579 2147483587 2147483629 2147483647-2147483648-2147483647-2147483646-2147483645-2147483644

needing something handle bignum library

58 :ニュースソース検討中@自治議論スレ:2019/07/06(土) 22:59:13.14 ID:WUmypzAg.net
解凍しなくてもこのファイルがあるとウイルス対策ソフトの検索が終わらねぇ

59 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 01:31:44.10 ID:rryxSCDq.net
>>55
ちがう。

format c: /q

60 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 02:04:33.41 ID:9MZ9a/uO.net
辣韭の皮

サルにラッキョウを与えると
皮をむいて食おうとして止め処がわからず
最後まで剥いてなくなって泣き叫ぶという

61 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 02:07:56.08 ID:9MZ9a/uO.net
>>58
アーカイブの中身をチェックするということは、そのアーカイブを解凍して中のファイルを取り出して見ているということだからね。

62 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 02:14:02.89 ID:bMikqJ+t.net
圧縮ってエントロピーの限界があるって耳学問で聞いたことあるけど??

63 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 02:34:05.48 ID:9MZ9a/uO.net
情報エントロピーの限界というのは、理想的にランダムな数列に対して可逆圧縮を行う際の概念でしかない。

ランダムではない数列(たとえば「バーカ!お前の母ちゃんデベソ!!」という文字列を一兆回繰り返す、など)の圧縮率は高く、
また画像や音声、動画などは、情報の一部を切り捨てて不可逆的な圧縮を行うことで、圧縮率を高める事ができる。

プログラムコード等の、劣化が許容されず、パターン化も困難でランダムに近いデータの圧縮率は、およそ2倍ほどとされる。

64 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 02:43:37.81 ID:1otth20t.net
zipにパスワードかけてくださいってマニュアルを先ずは一掃しよう。
エクスキューズにならん

65 :ニュースソース検討中@自治議論スレ:2019/07/07(日) 14:45:44.58 ID:S6HsDcxR.net
おもしろい

66 :ニュースソース検討中@自治議論スレ:2019/07/08(月) 09:35:03.09 ID:JIVwyeZ/.net
>>23
素数は知らんが手持ちの円周率データの場合こんな感じ

テキスト 7.5TB
バイナリ 3.16TB

テキストを bzip2 で圧縮したもの 3.23TB

67 :ニュースソース検討中@自治議論スレ:2019/07/08(月) 19:27:23.19 ID:jyvw1RQI.net
圧縮ソフトは10年以上前のをずっと使ってる。
更新しれとか言われないし。
基本RARだがZIPでも音楽探しちゃうな。

68 :ニュースソース検討中@自治議論スレ:2019/07/08(月) 19:27:48.24 ID:jyvw1RQI.net
解凍ソフトか。

69 :ニュースソース検討中@自治議論スレ:2019/07/08(月) 23:32:52.93 ID:2sUgSmUf.net
>>66
なんでそんなもん持ってるんだ?

70 :ニュースソース検討中@自治議論スレ:2019/07/09(火) 07:21:10.12 ID:EeORrNc7.net
>>64
パス忘れたおえらいさんのzipをツールで解いたらスーパーハカーか?と恐れられた思い出

71 :ニュースソース検討中@自治議論スレ:2019/08/23(金) 03:55:23.57 ID:RKSz8XMz.net
円周率の圧縮率は任意に高くなる。

 π

とかけば2バイトぐらいか。
あるいは、小数点以下1億桁までの円周率なら
  π(10^8)
とやれば、20バイト以下だろうね。

72 :ニュースソース検討中@自治議論スレ:2019/09/22(日) 19:34:54.28 ID:0Nn2TrOh.net
探せと指定もしないのに、ZIPファイルの中を永遠に探索するそいつらが悪い。
ZIP爆弾をウイルスパターンで登録できると思っているやつもいるが、パターンで
登録できる類じゃないことも理解できない単細胞なのかな。

総レス数 72
19 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★