Zip 炸彈

一种恶意的计算机压缩文件

zip 炸彈,也稱為死亡 zip解壓縮炸彈,是一種惡意的電腦檔案,會使讀取它的程序或系統崩潰或失效。它會使防毒軟體失去能力,來為更多的傳統計算機病毒創造機會。[1]

zip 炸彈不會阻止程序的正常運行,而是讓程序工作,但是文件里的檔案是精心設計的,因此要解壓縮文件時(比如用病毒掃描程序來給它掃描病毒),就需要花費大量時間、磁碟空間隨機存取記憶體

大多數現代殺毒軟件都可以檢測文件是否是 zip 炸彈,以免將其解壓縮。[2]

細節和用途

一個 zip 炸彈通常是一個小文件,便於傳輸也避免被懷疑。 但是,解壓縮文件時,它的內容就會超出系統的處理能力。

zip炸彈的一個示例是文件42.zip,它是一個只有42 KB大的zip文件,其中包含5層嵌套的zip文件(每組16個),如果全部解壓縮出來,每個底層壓縮文件的大小是 4.3 GB(4 294 967 295字節,約為3.99GiB),總計4.5 PB(4 503 599 626 321 920字節,約為3.99 PiB),是解壓縮前約一百多兆倍大。[3] 這個文件可從互聯網上的各種網站上下載。 在許多防病毒掃描程序中,僅對歸檔執行幾層遞歸,免受可能導致緩衝區溢出,內存不足或超出程序執行時間的攻擊。zip 炸彈經常(如果不是總是)依靠重複相同的文件內容來實現它極高的壓縮率。 可以採用動態編程方法以免遍歷這些文件,在每個級別上只跟蹤一個文件,從而有效地將它的指數增長轉換為線性增長。

也有一些 zip 文件在未壓縮時會產生相同的副本[4][5] 還有一種複雜的 zip 炸彈形式,它利用 zip 文件的規範和Deflate壓縮算法來創建炸彈,而無需使用 42.zip 那樣的嵌套。[6]

另見

參考資料

  1. ^ at 14:35, John Leyden 23 Jul 2001. DoS risk from Zip of death attacks on AV software?. www.theregister.co.uk. [2020-09-12]. (原始內容存檔於2020-03-02). 
  2. ^ Bieringer, Peter. AERAsec - Network Security - Eigene Advisories. 2004-02-12 [2011-02-19]. (原始內容存檔於2016-03-03). 
  3. ^ 42.zip. unforgettable.dk. [2020-09-12]. (原始內容存檔於2022-02-07). 
  4. ^ research!rsc: Zip Files All The Way Down. research.swtch.com. [2020-09-12]. (原始內容存檔於2022-02-24). 
  5. ^ Quine.zip. [2020-09-12]. (原始內容存檔於2022-01-13). 
  6. ^ A better zip bomb. www.bamsoftware.com. [2020-09-12]. (原始內容存檔於2022-02-15).