Тестирование декомпрессионной zip бомбы

Тестирование декомпрессионной zip бомбы

Тестирование декомпрессионной бомбы

Декомпрессионная бомба является файлом, разработанным для того, чтобы сбивать или удалять бесполезную программу или систему, считывающую её, т.е. отказывать в обслуживании. Файлы этого проекта могут использоваться для проверки уязвимости приложения для данного типа атаки.

Скачать Bombs

Zip бомба, также известная как как zip of death или декомпрессионная бомба, является вредоносным файлом архива, разработанным для того, чтобы сбивать или удалять бесполезную программу или систему, считывающую её. Он часто используется для отключения антивирусного программного обеспечения, чтобы создать отверстие для более традиционных вирусов. Вместо того, чтобы перехватывать нормальную работу программы, zip бомба позволяет программе работать должным образом, но архив тщательно обрабатывается так, что его распаковка (например, с помощью антивирусного сканера для поиска вирусов) требует слишком много времени, дискового пространства или памяти.

Zip бомба представляет собой небольшой файл для упрощения его передачи и избегания подозрений. Однако, при попытке распаковки данного файла, его содержимое запрашивает большего, чем система может обработать. Еще одним примером zip бомбы является файл 42.zip, который представляет собой zip файл, содержащий 42 килобайта сжатых данных, содержащий пять уровней вложенных ZIP-файлов в наборах по 16, каждый архив нижнего уровня, содержащий 4,3 гигабайта (4 294 967 295 байт, ~ 3,99 GiB), в общей сложности 4,5 петабайта (4 503 599 626 321 920 байт, ~ 3,99 PiB) несжатых данных. Подобные файлы все еще можно скачать с различных вебсайтов на просторах интернета. Во многих антивирусных сканерах в архивах выполняется только несколько уровней рекурсии, чтобы предотвратить атаки, которые могли бы вызвать переполнение буфера, состояние нехватки памяти или превысить приемлемое время выполнения программы. Zip-бомбы часто (если не всегда) полагаются на повторение идентичных файлов, чтобы достичь своих предельных коэффициентов сжатия. Методы динамического программирования можно использовать для ограничения обхода таких файлов, так что на каждом уровне рекурсивно выполняется только один файл, эффективно преобразуя их экспоненциальный рост в линейный.

При тестировании всегда лучше начинать с малого и продолжать работать на повышение. Начиная работать с самым большим файлом можно серьезно навредить приложению или системе – пользуйтесь этими бомбами с большой осторожностью.

Все файлы были сжаты (bzipped), чтобы обойти ограничение загрузки файлов GitMub 50 МБ. Группы файлов были заархивированы, а затем снова сжаты (bzipped). Удалите эти дополнительные предварительные кодировки перед сканированием.

Дополнительные источники

                                           ____
                                   __,-~~/~    `---.
                                 _/_,---(      ,    )
                             __ /        <    /   )  \___
              - ------===;;;'====------------------===;;;===----- -  -
                                \/  ~"~"~"~"~"~\~"~)~"/
                                (_ (   \  (     >    \)
                                 \_( _ <         >_>'
                                    ~ `-i' ::>|--"
                                        I;|.|.|
                                       <|i::|i|`.
                                      (` ^'"`-' ")

Когда вы замечаете что-то, что технически выглядит очень сладко, вы продолжаете двигаться дальше и все-таки делаете это, и вы начинаете рассуждать о том, что делать с полученным результатом, только после того, как вы достигли технического успеха. Именно так и было с атомной бомбой.

– J. Robert Oppenheimer

Перевод: Анна Давыдова
Источник: n0where.net

Читайте так же:

Оставить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *