Скриптовые вирусы. Вредоносные программы и вирусы (макро-вирусы, стелс и полиморфные вирусы). Алгоритм работы вирусов для Access

История появления вирусописательства чрезвычайно интересна - она ещё ждёт своего дотошного исследователя! До сих пор нет единого мнения относительно момента, который можно было бы считать официальным днём появления вируса, как не существовало и критериев, под которые можно было бы подвести то или иное ПО и отличить исследовательские эксперименты от целенаправленно написанной программы с вредоносными функциями.

В 1949 году Джон фон Нейман (John von Naumann), выдающийся американский математик венгерского происхождения, сделавший важный вклад в квантовую физику, квантовую логику, функциональный анализ, теорию множеств, информатику, экономику и другие отрасли науки, разработал математическую теорию создания самовоспроизводящихся программ. Это была первая попытка создать теорию такого явления, но она не вызвала большого интереса у научного сообщества, так как не имела видимого прикладного значения.

Нет согласия и по поводу происхождения названия "компьютерный вирус". По одной из версий это случилось 10 ноября 1983 года, когда аспирант Университета Южной Калифорнии (University of Southern California) Фред Коэн (Fred Cohen) во время семинара по безопасности в Лехайском университете (Пенсильвания, США) продемонстрировал на системе VAX 11/750 программу, способную внедряться в другие программные объекты. Эту программу можно с полным правом считать одним из первых прототипов компьютерного вируса.

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

Существует версия, что термином "вирус" назвал копирующую саму себя программу научный руководитель Фреда, один из создателей криптографического алгоритма RSA Леонард Эдлеман (Leonard Adleman).

Годом позже, на 7-й конференции по безопасности информации, Ф.Коэн дает научное определение термину "компьютерный вирус", как программе, способной "заражать" другие программы при помощи их модификации с целью внедрения своих копий и выполнения заданных действий. Отметим, что Ф.Коэн определённо не был новатором в этой области. Теоретические рассуждения о распространяющихся копированием с компьютера на компьютер программах и практическая реализация успешно осуществлялись и раньше. Однако именно презентация Ф.Коэна заставила специалистов серьёзно заговорить о потенциальном ущербе от преднамеренных атак. Всего через пятнадцать лет распространение вредоносного программного обеспечения приобрело угрожающие масштабы, радикально снизить которые не представляется возможным.

В некотором смысле опередил Ф. Коэна 15-летний школьник из Пенсильвании Рик Скрента (Rich Skrenta). Его излюбленным занятием было подшучивание над товарищами путём модификаций кода игр для Apple II, которые приводили к внезапному выключению компьютеров или выполняли другие действия. В 1982 году он написал Elk Cloner - самовоспроизводящийся загрузочный вирус, инфицировавший Apple II через гибкий магнитный диск. Во время каждой 50-й перезагрузки ПК появлялось сообщение со словами: "Он завладеет вашими дисками, он завладеет вашими чипами. Да, это Cloner! Он прилипнет к вам как клей, он внедрится в память. Cloner приветствует вас!"

Программа Р.Скрента не вышла далеко за пределы круга его друзей. Лавры достались "шедевру" программистской мысли, появившемуся несколькими годами позже. Программу Brain ("Мозг") создали в 1988 году двое братьев - выходцев из Пакистана, которым приписывается инфицирование ПК через созданные ими нелегальные копии программы для мониторинга работы сердца. Вирус содержал уведомление об авторском праве с именами и телефонами братьев, поэтому пользователи заражённых машин могли обратиться к напрямую к вирусописателям за "вакциной". За первой версией Brain последовало множество модификаций, преследовавших сугубо коммерческий интерес.

В 1988 году аспирант Корнельского университета (Cornell University) Роберт Теппен Моррис младший (Robert Tappan Morris Jr.), приходившийся сыном главному научному сотруднику Агентства национальной безопасности США (National Security Agency), выпустил в свет первый широко распространившийся компьютерный червь, хотя экспериментальные работы в этой области проводились с конца 1970-х годов. Этот тип программ чаще всего не производит никаких деструктивных манипуляций с файлами пользователя и ставит целью как можно более быстрое и широкое распространение, снижая эффективность работы сетей.

По некоторым оценкам, от 5% до 10% подключённых в то время к Сети машин, по большей части принадлежавших университетам и исследовательским организациям, были атакованы им. Червь использовал уязвимости нескольких программах, в том числе Sendmail. Р.Т.Моррис стал первым человеком, осуждённым по обвинению в преступлениях в компьютерной сфере, и получил 3 года условно. Однако это не помешало ему впоследствии стать профессором Массачусетского технологического института (MIT).

Следующий большой шаг вредоносное ПО совершило в 90-х годах с ростом спроса на персональные компьютеры и количества пользователей электронной почты. Электронные коммуникации предоставили гораздо более эффективный путь инфицирования ПК, чем через носители информации. Образцом скорости распростанения стал вирус Melissa в 1999 году, внедрившийся в 250 тыс. систем. Однако он был безвреден, за исключением того, что каждый раз при совпадении времени и даты - например, 5:20 и 20 мая - на экране возникала цитата из The Simpsons.

Годом позже появился Love Bug, известный также как LoveLetter. За короткое время вирус облетел весь мир! Он был написан филиппинским студентом и приходил в электронном сообщении с темой "I Love You". Как только пользователь пытался открыть вложение, вирус через Microsoft Outlook пересылал себя по всем адресам в списке контактов. Затем скачивал троянскую программу для сбора интересующей филиппинца информации. LoveLetter атаковал около 55 миллионов ПК и заразил от 2,5 до 3 миллионов. Размер причинённого им ущерба оценивался в 10 миллиардов, но студент избежал наказания, поскольку Филиппины не имели в то время законодательной базы для борьбы с киберпреступниками [Борн Денис, http://www.wired.com ].

Лавинообразное распространением вирусов стало большой проблемой для большинства компаний и государственных учреждений. В настоящее время известно более миллиона компьютерных вирусов и каждый месяц появляется более 3000 новых разновидностей ["Энциклопедия Вирусов", http://www.viruslist.com/ru/viruses/encyclopedia .].

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

Когда такая программа начинает работу, то сначала, как правило, управление получает вирус. Вирус может действовать самостоятельно, выполняя определенные вредоносные действия (изменяет файлы или таблицу размещения файлов на диске, засоряет оперативную память, изменяет адресацию обращений к внешним устройствам, генерирует вредоносное приложение, крадет пароли и данные и т.д.), или "заражает" другие программы. Зараженные программы могут быть перенесены на другой компьютер с помощью дискет или локальной сети.

Формы организации вирусных атак весьма разнообразны, но в целом практически их можно "разбросать" по следующим категориям:

  • удаленное проникновение в компьютер - программы, которые получают неавторизованный доступ к другому компьютеру через Internet (или локальную сеть);
  • локальное проникновение в компьютер - программы, которые получают неавторизованный доступ к компьютеру, на котором они впоследствии работают;
  • удаленное блокирование компьютера - программы, которые через Internet (или сеть) блокируют работу всего удаленного компьютера или отдельной программы на нем;
  • локальное блокирование компьютера - программы, которые блокируют работу компьютера, на котором они работают;
  • сетевые сканеры - программы, которые осуществляют сбор информации о сети, чтобы определить, какие из компьютеров и программ, работающих на них, потенциально уязвимы к атакам;
  • сканеры уязвимых мест программ - программы, проверяют большие группы компьютеров в Интернет в поисках компьютеров, уязвимых к тому или иному конкретному виду атаки;
  • "вскрыватели" паролей - программы, которые обнаруживают легко угадываемые пароли в зашифрованных файлах паролей;
  • сетевые анализаторы (sniffers) - программы, которые слушают сетевой трафик; часто в них имеются возможности автоматического выделения имен пользователей, паролей и номеров кредитных карт из трафика;
  • модификация передаваемых данных или подмена информации;
  • подмена доверенного объекта распределённой вычислительной сети (работа от его имени) или ложный объект распределённой ВС (РВС).
  • "социальная инженерия" - несанкционированный доступ к информации иначе, чем взлом программного обеспечения. Цель - ввести в заблуждение сотрудников (сетевых или системных администраторов, пользователей, менеджеров) для получения паролей к системе или иной информации, которая поможет нарушить безопасность системы.

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

Сетевые черви

Основным признаком, по которому типы червей различаются между собой, является способ распространения червя - каким способом он передает свою копию на удаленные компьютеры. Другими признаками различия КЧ между собой являются способы запуска копии червя на заражаемом компьютере, методы внедрения в систему, а также полиморфизм, "стелс" и прочие характеристики, присущие и другим типам вредоносного программного обеспечения (вирусам и троянским программам).

Пример - E-mail-Worm - почтовые черви. К данной категории червей относятся те из них, которые для своего распространения используют электронную почту. При этом червь отсылает либо свою копию в виде вложения в электронное письмо, либо ссылку на свой файл, расположенный на каком-либо сетевом ресурсе (например, URL на зараженный файл, расположенный на взломанном или хакерском веб-сайте). В первом случае код червя активизируется при открытии (запуске) зараженного вложения, во втором - при открытии ссылки на зараженный файл. В обоих случаях эффект одинаков - активизируется код червя.

Для отправки зараженных сообщений почтовые черви используют различные способы. Наиболее распространены:

  • прямое подключение к SMTP-серверу, используя встроенную в код червя почтовую библиотеку;
  • использование сервисов MS Outlook;
  • использование функций Windows MAPI.

Различные методы используются почтовыми червями для поиска почтовых адресов, на которые будут рассылаться зараженные письма. Почтовые черви:

  • рассылают себя по всем адресам, обнаруженным в адресной книге MS Outlook;
  • считывает адреса из адресной базы WAB;
  • сканируют "подходящие" файлы на диске и выделяет в них строки, являющиеся адресами электронной почты;
  • отсылают себя по всем адресам, обнаруженным в письмах в почтовом ящике (при этом некоторые почтовые черви "отвечают" на обнаруженные в ящике письма).

Многие черви используют сразу несколько из перечисленных методов. Встречаются также и другие способы поиска адресов электронной почты. Другие виды червей: IM-Worm - черви, использующие Internet-пейджеры, IRC-Worm - черви в IRC-каналах, Net-Worm - прочие сетевые черви.

Классические компьютерные вирусы

К данной категории относятся программы, распространяющие свои копии по ресурсам локального компьютера с целью: последующего запуска своего кода при каких-либо действиях пользователя или дальнейшего внедрения в другие ресурсы компьютера.

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

  • при заражении доступных дисков вирус проник в файлы, расположенные на сетевом ресурсе;
  • вирус скопировал себя на съёмный носитель или заразил файлы на нем;
  • пользователь отослал электронное письмо с зараженным вложением.

Некоторые вирусы содержат в себе свойства других разновидностей вредоносного программного обеспечения, например бэкдор-процедуру или троянскую компоненту уничтожения информации на диске.

Многие табличные и графические редакторы, системы проектирования, текстовые процессоры имеют свои макроязыки (макросы) для автоматизации выполнения повторяющихся действий. Эти макроязыки часто имеют сложную структуру и развитый набор команд. Макро-вирусы являются программами на макроязыках, встроенных в такие системы обработки данных. Для своего размножения вирусы этого класса используют возможности макроязыков и при их помощи переносят себя из одного зараженного файла (документа или таблицы) в другие.

Скрипт-вирусы

Следует отметить также скрипт-вирусы, являющиеся подгруппой файловых вирусов. Данные вирусы, написаны на различных скрипт-языках (VBS, JS, BAT, PHP и т.д.). Они либо заражают другие скрипт-программы (командные и служебные файлы MS Windows или Linux), либо являются частями многокомпонентных вирусов. Также, данные вирусы могут заражать файлы других форматов (например, HTML), если в них возможно выполнение скриптов.

Троянские программы

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

Троянские программы многообразны и различаются между собой по тем действиям, которые они производят на зараженном компьютере:

  • Backdoor - троянские утилиты удаленного администрирования.
  • Trojan-PSW - воровство паролей.
  • Trojan-AOL - семейство троянских программ, "ворующих" коды доступа к сети AOL (America Online). Выделены в особую группу по причине своей многочисленности.
  • Trojan-Clicker - Internet-кликеры. Семейство троянских программ, основная функция которых - организация несанкционированных обращений к Internet-ресурсам (обычно к Web-страницам). Достигается это либо посылкой соответствующих команд браузеру, либо заменой системных файлов, в которых указаны "стандартные" адреса Internet-ресурсов (например, файл hosts в MS Windows).
  • Trojan-Downloader - доставка прочих вредоносных программ.
  • Trojan-Dropper - инсталляторы прочих вредоносных программ. Троянские программы этого класса написаны в целях скрытной инсталляции других программ и практически всегда используются для "подсовывания" на компьютер-жертву вирусов или других троянских программ.
  • Trojan-Proxy - троянские прокси-сервера. Семейство троянских программ, скрытно осуществляющих анонимный доступ к различным интернет-ресурсам. Обычно используются для рассылки спама.
  • Trojan-Spy - шпионские программы. Данные троянцы осуществляют электронный шпионаж за пользователем зараженного компьютера: вводимая с клавиатуры информация, снимки экрана, список активных приложений и действия пользователя с ними сохраняются в какой-либо файл на диске и периодически отправляются злоумышленнику. Троянские программы этого типа часто используются для кражи информации пользователей различных систем онлайновых платежей и банковских систем.
  • Trojan - прочие троянские программы. В данной категории также присутствуют "многоцелевые" троянские программы, например, те из них, которые одновременно шпионят за пользователем и предоставляют proxy-сервис удаленному злоумышленнику.
  • Trojan ArcBomb - "бомбы" в архивах. Представляют собой архивы, специально оформленные таким образом, чтобы вызывать нештатное поведение архиваторов при попытке разархивировать данные - зависание или существенное замедление работы компьютера или заполнение диска большим количеством "пустых" данных. Особенно опасны "архивные бомбы" для файловых и почтовых серверов, если на сервере используется какая-либо система автоматической обработки входящей информации - "архивная бомба" может просто остановить работу сервера.
  • Trojan-Notifier - оповещение об успешной атаке. Троянцы данного типа предназначены для сообщения своему "хозяину" о зараженном компьютере. При этом на адрес "хозяина" отправляется информация о компьютере, например, IP-адрес компьютера, номер открытого порта, адрес электронной почты и т. п. Отсылка осуществляется различными способами: электронным письмом, специально оформленным обращением к веб-странице "хозяина", ICQ-сообщением. Данные троянские программы используются в многокомпонентных троянских наборах для извещения своего "хозяина" об успешной инсталляции троянских компонент в атакуемую систему.

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

Так что же такой вирус?

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

Для начала, наверное, стоит разобраться с самыми популярными мифами о вирусах, гуляющими по сети.

1. Антивирус - защита от всех вирусов

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

2. Вирусы распространяются с любыми файлами

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

3. Если вы заразились вирусом - ПК под серьезной угрозой

Это тоже не так. Большинство вирусов вообще ничего не делают. Им достаточно того, что они просто заражают программы. Но в любом случае, обратить на это внимание стоит: по крайней мере, проверить весь компьютер антивирусом с последней базой. Если заразились одним - то почему не могли вторым?!

4. Не пользоваться почтой - гарантия безопасности

Боюсь, это не поможет. Бывает такое, что по почте вам приходят письма с незнакомых адресов. Лучше всего просто не открывать их, сразу удаляя и очищая корзину. Обычно вирус идет в письме в качестве вложения, запустив которое, ваш ПК будет заражен. Защитится достаточно легко: не открывать письма от незнакомцев… Так же не лишним будет настроить антиспам-фильтры.

5. Если вы скопировали зараженный файл - вы заразились

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

Виды компьютерных вирусов

Самые первые вирусы (история)

История эта началась примерно в 60-70 годах в некоторых лабораториях США. На ЭВМ, помимо обычных программ, были еще и те, которые работали сами по себе, никем не управляемые. И все бы ничего, если бы они сильно не нагружали ЭВМ и не расходовали ресурсы попусту.

Через какой-то десяток лет, к 80-м годам, таких программ было уже несколько сотен. В 1984 году появился и сам термин «компьютерный вирус».

Такие вирусы, обычно никак свое присутствие от пользователя не скрывали. Чаще всего мешали ему работать, показывая какие-нибудь сообщения.

В 1985 году появился первый опасный (и главное быстро распространяемый) компьютерный вирус Brain. Хотя, написан он был из благих намерений - наказать пиратов, незаконно копирующих программы. Вирус срабатывал только на нелегальных копиях софта.

Наследники вируса Brain просуществовали еще около десятка лет и потом их поголовье стало резко снижаться. Действовали они не хитро: просто записывали свое тело в файл программы, тем самым он увеличивался в размерах. Антивирусы быстро научились определять размер и находить зараженные файлы.

Программные вирусы

Вслед за вирусами, прикреплявшимися в тело программы, стали появляться новые виды - в виде отдельной программы. Но, основная сложность в том, как заставить пользователя запустить такую зловредную программу? Оказывается, очень просто! Достаточно назвать ее какой-нибудь ломалкой для программы и выложить в сеть. Многие просто скачают, и несмотря на все предупреждения антивируса (если такой имеется) - все равно запустят…

В 1998-1999 г. мир содрогнулся от опаснейшего вируса - Win95.CIH. Он выводил из строя Bios материнской платы. Тысячи компьютеров по всему миру были выведены из строя.

Вирус, распространяемый через вложения к письмам.

В 2003 г. вирус SoBig смог заразить сотни тысяч компьютеров, благодаря тому, что сам прикреплялся к письмам, отправляемые пользователем.

Основная борьба с такими вирусами: регулярное обновление ОС Windows, установка антивируса. Так же отказаться от запуска любых программ, полученных из сомнительных источников.

Макровирусы

Многие пользователи, наверное, и не подозревают, что кроме исполняемых файлов exe или com, вполне реальную угрозу могут нести и обычные файлы из Microsoft Word или Excel. Как такое возможно? Просто в эти редакторы в свое время был встроен язык программирования VBA, для того, чтобы можно было дописывать макросы в качестве дополнения к документам. Тем самым, если заменить их на свой макрос - вполне может получиться вирус…

Сегодня, почти все версии офисных программ, перед запуском документа из незнакомого источника, обязательно вас переспросят, а точно ли хотите запустить макросы из этого документа, и если нажать на кнопку «нет» - то ничего не произойдет, если даже документ был с вирусом. Парадокс заключается в том, что большинство пользователей сами нажимают на кнопку «да»…

Одним из самых известных макровирусов, можно считать Mellis’y, пик которой пришелся на 1999г. Вирус заражал документы и через почту Outlook отправлял вашим друзьям письмо с зараженной начинкой. Таким образом, за небольшой срок им оказалось заражены десятки тысяч компьютеров по всему миру!

Скриптовые вирусы

Макровирусы, как определенный вид, входят в группу скриптовых вирусов. Суть здесь в том, что не только Microsoft Office использует в своих продуктах скрипты, но и другие программные пакеты их содержат. Например, Media Player, Internet Explorer.

Большая часть таких вирусов распространяется посредством вложения в письма, через электронную почту. Часто вложения маскируются под какую-нибудь новомодную картинку или музыкальную композицию. В любом случае, не запускайте и лучше даже не открывайте вложения с незнакомых адресов.

Часто пользователей вводит в заблуждение расширение файлов… Ведь, давно известно, что картинки безопасны, тогда почему нельзя открыть на почте картинку, которую прислали… По умолчанию проводник не показывает расширения файлов. И если вы видите название картинки, вроде «interesnoe.jpg» - это не означает, что у файла именно такое расширение.

Для того, чтобы видеть расширения, включите следующую опцию.

Покажем на примере Windows 7. Если зайти в любую папку и нажать «упорядочить/параметры папок и поиска» можно попасть в меню «вид». Там то и есть наша заветная галочка.

Убираем галочку на опции «скрывать расширения для зарегистрированных типов файлов», а так же еще включите функцию «показа скрытых файлов и папок».

Теперь, если взглянуть на присланную вам картинку, вполне может оказаться, что «interesnoe.jpg» вдруг стала «interesnoe.jpg.vbs». Вот, собственно и весь фокус. Многие начинающие пользователи не раз попадались на эту ловушку, да и будут попадаться еще…

Основная защита от скриптовых вирусов заключается в своевременном обновлении ОС и антивируса. Так же отказ от просмотра подозрительных писем, тем более, которые содержат непонятные файлы… Кстати, не лишним будет регулярно делать резервное сохранение важных данных. Тогда вы на 99,99% будете защищены от любых угроз.

Троянские программы

Этот вид хоть и был отнесен к вирусам, но непосредственно им не является. Их проникновение на ваш ПК во многом схожа с вирусами, только задачи у них разные. Если у вируса задача заразить как можно больше компьютеров и выполнить действие по удалению, открытию окон и пр. - то у троянской программы, как правило, одна цель - скопировать ваши пароли от различных сервисов, узнать какую-нибудь информацию. Часто бывает так, что троянской программой могут управлять через сеть, и по приказу хозяина она вмиг может перезагрузить ваш ПК, или, что еще хуже, удалить какие-нибудь файлы.

Так же стоит отметить и еще одну особенность. Если вирусы частенько заражают другие исполняемые файлы, троянцы этим не занимаются, это самодостаточная отдельная программа, которая работает сама по себе. Часто она маскируется под какой-нибудь системный процесс, чтобы начинающему пользователю было трудно ее выловить.

Чтобы не стать жертвой троянов, во-первых, не качайте никаких файлов, вроде взлом интернета, взлом каких то программ и т.д. Во-вторых, помимо антивируса, понадобиться еще специальная программа, например: The Cleaner, Trojan Remover, AntiViral Toolkit Pro и др. В-третьих, не лишним будет установка фаервола (программа, контролирующая доступ в интернет других приложений), с ручной настройкой, где все подозрительные и неизвестные процессы будут блокироваться вами. Если троянская программа не получит выхода в сеть - пол дела уже сделано, по крайней мере, ваши пароли никуда не уплывут…

Подводя итог, хочется сказать, что все принятые меры и рекомендации будут бесполезны, если пользователь сам из любопытства будет запускать файлы, отключать антивирусные программы и пр. Парадокс в том и состоит, что заражение вирусами происходит в 90% случаев по вине самого владельца ПК. Ну а чтобы не стать жертвой тех 10% - достаточно иногда производить . Тогда можно быть уверенным практически на все 100, что все будет ОК!

Макро-вирусы.

Наибольшее распространение получили макро-вирусы для интегрированного офисного приложения Microsoft Office (Word, Excel, PowerPoint и Access). Макро-ви­русы фактически являются макрокомандами (макросами) на встроенном языке программирования Visual Basic for Applications (VBA), которые помещаются в документ.

При работе с документом пользователь выполняет раз­личные действия: открывает документ, сохраняет, печатает, закрывает и т. д. При этом приложение ищет и выполняет соответствующие стандартные макросы. Макро-вирусы со­держат стандартные макросы, вызываются вместо них и за­ражают каждый открываемый или сохраняемый документ. Вредные действия макро-вирусов реализуются с помощью встроенных макросов (вставки текстов, запрета выполнения команд меню приложения и т. д.).

Макро-вирусы являются ограниченно резидентными,

В августе 1995 года началась эпидемия первого мак­ро-вируса «Concept» для текстового процессора Microsoft Word. Макро-вирус «Concept» до сих пор имеет широ­кое распространение, и на сегодняшний момент изве­стно около 100 его модификаций.

Профилактическая защита от макро-вирусов состоит в предотвращении запуска вируса. При открытии документа в приложениях Microsoft Office сообщается о присутствии в них макросов (потенциальных вирусов) и предлагается за­претить их загрузку. Выбор запрета на загрузку макросов надежно защитит ваш компьютер от заражения макро-виру­сами, однако отключит и полезные макросы, содержащиеся в документе.

Особой разновидностью вирусов явля­ются активные элементы (программы) на языках JavaScript или VBScript, которые могут содержаться в файлах Web-страниц. Заражение локального компьютера происходит при их передаче по Всемирной паутине с серверов Интернета в браузер локального компьютера.

В ноябре 1998 года появился первый скрипт-вирус VBScript.Rabbit, заражающий скрипты Web-страниц, а через полтора года, в мае 2000 года грянула глобаль­ная эпидемия скрипт-вируса «LoveLetter». Сейчас этот тип вирусов прочно удерживает первое место в списке наиболее распространенных и опасных вирусов.

Профилактическая защита от скрипт-вирусов состоит в том, что в браузере можно запретить получение активных элементов на локальный компьютер.

ЗНАТЬ

Компьютерные вирусы являются вредоносными программами, которые могут «размножаться» и скрытно внедрять свои копии в исполнимые файлы, загрузочные секторы дисков и документы. Активи­зация компьютерного вируса может вызывать унич­тожение программ и данных.



Разнообразны последствия действия вирусов. По вели­чине вредных воздействий вирусы можно разделить на:

  • неопасные, влияние которых ограничивается умень­шением свободной памяти на диске, графическими, звуковыми и другими внешними эффектами;
  • опасные, которые могут привести к сбоям и «зависа­ниям» при работе компьютера;
  • очень опасные, активизация которых может привести к потере программ и данных (изменению или удалению файлов и каталогов), форматированию винчестера и т. д.

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

Загрузочные вирусы заражают за­грузочный сектор гибкого или жесткого диска. Принцип действия загрузочных вирусов основан на алгоритмах запус­ка операционной системы при включении или перезагрузке компьютера.

Файловые вирусы различными спо­собами внедряются в исполнимые файлы и обычно активизиру­ются при их запуске. После запуска зараженного файла ви­рус находится в оперативной памяти компьютера и являет­ся активным вплоть до момента выключения компьютера или перезагрузки опе­рационной системы.

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

Контрольные вопросы

1. Какие типы компьютерных вирусов существуют, чем они отлича­ются друг от друга и какова должна быть профилактика зараже­ния?

2. Почему даже чистая отформатированная дискета может стать ис­точником заражения вирусом?

3. С использованием Вирусной энциклопедии ознакомиться с клас­сификацией вирусов и методами антивирусной защиты.

Макро-вирусы (macro viruses) являются программами на языках (макроязыках), встроенных в некоторые системы обработки данных (текстовые редакторы, электронные таблицы и т.д.), а также на скрипт-языках, таких как VBA (Visual Basic for Applications), JS (Java Script). Для своего размножения такие вирусы используют возможности макроязыков и при их помощи переносят себя из одного зараженного файла (документа или таблицы) в другие. Наибольшее распространение получили макро-вирусы для Microsoft Office. Существуют также макро-вирусы, заражающие документы Ami Pro и базы данных. Для существования вирусов в конкретной системе (редакторе) необходимо наличие встроенного в систему макроязыка с возможностями:

1. привязки программы на макроязыке к конкретному файлу;
2. копирования макропрограмм из одного файла в другой;
3. возможность получения управления макропрограммой без вмешательства пользователя (автоматические или стандартные макросы).

Данным условиям удовлетворяют редакторы Microsoft Word, Office и AmiPro, а также электронная таблица Excel и база данных Microsoft Access. Эти системы содержат в себе макроязыки: Word - Word Basic; Excel, Access - VBA. При этом:

1. макропрограммы привязаны к конкретному файлу (AmiPro) или находятся внутри файла (Word, Excel, Access);
2. макроязык позволяет копировать файлы (AmiPro) или перемещать макропрограммы в служебные файлы системы и редактируемые файлы (Word, Excel);
3. при работе с файлом при определенных условиях (открытие, закрытие и т.д.) вызываются макропрограммы (если таковые есть), которые определены специальным образом (AmiPro) или имеют стандартные имена (Word, Excel).

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

Word/Excel/Office-вирусы: общие сведения

Физическое расположение вируса внутри файла зависит от его формата, который в случае продуктов Microsoft чрезвычайно сложен - каждый файл-документ Word, таблица Excel представляют собой последовательность блоков данных (каждый из которых также имеет свой формат), объединенных между собой при помощи большого количества служебных данных. Этот формат носит название OLE2 - Object Linking and Embedding.

Структура файлов Word, Excel и Office (OLE2) напоминает усложненную файловую систему дисков: "корневой каталог" файла-документа или таблицы указывает на основные подкаталоги различных блоков данных, несколько таблиц FAT содержат информацию о расположении блоков данных в документе и т.д. Более того, система Office Binder, поддерживающая стандарты Word и Excel позволяет создавать файлы, одновременно содержащие один или несколько документов в формате Word и одну или несколько таблиц в формате Excel. При этом Word-вирусы способны поражать Word-документы, а Excel-вирусы - Excel-таблицы, и все это возможно в пределах одного дискового файла. То же справедливо и для Office. Большинство известных вирусов для Word несовместимы с национальными (в том числе с русской) версиями Word, или наоборот - рассчитаны только на локализованные версии Word и не работают под английской версией. Однако вирус в документе все равно остается активным и может заражать другие компьютеры с установленной на них соответствующей версией Word. Вирусы для Word могут заражать компьютеры любого класса. Заражение возможно в том случае, если на данном компьютере установлен текстовый редактор, полностью совместимый с Microsoft Word версии 6 или 7 или выше (например, MS Word for Macintosh).

То же справедливо для Excel и Office. Следует также отметить, что сложность форматов документов Word, таблиц Excel и особенно Office имеет следующую особенность: в файлах-документах и таблицах присутствуют "лишние" блоки данных, т.е. данные, которые никак не связаны с редактируемым текстом или таблицами, либо являются случайно оказавшимися там копиями прочих данных файла. Причиной возникновения таких блоков данных является кластерная организация данных в OLE2-документах и таблицах - даже если введен всего один символ текста, то под него выделяется один или даже несколько кластеров данных. При сохранении документов и таблиц в кластерах, не заполненных "полезными" данными, остается "мусор", который попадает в файл вместе с прочими данными. Количество "мусора" в файлах может быть уменьшено отменой пункта настройки Word/Excel "Allow Fast Save", однако это лишь уменьшает общее количество "мусора", но не убирает его полностью. Следствием этого является тот факт, что при редактировании документа его размер изменяется вне зависимости от производимых с ним действий - при добавлении нового текста размер файла может уменьшиться, а при удалении части текста - увеличиться.

То же и с макро-вирусами: при заражении файла его размер может уменьшиться, увеличиться или остаться неизменным. Следует также отметить тот факт, что некоторые версии OLE2.DLL содержат небольшой недочет, в результате которого при работе с документами Word, Excel и особенно Office в блоки "мусора" могут попасть случайные данные с диска, включая конфиденциальные (удаленные файлы, каталоги и т.д.). В эти блоки могут попасть также команды вируса. В результате после лечения зараженных документов активный код вируса удаляется из файла, но в блоках "мусора" могут остаться часть его команд. Такие следы присутствия вируса иногда видимы при помощи текстовых редакторов и даже могут вызвать реакцию некоторых антивирусных программ. Однако эти остатки вируса совершенно безвредны: Word и Excel не обращают на них никакого внимания.

Word/Excel/Office-вирусы: принципы работы

При работе с документом Word версий 6 и 7 или выше выполняет различные действия: открывает документ, сохраняет, печатает, закрывает и т.д. При этом Word ищет и выполняет соответствующие "встроенные макросы" - при сохранении файла по команде File/Save вызывается макрос FileSave, при сохранении по команде File/SaveAs - FileSaveAs, при печати документов - FilePrint и т.д., если, конечно, таковые макросы определены. Существует также несколько "авто-макросов", автоматически вызываемые при различных условиях. Например, при открытии документа Word проверяет его на наличие макроса AutoOpen. Если такой макрос присутствует, то Word выполняет его. При закрытии документа Word выполняет макрос AutoClose, при запуске Word вызывается макрос AutoExec, при завершении работы - AutoExit, при создании нового документа - AutoNew.

Похожие механизмы (но с другими именами макросов и функций) используются и в Excel/Office, в которых роль авто- и встроенных макросов выполняют авто- и встроенные функции, присутствующие в каком-либо макросе или макросах, причем в одном макросе могут присутствовать несколько встроенных и авто-функций. Автоматически (т.е. без участия пользователя) выполняются также макросы/функции, ассоциированные с какой-либо клавишей либо моментом времени или датой, т.е. Word/Excel вызывают макрос/функцию при нажатии на какую-либо конкретную клавишу (или комбинацию клавиш) либо при достижении какого-либо момента времени. В Office возможности по перехвату событий несколько расширены, но принцип используется тот же.

Макро-вирусы, поражающие файлы Word, Excel или Office как правило пользуются одним из трех перечисленных выше приемов - в вирусе либо присутствует авто-макрос (авто-функция), либо переопределен один из стандартных системных макросов (ассоциированный с каким-либо пунктом меню), либо макрос вируса вызывается автоматически при нажатии на какую-либо клавишу или комбинацию клавиш. Существуют также полу-вирусы, которые не используют всех этих приемов и размножаются, только когда пользователь самостоятельно запускает их на выполнение. Таким образом, если документ заражен, при открытии документа Word вызывает зараженный автоматический макрос AutoOpen (или AutoClose при закрытии документа) и, таким образом, запускает код вируса, если это не запрещено системной переменной DisableAutoMacros. Если вирус содержит макросы со стандартными именами, они получают управление при вызове соответствующего пункта меню (File/Open, File/Close, File/SaveAs). Если же переопределен какой-либо символ клавиатуры, то вирус активизируется только после нажатия на соответствующую клавишу.

Большинство макро-вирусов содержат все свои функции в виде стандартных макросов Word/Excel/Office. Существуют, однако, вирусы, использующие приемы скрытия своего кода и хранящие свой код в виде не макросов. Известно три подобных приема, все они используют возможность макросов создавать, редактировать и исполнять другие макросы. Как правило, подобные вирусы имеют небольшой (иногда - полиморфный) макрос-загрузчик вируса, который вызывает встроенный редактор макросов, создает новый макрос, заполняет его основным кодом вируса, выполняет и затем, как правило, уничтожает (чтобы скрыть следы присутствия вируса). Основной код таких вирусов присутствует либо в самом макросе вируса в виде текстовых строк (иногда - зашифрованных), либо хранится в области переменных документа или в области Auto-text.

Алгоритм работы Word макро-вирусов

Большинство известных Word-вирусов при запуске переносят свой код (макросы) в область глобальных макросов документа ("общие" макросы), для этого они используют команды копирования макросов MacroCopy, Organizer.Copy либо при помощи редактора макросов - вирус вызывает его, создает новый макрос, вставляет в него свой код, который и сохраняет в документе. При выходе из Word глобальные макросы (включая макросы вируса) автоматически записываются в DOT-файл глобальных макросов (обычно таким файлом является NORMAL.DOT). Таким образом, при следующем запуске редактора MS-Word вирус активизируется в тот момент, когда WinWord грузит глобальные макросы, т.е. сразу. Затем вирус переопределяет (или уже содержит в себе) один или несколько стандартных макросов (например, FileOpen, FileSave, FileSaveAs, FilePrint) и перехватывает, таким образом, команды работы с файлами. При вызове этих команд вирус заражает файл, к которому идет обращение. Для этого вирус конвертирует файл в формат Template (что делает невозможной дальнейшие изменения формата файла, т.е. конвертирование в какой-либо не Template формат) и записывает в файл свои макросы, включая Auto-макрос. Таким образом, если вирус перехватывает макрос FileSaveAs, то заражается каждый DOC-файл, сохраняемый через перехваченный вирусом макрос. Если перехвачен макрос FileOpen, то вирус записывается в файл при его считывании с диска.

Второй способ внедрения вируса в систему используется значительно реже - он базируется на так называемых "Add-in" файлах, т.е. файлах, являющихся служебными дополнениями к Word. В этом случае NORMAL.DOT не изменяется, а Word при запуске загружает макросы вируса из файла (или файлов), определенного как "Add-in". Этот способ практически полностью повторяет заражение глобальных макросов за тем исключением, что макросы вируса хранятся не в NORMAL.DOT, а в каком-либо другом файле. Возможно также внедрения вируса в файлы, расположенные в каталоге STARTUP, - Word автоматически подгружает файлы-темплейты из этого каталога, но такие вирусы пока не встречались. Рассмотренные выше способы внедрения в систему представляют собой некоторый аналог резидентных DOS-вирусов. Аналогом нерезидентности являются макро-вирусы, которые не переносят свой код в область системных макросов - для заражения других файлов-документов они либо ищут их при помощи встроенных в Word функций работы с файлами, либо обращаются к списку последних редактированных файлов (Recently used file list). Затем такие вирусы открывают документ, заражают его и закрывают.

Алгоритм работы Excel макро-вирусов

Методы размножения Excel-вирусов в целом аналогичны методам Word-вирусов. Различия заключаются в командах копирования макросов (например, Sheets.Copy) и в отсутствии NORMAL.DOT - его функцию (в вирусном смысле) выполняют файлы в STARTUP-каталоге Excel. Следует отметить, что существует два возможных варианта расположения кода макро-вирусов в таблицах Excel. Подавляющее большинство таких вирусов записывают свой код в формате VBA (Visual Basic for Applications), однако существуют вирусы, хранящие свой код в старом формате Excel версии 4.0. Такие вирусы по своей сути ничем не отличаются от VBA-вирусов, за исключением отличий в формате расположения кодов вируса в таблицах Excel. Несмотря на то, что в новых версиях Excel (начиная с версии 5) используются более совершенные технологии, возможность исполнения макросов старых версий Excel была оставлена для поддержания совместимости. По этой причине все макросы, написанные в формате Excel 4, вполне работоспособны во всех последующих версиях, несмотря на то, что Microsoft не рекомендует использовать их и не включает необходимую документацию в комплект поставки Excel.

Алгоритм работы вирусов для Access

Поскольку Access является частью пакета Office Pro, то вирусы для Access представляют собой такие же макросы на языке Visual Basic, как и прочие вирусы, заражающие приложения Office. Однако в данном случае вместо авто-макросов в системе присутствуют автоматические скрипты, которые вызываются системой при различных событиях (например, Autoexec). Данные скрипты затем могут вызывать различные макропрограммы. Таким образом, при заражении баз данных Access вирусу необходимо заменить какой-либо авто-скрипт и скопировать в заражаемую базу свои макросы. Заражение скриптов без дополнительных макросов не представляется возможным, поскольку язык скриптов достаточно примитивен и не содержит необходимых для этого функций.

Следует отметить, что в терминах Access скрипты называются макросами (macro), а макросы - модулями (module), однако в дальнейшем будет использоваться унифицированная терминология - скрипты и макросы. Лечение баз данных Access является более сложной задачей, чем удаление прочих макро-вирусов, поскольку в случае Access необходимо обезвредить не только вирусные макросы, но и авто-скрипты. А так так значительная часть работы Access возложена как раз на скрипты и макросы, то некорректное удаление или деактивация какого-либо элемента может привести к невозможности операций с базой данных. То же справедливо и для вирусов - некорректное замещение авто-скриптов может привести к потере данных, хранящихся в базе.

AmiPro-вирусы

При работе с каким-либо документом редактор AmiPro создает два файла - непосредственно текст документа (с расширением имени SAM) и дополнительный файл, содержащий макросы документа и, возможно, прочую информацию (расширение имени - SMM). Формат обоих файлов достаточно прост - они представляют собой обычный текстовый файл, в котором как редактируемый текст, так и команды управления присутствуют в виде обычных текстовых строк. Документу можно поставить в соответствие какой-либо макрос из SMM-файла (команда AssignMacroToFile). Этот макрос является аналогом AutoOpen и AutoClose в MS Word и вызывается редактором AmiPro при открытии или закрытии файла. Видимо, в AmiPro отсутствует возможность помещать макросы в "общую" область, поэтому вирусы для AmiPro могут заразить систему только при открытии зараженного файла, но не при загрузке системы, как это происходит с MS-Word после заражения файла NORMAL.DOT. Как и MS Word, AmiPro позволяет переопределять системные макросы (например, SaveAs, Save) командой ChangeMenuAction. При вызове переопределенных функций (команд меню) управление получают зараженные макросы, т.е. код вируса.

Стелс вирусы

Представители этого класса используют различные средства для маскировки своего присутствия в системе. Обычно это достигается путём перехвата ряда системных функций, ответственных за работу с файлами. "Стелс"- технологии делают невозможным обнаружение вируса без специального инструментария. Вирус маскирует и приращение длины поражённого объекта (файла), и своё тело в нём, "подставляя" вместо себя "здоровую" часть файла.

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

Также стелс - вирусы могут прятаться в виде потоков в системных и других процессах, что также значительно затрудняет их выявление. Такие стелс вирусы невозможно даже увидеть в списке всех запущенных, в данный момент, в системе процессов.

Есть простой способ отключить механизм маскировки Стелс - вирусов. Достаточно загрузить компьютер с незараженной системной дискеты и проверить компьютер антивирусной программой, не запуская программ с диска компьютера (они могут оказаться зараженными). В этом случае вирус не сможет получить управление и установить в оперативной памяти резидентный модуль, реализующий стелс - алгоритм, антивирус прочитает информацию, действительно записанную на диске, и легко обнаружит "бациллу".

Большинство антивирусных программ противодействует попыткам стелс - вирусов остаться незамеченными, но, чтобы не оставить им ни единого шанса, перед проверкой компьютера антивирусной программой компьютер следует загружать с дискеты, на которую следует записать и антивирусные программы. Многие антивирусы настолько успешно противостоят стелс - вирусам, что обнаруживают их при попытке замаскироваться. Такие программы считывают проверяемые файлы программ с диска, пользуясь для этого несколькими различными методами - например, с помощью операционной системы и через BIOS: если обнаруживаются несовпадения, то делается вывод, что в оперативной памяти, вероятно, находится стелс - вирус.

Полиморфные вирусы

К полиморфным вирусам относятся те из них, детектирование которых невозможно (или крайне затруднительно) осуществить при помощи так называемых вирусных сигнатур - участков постоянного кода, специфичных для конкретного вируса. Достигается это двумя основными способами - шифрованием основного кода вируса с непостоянным ключом и случайным набором команд расшифровщика или изменением самого выполняемого кода вируса. Существуют также другие, достаточно экзотические примеры полиморфизма - DOS-вирус "Bomber", например, незашифрован, однако последовательность команд, которая передает управление коду вируса, является полностью полиморфной.

Полиморфизм различной степени сложности встречается в вирусах всех типов - от загрузочных и файловых DOS-вирусов до Windows-вирусов и даже макро-вирусов.

Большинство вопросов связано с термином "полиморфный вирус". Этот вид компьютерных вирусов представляется на сегодняшний день наиболее опасным.

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

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

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

Полиморфные расшифровщики

Полиморфные вирусы используют сложные алгоритмы для генерации кода своих расшифровщиков: инструкции (или их эквиваленты) переставляются местами от заражения к заражению, разбавляются ничего не меняющими командами типа NOP, STI, CLI, STC, CLC, DEC неиспользуемый регистр, XCHG неиспользуемые регистры и т.д.

Полноценные же полиморфные вирусы используют еще более сложные алгоритмы, в результате работы которых в расшифровщике вируса могут встретиться операции SUB, ADD, XOR, ROR, ROL и другие в произвольном количестве и порядке. Загрузка и изменение ключей и других параметров шифровки производится также произвольным набором операций, в котором могут встретиться практически все инструкции процессора Intel (ADD, SUB, TEST, XOR, OR, SHR, SHL, ROR, MOV, XCHG, JNZ, PUSH, POP ...) со всеми возможными режимами адресации. Появляются также полиморфик-вирусы, расшифровщик которых использует инструкции вплоть до Intel386, а летом 1997 года обнаружен 32-битный полиморфик-вирус, заражающий EXE-файлы Windows95. Сейчас уже есть полиморфные вирусы, которые также могут использовать различные команды современных процессоров.

В результате в начале файла, зараженного подобным вирусом, идет набор бессмысленных на первый взгляд инструкций, причем некоторые комбинации, которые вполне работоспособны, не берутся фирменными дизассемблерами (например, сочетание CS:CS: или CS:NOP). И среди этой "каши" из команд и данных изредка проскальзывают MOV, XOR, LOOP, JMP - инструкции, которые действительно являются "рабочими".

Уровни полиморфизма

Существует деление полиморфных вирусов на уровни в зависимости от сложности кода, который встречается в расшифровщиках этих вирусов. Такое деление впервые предложил д-р. Алан Соломон, через некоторое время Весселин Бончев расширил его.

Уровень 1: вирусы, которые имеют некоторый набор расшифровщиков с постоянным кодом и при заражении выбирают один из них. Такие вирусы являются "полу - полиморфными" и носят также название "олигоморфные" (oligomorphic). Примеры: "Cheeba", "Slovakia", "Whale".
Уровень 2: расшифровщик вируса содержит одну или несколько постоянных инструкций, основная же его часть непостоянна.
Уровень 3: расшифровщик содержит неиспользуемые инструкции - "мусор" типа NOP, CLI, STI и т.д.
Уровень 4: в расшифровщике используются взаимозаменяемые инструкции и изменение порядка следование (перемешивание) инструкций. Алгоритм расшифрования при этом не изменяется.
Уровень 5: используются все перечисленные выше приемы, алгоритм расшифрования непостоянен, возможно повторное шифрование кода вируса и даже частичное шифрование самого кода расшифровщика.
Уровень 6: permutating-вирусы. Изменению подлежит основной код вируса - он делится на блоки, которые при заражении переставляются в произвольном порядке. Вирус при этом остается работоспособным. Подобные вирусы могут быть незашифрованны.

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

Уровень 1: для детектирования вируса достаточно иметь несколько масок

Уровень 2: детектирование по маске с использованием "wildcards"

Уровень 3: детектирование по маске после удаления инструкций-"мусора"

Уровень 4: маска содержит несколько вариантов возможного кода, т.е. становится алгоритмической
Уровень 5: невозможность детектирования вируса по маске

Недостаточность такого деления продемонстрирована в вирусе 3-го уровня полиморфичности, который так и называется - "Level3". Этот вирус, являясь одним из наиболее сложных полиморфик-вирусов, по приведенному выше делению попадает в Уровень 3, поскольку имеет постоянный алгоритм расшафровки, перед которым стоит большое количество команд-"мусора". Однако в этом вирусе алгоритм генерирования "мусора" доведен до совершенства: в коде расшифровщика могут встретиться практически все инструкции процессора i8086.

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

Поэтому мне кажется более объективным деление, в котором помимо критерия вирусных масок участвуют и другие параметры:

Степень сложности полиморфик-кода (процент от всех инструкций процессора, которые могут встретиться в коде расшифровщика)
Использование анти-эмуляторных приемов
Постоянство алгоритма расшифровщика
Постоянство длины расшифровщика

Изменение выполняемого кода

Наиболее часто подобный способ полиморфизма используется макро-вирусами, которые при создании своих новых копий случайным образом меняют имена своих переменных, вставляют пустые строки или меняют свой код каким-либо иным способом. Таким образом, алгоритм работы вируса остается без изменений, но код вируса практически полностью меняется от заражения к заражению.

Реже этот способ применяется сложными загрузочными вирусами. Такие вирусы внедряют в загрузочные сектора лишь достаточно короткую процедуру, которая считывает с диска основной код вируса и передает на него управление. Код этой процедуры выбирается из нескольких различных вариантов (которые также могут быть разбавлены "пустыми" командами), команды переставляются между собой и т.д.

Еще реже этот прием встречается у файловых вирусов - ведь им приходится полностью менять свой код, а для этого требуются достаточно сложные алгоритмы. На сегодняшний день известны всего два таких вируса, один из которых ("Ply") случайным образом перемещает свои команды по своему телу и заменяет их на команды JMP или CALL. Другой вирус ("TMC") использует более сложный способ - каждый раз при заражении вирус меняет местами блоки своего кода и данных, вставляет "мусор", в своих ассемблерных инструкциях устанавливает новые значения офсетов на данные, меняет константы и т.д. В результате, хотя вирус и не шифрует свой код, он является полиморфным вирусом - в коде не присутствует постоянного набора команд. Более того, при создании своих новых копий вирус меняет свою длину.

Вирусы по виду деструктивных действий

По виду деструктивных действий вирусы можно разделить на три группы:

Информационные вирусы (вирусы первого поколения)

Так называемые вирусы первого поколения - это все ныне существующие вирусы, действия которых направлены на уничтожение, модификацию или хищение информации.

Аппаратные вирусы (вирусы второго поколения)

Данный вид вирусов способен вывести из строя аппаратную часть компьютера. Например, стереть BIOS или испортить его, нарушить логическую структуру жесткого фиска таким образом, что восстановить её будет возможным только низкоуровневым форматированием (и то не всегда). Единственным представителем данного вида является самый опасный из всех, когда-либо существовавших, вирус Win95.CIH "Чернобль". В свое время этот вирус вывел из строя миллионы компьютеров. Он стирал программу из BIOS, тем самым, выводя из строя компьютер, а та же уничтожал всю информацию с жесткого диска так, что восстановить её было практически невозможно.

В настоящее время "диких" аппаратных вирусов не обнаружено. Но уже сейчас специалисты прогнозируют появление новых подобного рода вирусов, которые смогут поражать BIOS. Защитой от таких вирусов планируется сделать на каждой материнской плате специальные джамперы, которые будут блокировать запись в BIOS.

Психотропные вирусы (вирусы третьего поколения)

Эти вирусы способны убить человека, воздействуя на него через монитор или колонки компьютера. Воспроизводя определенные звуки, заданной частоты или определенное мерцание различных цветов на экране, психотропные вирусы способны вызвать эпилептический приступ (у людей склонных к этому), либо остановку сердца, кровоизлияние в мозг.

К счастью на сегодняшний день о реальном существовании таких вирусов не известно. Многие специалисты ставят под сомнение вообще существование подобного вида вирусов. Но одно сказать можно точно. Давно уже изобретены психотропные технологии по воздействию на человека через звук или изображение (не путать с 25 кадром). Эпилептический приступ вызвать у человека склонного к этому очень просто. Несколько лет назад в некоторых СМИ разгорелась шумиха по поводу появления нового вируса под названием "666". Этот вирус после каждых 24 кадров выдает на экран специальную цветовую комбинацию, способную изменить жизнедеятельность зрителя. В результате человека охватывает гипнотический транс, мозг теряет контроль над работой организма, что может привести к болезненному состоянию, смене режима работы сердца, артериального давления и т.п. Но цветовые комбинации сегодня не являются запрещенными законодательством. Поэтому они могут появляться на экранах вполне легально, хотя результаты их воздействия могут быть катастрофическими для всех нас.

Примером подобного воздействия может служить мультфильм "Покемоны", после показа одной из серий в Японии, сотни детей попали в больницы с жуткой головной болью, кровоизлиянием в мозг. Некоторые из них скончались. В мультфильме были кадры с яркой генерацией определенной палитры цветов, как правило, это красные вспышки на черном фоне в определенной последовательности. После этого инцидента данный мультфильм к показу в Японии был ЗАПРЕЩЕН.

Можно привести еще один пример. Все наверняка помнят, что творилось в Москве после трансляции матча нашей сборной по футболу со сборной Японии (если не ошибаюсь). А ведь на большом экране был все лишь продемонстрирован ролик, как человек с битой крошил машину. Это также является психотропным воздействием, видя ролик "люди" начали уничтожать на своем пути все и вся.

Материалы и данные были взяты с ресурсов:
http://www.stopinfection.narod.ru
http://hackers100.narod.ru
http://broxer.narod.ru
http://www.viruslist.com
http://logic-bratsk.ru
http://www.offt.ru
http://www.almanet.info

  • Для комментирования войдите или зарегистрируйтесь
12.09.2013

– являются основой большинства макровирусов. Они являются своего рода родоначальниками всего семейства макровирусов, а также они являются одной из подгрупп . Они пишутся на огромном количестве языков программирования – начиная от VBS, JS и заканчивая BAT и PHP. Основным признаком подобного вредоносного программного обеспечения является то, что они будто привязываются к одному из встроенных языков программирования, на котором были созданы. По своей сущности скрипт-вирусы представляют из себя набор определенных инструкций, которые заставляют ту или иную программу совершать те действия, которые до этого не были предусмотрены ее создателями – разрушительные действия.

Стоит отметить, что использование разнообразных скриптов, апплетов не является само по себе вредоносным действием, скорее наоборот, их использование делает для пользователей, ведь разнообразные чаты, диалоги и другие возможности появляются исключительно при использовании этих микропрограмм. Но в том случае, если в эти скрипты и апплеты встроить вредоносное программное обеспечение, то злоумышленники могут даже получить доступ к конфиденциальной информации, хранящейся на компьютере пользовтаеля, разумеется, что возможны и более серьезные последствия – вплоть до форматирования жесткого диска, на котором могут храниться такие данные, которые не должны попадать в чужие руки. Естественно, что подобные вирусы, которые способны буквально уничтожать систему будут встречаться несколько реже, чем те, которые способны считывать информацию с персонального компьютера пользователя. Стоит отметить то, что антивирусное программное обеспечение не сможет обнаружить вредоносную программу . Единственным, пожалуй, плюсом во всей сложившейся ситуации можно считать то, что защита браузера может сработать так как надо и скрипт вирусы могут быть обнаружены, ведь создатели браузеров очень многое знают о такой разновидности вредоносного программного обеспечения.

Понравилось? Лайкни нас на Facebook