Zip-бомбы для антивирусов?
2007-04-11 01:52 amПомнится, в стародавние времена, когда модемы были большие, а скорости - маленькие, жил-был на свете FIDOnet. Если кто не застал или не в курсе - это такое почти-uucp, придуманное гомосексуалистами для обмена сообщениями личного свойства по коммутируемым линиям. Впрочем, как и многие вещи, придуманные гомосексуалистами для гомосексуалистов (примеры: sendmail, мужские джинсы с низкой талией и reference-архитектура сетей EV-DO rev.0), FIDOnet очень скоро стал использоваться всеми подряд.
Посылаемые друг другу сообщения передавались между узлами в виде "пакетов", упакованных каким-то распространенным архиватором - как правило, использовался ZIP, реже - RAR. Именно на этой технической особенности и базировалась милая дружеская шутка, называемая "мейл-бомба". Брался громаааааадный файл (мегабайт на 80), состоящий из одних нулей (вариант - множество файлов нулевой длины), и упаковывался. Получался архив килобайт на 400-500. Этим архивом заменялся один из исходящих пакетов с почтой.
Узел-получатель, пытаясь распаковать такой архив, с большой вероятностью либо исчерпывал лимит файловой системы (FAT-16) на кол-во имен файлов на одном разделе. либо занимал все свободное место в процессе распаковки. А, кажется, еще были мейл-бомбы в виде zip-архива с творчески подправленным заголовком и телом, которые приводили к тому, что архиватор (pkunzip.exe) либо вешал компьютер, либо "падал". Поскольку многие узлы работали по ночам в "автопилоте", получение мейл-бомбы приводило к "отказу в обслуживании" и оставляло владельца узла без свежей порции почты на следующий день. И вызывало какие-то ответные действия - crash-poll, задалбывание соседского areafix-а, подписывание шутника на ru.sex, достопамятный TBH или вообще все конференции без разбору и т.п.
Впрочем, достаточно ностальгии. Вот какой у меня возник вопрос - сейчас по сети ходит немерянное кол-во вирусов, рассылающих себя по почте в виде зараженных exe-шников, зачастую - в архиве. Соответственно, все распространенные сканеры умеют в архивы заглядывать. Интересно, возможно ли создать и подсунуть сканеру аналог фидошной "мейл-бомбы", которая приведет к каким-то нежелательным последствиям для сканера (в идеале - отказ в обслуживании)? Были ли подобные прецеденты?
Посылаемые друг другу сообщения передавались между узлами в виде "пакетов", упакованных каким-то распространенным архиватором - как правило, использовался ZIP, реже - RAR. Именно на этой технической особенности и базировалась милая дружеская шутка, называемая "мейл-бомба". Брался громаааааадный файл (мегабайт на 80), состоящий из одних нулей (вариант - множество файлов нулевой длины), и упаковывался. Получался архив килобайт на 400-500. Этим архивом заменялся один из исходящих пакетов с почтой.
Узел-получатель, пытаясь распаковать такой архив, с большой вероятностью либо исчерпывал лимит файловой системы (FAT-16) на кол-во имен файлов на одном разделе. либо занимал все свободное место в процессе распаковки. А, кажется, еще были мейл-бомбы в виде zip-архива с творчески подправленным заголовком и телом, которые приводили к тому, что архиватор (pkunzip.exe) либо вешал компьютер, либо "падал". Поскольку многие узлы работали по ночам в "автопилоте", получение мейл-бомбы приводило к "отказу в обслуживании" и оставляло владельца узла без свежей порции почты на следующий день. И вызывало какие-то ответные действия - crash-poll, задалбывание соседского areafix-а, подписывание шутника на ru.sex, достопамятный TBH или вообще все конференции без разбору и т.п.
Впрочем, достаточно ностальгии. Вот какой у меня возник вопрос - сейчас по сети ходит немерянное кол-во вирусов, рассылающих себя по почте в виде зараженных exe-шников, зачастую - в архиве. Соответственно, все распространенные сканеры умеют в архивы заглядывать. Интересно, возможно ли создать и подсунуть сканеру аналог фидошной "мейл-бомбы", которая приведет к каким-то нежелательным последствиям для сканера (в идеале - отказ в обслуживании)? Были ли подобные прецеденты?
(no subject)
Date: 2007-04-10 10:57 pm (UTC)(no subject)
Date: 2007-04-10 11:24 pm (UTC)(no subject)
Date: 2007-04-10 11:25 pm (UTC)Спрячь немедля файл-бомбы в 10 гиг в 100кб!
БТВ, тоссеры (даже фаста), при рейтинге сжатия 4:1 пакеты браковала.
Правда, это надо было тюнить, да ;)
(no subject)
Date: 2007-04-10 11:28 pm (UTC)дело в том, что любой архив, проверяемый сканером, распаковывается в pagefile, а его объём, как водится, имеет верхний лимит if архив в распакованном виде больше объёма пэйджа else архив проверяется частями. сканер же повесить и вовсе нереально — он проверяет код только по нескольким признакам. будь он хоть террабайтным.
(no subject)
Date: 2007-04-10 11:59 pm (UTC)Хотя если пакануть паругигабайтный файл с "нулями" в пару сотен кб (вполне реально, если кто-то сомневается т.к. сам видел в инете) и назвать файл xxx.jpg то юзверю может долго распаковывать ничто.. если не забьет себе винт, что в наши дни о 700 гиговых винтах так-же маловероятно..
Эх.. )
(no subject)
Date: 2007-04-11 01:06 am (UTC)А ClamAV очень популярен именно в связке с почтовыми программами. И таких уязвимостей у него достаточно. Пол интернета этим конечно не положишь, но конкретному почтовику который обслуживает не пойми кто, вполне можно нагадить при желании.
(no subject)
Date: 2007-04-11 02:16 am (UTC)# Files in archives larger than this limit won't be scanned.
# Value of 0 disables the limit.
# Default: 10M
# Nested archives are scanned recursively, e.g. if a Zip archive contains a RAR
# file, all files within it will also be scanned. This options specifies how
# deep the process should be continued.
# Value of 0 disables the limit.
# Default: 8
#ArchiveMaxRecursion 9
# Number of files to be scanned within an archive.
# Value of 0 disables the limit.
# Default: 1000
#ArchiveMaxFiles 1500
# If a file in an archive is compressed more than ArchiveMaxCompressionRatio
# times it will be marked as a virus (Oversized.ArchiveType, e.g. Oversized.Zip)
# Value of 0 disables the limit.
# Default: 250
(no subject)
Date: 2007-04-11 02:49 am (UTC)(no subject)
Date: 2007-04-11 02:11 am (UTC)Я не удержался и написал такую бомбочку:
dd if=/dev/zero bs=1G count=2 | zip -9 test.zip -
Правда файл почему-то получается 2Mb, может быть его еще раз зазиповать?
(no subject)
Date: 2007-04-11 02:26 am (UTC)послал:
Apr 11 09:17:33 mail amavis[16299]: (16299-05) Exceeded storage quota 314572800 bytes by do_unzip; last chunk 33764976 bytes
Apr 11 09:17:33 mail amavis[16299]: (16299-05) NOTICE: Virus scanning skipped: Exceeded storage quota 314572800 bytes by do_unzip; last chunk 33764976 bytes
Apr 11 09:17:33 mail amavis[16299]: (16299-05) spam_scan: not wasting time on SA, message longer than 204800 bytes: 535+2818528
Apr 11 09:17:33 mail amavis[16299]: (16299-05) NOTICE: HOLD reason: Exceeded storage quota 314572800 bytes by do_unzip; last chunk 33764976 bytes
Apr 11 09:17:33 mail amavis[16299]: (16299-05) DEFANGING MAIL: WARNING: possible mail bomb, NOT CHECKED FOR VIRUSES:\n Exceeded storage quota 314572800 bytes by...
Apr 11 09:17:33 mail amavis[16299]: (16299-05) Inserting header field: X-Amavis-Hold: Exceeded storage quota 314572800 bytes by do_unzip; last chunk 33764976 bytes
Apr 11 09:17:33 mail amavis[16299]: (16299-05) Inserting header field: X-Amavis-Modified: Original mail wrapped as attachment (defanged) by mail
пришло письмо с добавленным сообщением о том что :
WARNING: possible mail bomb, NOT CHECKED FOR VIRUSES:
Exceeded storage quota 314572800 bytes by do_unzip; last chunk 33764976 bytes
Так что, все отлично
(no subject)
Date: 2007-04-11 04:34 am (UTC)Exceeded storage quota 314572800 bytes by do_unzip; last chunk 33764976 bytes
Значит максимум памяти выдающееся на обработку письма - 300Мб. Что если сообщение меньше 300Мб, это конечно не так болезненно, но все же должно быть неприятно для адресата. Между прочим если антивирус тратит такое огромное количество памяти на обработку каждого письма, что если забросать его десятком-другим писем, пускай они стоят в очереди, и он их обрабатывает, неплохая DoS атака может получится. А если этот антивирус работает в multithreaded режиме, так он тогда должен до полного ухода в свап.
(no subject)
Date: 2007-04-11 07:35 am (UTC)(no subject)
Date: 2007-04-11 02:25 am (UTC)Распаковка и обработка (а нетмейлы, если помнишь, хранились каждый отдельным файлом) вызывало очень быстрое заполнение диска, ибо каждый файл, будь он даже в один байт, хранился в одном кластере.
(no subject)
Date: 2007-04-11 02:28 am (UTC)(no subject)
Date: 2007-04-11 02:30 am (UTC)(no subject)
Date: 2007-04-11 12:46 pm (UTC)Я 2:5010/146.22 :)
(no subject)
Date: 2007-04-11 04:18 am (UTC)(no subject)
Date: 2007-04-11 06:20 am (UTC)(no subject)
Date: 2007-05-31 10:07 am (UTC)(no subject)
Date: 2007-04-11 05:12 am (UTC)PS: Тема гомосексуалистов, на предмете sendmail'а не раскрыта :)
(no subject)
Date: 2007-04-11 06:20 am (UTC)(no subject)
Date: 2007-04-11 08:11 am (UTC)Сидел же, специально вспоминал ...
(no subject)
Date: 2007-04-11 05:33 am (UTC)Это привело к тому, что на остальную почту не осталось времени, а сервер занялся пересылкой этих писем взад-вперед. Если адресат не найден, то сервер отправителю шлет письмо с копией исходного о невозможности доставить письмо, т.к. и адрес отправителя отсутствует, то идет очередной ответ с невозможностью доставить и т.д.
Ну вообщем сервак останавливали, а очередь чистили уже вручную... :)
PS.
Если честно, это я не специально - так получилось...
(no subject)
Date: 2007-04-11 07:34 am (UTC)(no subject)
Date: 2007-04-11 06:20 am (UTC)(no subject)
Date: 2007-04-11 06:40 am (UTC)(no subject)
Date: 2007-04-11 06:42 am (UTC)(no subject)
Date: 2007-04-11 07:44 am (UTC)Но все эти хаки лечились дефолтной настройкой архиваторов.
А в качестве прикола можно было под видом мейл-бандла отсылать тот самый файл на 10 метров из нулей с расширением zip. Удивлённый нод смотрел как CPS на файл доходит до 20-30 килобайт в секунду (компрессия данных модемом)
(no subject)
Date: 2007-04-11 07:57 am (UTC)(no subject)
Date: 2007-04-11 08:47 am (UTC)(no subject)
Date: 2007-04-11 08:14 am (UTC)(no subject)
Date: 2007-04-11 08:23 am (UTC)(no subject)
Date: 2007-04-11 09:12 am (UTC)(no subject)
Date: 2007-04-11 03:49 pm (UTC)так что мегабоян, уважаемый. (:
(no subject)
Date: 2007-04-11 06:28 pm (UTC)У меня, кстати, есть некий Klad.arj (внутри опять klad.arj, в нем опять klad.arj и так несколько тысяч раз)так вот там в этом архиве зарыт не то исходник виря, не то инфо вирмейкерской группы какой то. Я как то, от нефиг делать, вручную раскопал этот клад. Прикольно было :) А тогдашний доктор веб на нем хорошо повис.
(no subject)
Date: 2007-04-20 11:07 pm (UTC)(no subject)
Date: 2007-04-21 09:30 pm (UTC)пидгомосексуалисты ? :)(no subject)
Date: 2007-04-25 07:14 pm (UTC)