Zip-бомба
Zip-бомба, також відома як файлова бомба, бомба розпакування або «zip of death» (ZOD; укр. «Zip смерті») — це шкідливий архівний файл при розпакуванні якого можна викликати зависання системи шляхом заповнення всього вільного місця на носії. Він створений для того, щоб зламати або зробити непридатною програму чи систему, що його читає. Чим старіша система або програма, тим більше ймовірність, що вона піддасться дії «бомби». Часто використовується для вимкнення антивірусного програмного забезпечення, щоб створити можливість для традиційнішого шкідливого програмного забезпечення[1].
Zip-бомба дозволяє програмі працювати нормально, але замість того, щоб захоплювати її роботу, вона створює архів, для розпакування якого потрібна надмірна кількість часу, дискового простору або пам'яті[2].
Більшість сучасних антивірусних програм можуть визначати, чи є файл zip-бомбою, щоб уникнути його розпакування[3].
Zip-бомба зазвичай є невеликим файлом для легкості передачі та уникнення підозр. Однак, коли файл розпаковується, його вміст перевищує можливості системи для обробки.
Відомим прикладом zip-бомби є файл 42.zip, який є zip-файлом невідомого авторства[4]. Коефіцієнт стиснення 42.zip 106 мільярдів до одного, він містить 42 кілобайти стиснених даних, що складаються з п'яти шарів вкладених zip-файлів по 16 у кожному. Кожен архів на нижньому рівні містить файл розміром 4,3 гігабайти (4294967295 байтів), загальний обсяг яких становить 4,5 петабайта (4503599626321920 байтів) незжатих даних[5].
У багатьох антивірусних сканерах виконується лише кілька рівнів рекурсії на архівах, щоб запобігти атакам, які можуть призвести до переповнення буфера, недостатньої пам'яті або перевищення допустимого часу виконання програми. Zip-бомби часто покладаються на повторення однакових файлів, щоб досягти екстремальних коефіцієнтів стиснення. Методи динамічного програмування можуть бути використані для обмеження проходження таких файлів, так що на кожному рівні рекурсії слідує лише один файл, ефективно перетворюючи їхній експоненційний ріст у лінійний[5].
Інший варіант шкідливого архіву розробив програміст Девід Фіфілд. У запакованому вигляді його архів має 46 МБ, а при розпакуванні займає 4,5 петабайти. При створенні Фіфілд використовував не рекурсивну техніку, як його попередники (тобто методом «зворотної матрьошки»), а зумів перекрити файли всередині архіву, що дозволило досягти вищого коефіцієнта стиснення[6].
- ↑ Leyden, John. DoS risk from Zip of death attacks on AV software?. www.theregister.co.uk.
- ↑ Pelton, Joseph N (28 August 2018). Smart cities of today and tomorrow : better technology, infrastructure and security. Springer. ISBN 978-3-319-95822-4. OCLC 1097121557.
- ↑ Bieringer, Peter (12 лютого 2004). AERAsec - Network Security - Eigene Advisories. Архів оригіналу за 3 березня 2016. Процитовано 19 лютого 2011.
- ↑ Smith, Ernie (10 липня 2019). The Most Clever 'Zip Bomb' Ever Made Explodes a 46MB File to 4.5 Petabytes. VICE. Процитовано 11 вересня 2024.
- ↑ а б Svoboda, David (8 April 2011). IDS04-J. Safely extract files from ZipInputStream. SEI CERT Oracle Coding Standard for Java. Carnegie Melon University.
- ↑ David Fifield (28 листопада 2019). A better zip bomb (англ.). Архів оригіналу за 15 лютого 2022. Процитовано 4 березня 2020.