?

Log in

No account? Create an account
dump -0f - /dev/mind
Я знаю Haskell, OCaml, GSM, эндофункторы и много других страшных слов
Zip-бомбы для антивирусов? 
11th-Apr-2007 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-шников, зачастую - в архиве. Соответственно, все распространенные сканеры умеют в архивы заглядывать. Интересно, возможно ли создать и подсунуть сканеру аналог фидошной "мейл-бомбы", которая приведет к каким-то нежелательным последствиям для сканера (в идеале - отказ в обслуживании)? Были ли подобные прецеденты?
Comments 
10th-Apr-2007 10:57 pm (UTC)
У всех известных мне антивирусов есть лимиты на эти штуки. Известны так же и соответствующие баги в распаковщиках, которые патчились.
10th-Apr-2007 11:24 pm (UTC)
нет.
10th-Apr-2007 11:25 pm (UTC)
Спрячь!
Спрячь немедля файл-бомбы в 10 гиг в 100кб!

БТВ, тоссеры (даже фаста), при рейтинге сжатия 4:1 пакеты браковала.
Правда, это надо было тюнить, да ;)
10th-Apr-2007 11:28 pm (UTC)
ладно, надо, наверное, развить мысль.

дело в том, что любой архив, проверяемый сканером, распаковывается в pagefile, а его объём, как водится, имеет верхний лимит if архив в распакованном виде больше объёма пэйджа else архив проверяется частями. сканер же повесить и вовсе нереально — он проверяет код только по нескольким признакам. будь он хоть террабайтным.
10th-Apr-2007 11:59 pm (UTC)
Вообще нет. Только если не сделать какой-то полуживой заголовок и найти где-то Buffer Overflow. Что совсем уж маловероятно..
Хотя если пакануть паругигабайтный файл с "нулями" в пару сотен кб (вполне реально, если кто-то сомневается т.к. сам видел в инете) и назвать файл xxx.jpg то юзверю может долго распаковывать ничто.. если не забьет себе винт, что в наши дни о 700 гиговых винтах так-же маловероятно..
Эх.. )
11th-Apr-2007 01:06 am (UTC)
Ничто не ново под луной: http://www.securitylab.ru/vulnerability/271803.php
А ClamAV очень популярен именно в связке с почтовыми программами. И таких уязвимостей у него достаточно. Пол интернета этим конечно не положишь, но конкретному почтовику который обслуживает не пойми кто, вполне можно нагадить при желании.
11th-Apr-2007 02:16 am (UTC)
Anonymous
Вообще то все давно починили
# 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
11th-Apr-2007 02:11 am (UTC)
Вот это действительно весело, можно например отослать файл размером с терабайт, наверное получится неплохой denial of service, так как сканер будет его долго сканировать, или у его закончиться память.

Я не удержался и написал такую бомбочку:
dd if=/dev/zero bs=1G count=2 | zip -9 test.zip -
Правда файл почему-то получается 2Mb, может быть его еще раз зазиповать?
11th-Apr-2007 02:26 am (UTC)
Anonymous
в продолжении - сделал dd if=/dev/zero bs=1G count=2 | zip -9 test.zip -
послал:

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) - Anonymous - Expand
(Deleted comment)
11th-Apr-2007 02:28 am (UTC)
Anonymous
Сейчас в связке amavisd+clam есть ограничение на количество файлов в архиве :)
11th-Apr-2007 02:30 am (UTC)
Уже не помню какая но была, была защита против mail bomb. Это я тебе как 2:5010/200 говорю.
11th-Apr-2007 12:46 pm (UTC)
:) Прикольно
Я 2:5010/146.22 :)
11th-Apr-2007 04:18 am (UTC)
а можно так это тезисно, в двух словах, что за reference-архитектура такая гомосексуальная у EV-DO?
11th-Apr-2007 06:20 am (UTC)
+1
11th-Apr-2007 05:12 am (UTC)
Кроме отдельных багов - не было. Ибо объем распакованного принято проверять перед проверкой.

PS: Тема гомосексуалистов, на предмете sendmail'а не раскрыта :)
11th-Apr-2007 06:20 am (UTC)
Да, кстати!
11th-Apr-2007 05:33 am (UTC)
Я знаю, что один раз повесил наш почтовый сервер в институте таким образом: послал порядка 10000 мелких писем с неправильным адресом получателя и отправителя.

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

Ну вообщем сервак останавливали, а очередь чистили уже вручную... :)

PS.
Если честно, это я не специально - так получилось...
11th-Apr-2007 07:34 am (UTC)
Anonymous
Такое было в qmail как то... было потрачено 60гигов :) предже чем успели понять что к чему :))))
11th-Apr-2007 06:20 am (UTC)
Раньше работало, сейчас у всех есть защита от этого.
11th-Apr-2007 06:40 am (UTC)
Можно, и даже подсовывали. Но теперь антивирусы умеют это дело определять и рассказывать о таких файлах пользователю.
11th-Apr-2007 06:42 am (UTC)
У DrWeb'а есть ограничение на длину распаковываемого файла и максимальную степень компрессии. Если больше - он такой файл не проверяет. Видать, его создатели тоже про аркмейловые бомбы слышали :)
Page 1 of 2
<<[1] [2] >>
This page was loaded Oct 17th 2019, 9:27 pm GMT.