www.mywm.net
JPEG вирусы: пока без паники
Не так давно, на сайте компании Network Associates ( www.nai.com ), для тех кто не знает - это компания производитель очень популярной на западе антивирусной программы McAfee Antivirus (www.mcafee.com) , появилась информация о том, что сотрудниками её антивирусной лаборатории был выявлен первый в истории вирус заражающий графический файлы формата JPEG. Этому вирусу было тут же присвоено кодовое имя W32/Perrun. Тут же эта новость была подхвачена многими сетевыми информ агентствами, которые, зачастую, перековеркали исходную информацию, сгустили краски, и в таком вот пугающем виде преподали её своим читателям. Поскольку для меня появление такого типа вирусов не было удивительным, а реакция сетевых СМИ, мягко говоря, не совсем понятной, я решился взяться выразить своё мнение, которое, я надеюсь, будет интересно услышать читателям.
Погружение…
И так, что же представляет собой W32/Perrun? По информации специалистов антивирусной лаборатории, в которой и был впервые трепарирован данный вирус. Perrun представляет собой Windows- приложение написанное на Visual Basic, и имеющее размер 18 К. Чтобы читателям был более понятен алгоритм работы данного вируса, я представил его в виде блок-схемы.
Теперь некоторые комментарии к блок-схеме. Под словом "инфицирование" понимается всего лишь добавление exe-кода в конец jpg. Вирус не имеет действенного механизма распространения, и поэтому, можно сказать, что он примитивен, и с технической точки зрения почти не интересен. Его алгоритм работы мало, чем отличается от алгоритмов работы уже давно существующих вирусов, всё тоже записывание тела в конец файла, только на этот раз вирус дописывает своё тело не в .exe, .com .dll файлы, а в .jpg файлы, ну и передача управления осуществляется по -другому, вот и всё. Я с уверенностью могу сказать, что сказать что 99.9% пользователей никогда в "живую" вируса с кодовым именем W32/Perrun не увидят. Поэтому в предисловии я и говорил, что паническая реакция сетевых СМИ на появление W32/Perrun для меня выглядит не очень понятной. Беспокоит меня другое: Perrun, скорее всего, окажется лишь первой ласточкой, потому что развернувшееся вокруг него шумиха лишь подталкнёт (подтолкнула) вирмейкеров (так называют людей занимающихся изготовлением компьютерных вирусов) к "работе" в этом направлении. И их вирусы будут уже не примитивно дописывать свой код в конец файла, а действовать по сложным алгоритмам, в основе которых лежит стеганография. По имеющейся у меня информации работы по созданию таких вот типов вирусов уже идут, анализирую полученную информацию я смог составить "портрет" той "заразы", которую нам, скорее всего, ещё доведётся увидеть. Как я уже говорил в основе этих вирусов лежит метод стеганографии (steganos - секрет, тайна; graphy - запись). Этот метод применяется человечеством с незапамятных времён, системы условных знаков, и надписи невидимыми чернилами, которые хорошо знакомы по фильмам о шпионах - это всё и есть примеры стеганографии. С появлением высоких технологий появились новые формы информации и способы её передачи, а, следовательно, появились и новые формы стеганография. Именно применение стеганографии в сфере высоких технологий и будет нас интересовать в рамках данной статьи. Метод стеганография в области компьютеров базируется на том, что информация в виде аудио, видео и обычных графических изображение не критична к небольшим изменениям. Графическое изображение - это матрица чисел, например, каждый пиксель цветного изображения формата RGB кодируется 3 байтами, то есть имеет вид: 00000000 00000000 0000000, эта комбинация, например, соответствует чёрному цвету 11111111 11111111 11111111, соответственно белому. Если в каждом байте, изменить самый младший бит, то цвет этого пикселя измениться так, что человеческий глаз из-за своей структуры просто не сможет обнаружить в файле разницу до и после изменений. Но если применять специальный алгоритм, работающий со всеми пикселями в изображении то благодаря, таким вот манипуляциям всего лишь с младшим битом в графическом файле можно закодировать довольно внушительные объёмы информации. Чтобы подтвердить свои слова я продемонстрирую следующий пример, на рисунке 1 представлено 24 битное изображение размером 30К, на рисунке 2, это же изображение, но в нём специальным алгоритмом зашифрован один абзац этой статьи.
. рис1 |
рис2 |
На это изображение можно сколько угодно смотреть, изучать, но, тем не менее, определить сам факт наличия в этом изображении зашифрованного сообщения нельзя. И лишь зная специальный алгоритм (ключ), можно извлечь зашифрованное сообщение. Как я уже говорил информацию можно спрятать не только в графических файлах, но и в видео-аудио файлах. Причём, последние подходят для скрытия в них информации даже ещё лучше, чем файлы рисунков. Так в цифровом аудио файле с частотой дискретизации 44100 Гц, в режиме стерео, можно скрыть до 10 Килобайт информации на каждую секунду записи, опять же за счёт изменения младших битов.
К чему всё это я? Да лишь к тому, чтобы показать, что появление вирусов основанных на методе стеганографии вполне реально. По имеющейся у меня информации - это будет двухкомпонентный вирус первая половина которого, это очень небольшое приложение, так - как его функция состоит лишь в том, чтобы найти аудио, видео файл, или файл изображения, определить содержит ли он вторую часть вируса, если содержит, то извлечь, сохранить на диске и запустить на выполнение. Вторая часть вируса, основная, и по размеру она на порядок больше первой, в этой же части реализованы механизмы инфицирования аудио-видео и графических файлов, а также механизмы распространения, по всей видимости, при помощи электронной почты и с использованием "дыры" Iframe, которая, к сожалению, всё ещё остаётся не закрытой на очень большом количестве компьютеров. То есть механизм работы такой: первая, маленькая часть, распространяется по электронной почте, в виде, вторая часть, в которой реализованы все основные функции, распространяется отдельно в аудио-видео и графических файлах. Например, не кто же не задумывается, что, скачивая последнюю композицию Garbage, беря у знакомого диск с новым фильмом Джорджа Лукаса, что и это может быть опасно. Но вполне вероятно, что в скором времени, антивирусом нужно будет проверять не только запускные файлы… Естественно, чтобы "запустить" "снежный ком" эпидемии вирмейкерам нужно будет распространить какое то количество зараженных файлов, это будет скорее всего реализовано через галереи рисунков, порносайты, mp3 архивы и так далее. Зато потом с каждым днём эпидемии зараженных файлов будет "вращаться" всё больше и больше, а следовательно будет увеличиваться и количество заражённых компьютеров, типичная геометрическая прогрессия.