Zip-бомба

Zip-бомба, также известная как файловая бомба, архив смерти или англ. decompression bomb — архивный файл, который по своей природе обладает разрушающим действием. При распаковке может вызвать крах системы, путем заполнения всего свободного места на носителе. Современные[когда?] антивирусы вполне распознают подобные файлы и предупреждают пользователя о разрушающем действии.

История

Первая задокументированная «zip-бомба» появилась в 1996 году[1], когда один пользователь загрузил на доску объявлений в Фидо вредоносный архив, который открыл ничего не подозревающий администратор[2].

Алгоритм

Внешне подобный файл выглядит как маленький архив. При распаковке распаковывается тот же самый архив. Данный файл может предоставлять опасность для антивирусов: в попытке распаковать все архивы антивирус может забить всю память и ничего не найти. Получится бесконечная цепочка - антивирус видит архив, распаковывает тот же самый архив и его распаковывает и так снова и снова.

Использование

В некоторых случаях таким способом можно устроить DoS-атаку на систему, обрабатывающую архивы без участия человека. Так, сообщения между узлами Фидонета пересылаются в архивах, которые создаёт и распаковывает эхопроцессор; а на некоторых сервисах для обмена файлами файлы проверяет антивирус (например, в сентябре 2008 года такая атака была осуществима с Файлы@mail.ru, Яндекс.Народ).

Примеры

Один из самых известных примеров «архива смерти», файл 42.zip[3], коэффициент сжатия которого 106 миллиардов к одному. В сжатом виде архив занимает 42 килобайта (42.374 байта), при постоянной распаковке, пока набор данных не достигнет верхнего предела распаковки в 4.3 гигабайта (4 294 967 295 байт), будет занимать в памяти более 4,5 петабайт (4 503 599 626 321 920 байт).

Другой вариант вредоносного архива разработал программист Дэвид Фифилд. В запакованном виде его архив имеет 46 МБ, а при распаковке занимает 4,5 петабайта. При его создании Фифилд использовал не рекурсивную технику, как его предшественники (то есть методом «обратной матрешки»), а сумел перекрыть файлы внутри архива, что позволило достичь более высокого коэффициента сжатия[4] [5].

Примечания

  1. материалы USENIX 2015 (англ.). — страница 804. Дата обращения: 4 марта 2020.
  2. http://textfiles.com/magazines/DFS/dfs055.txt
  3. 42.zip
  4. David Fifield. A better zip bomb (англ.) (28 ноября 2019). Дата обращения: 4 марта 2020.
  5. m1rko. Ещё лучшая ZIP-бомба (8 июля 2019). — перевод оригинальной статьи David Fifield. Дата обращения: 4 марта 2020.

Ссылки

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.