Главная | Обратная связь | Поможем написать вашу работу!
МегаЛекции

Жизненный цикл компьютерных вирусов




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

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

Кроме того, возможна латентная фаза, когда нет размножения и проявления. Это может быть обусловлено:

1) системным временем (пятница, 13-е);

2) конфигурацией (должен быть винчестер);

3) аппаратными особенностями (только на клонах IBM PC).

В качестве первичного носителя вируса, как правило, выступает дискета с игровыми программами или новыми популярными программами.

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

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

- загрузчик устанавливает один или несколько каналов связи с внешним миром,
необходимых для транспортировки основного тела червя. Чаще всего для этого
используется TCP/IP-соединение, однако червь может воспользоваться услугами FTP-
и/или РОРЗ/ SMTP-протоколов, что особенно актуально для червей, пытающихся
проникнуть в локальные сети, со всех сторон огороженные сплошной стеной Firewall;

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

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


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

Способы заражения вирусом

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

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

Команда перехода

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

 

Тело вируса Начало программы    
Программа Тело вируса   Программа
  Конец программы   Тело вируса

После отработки своего тела передает управление программе-вирусоносителю, и та нормально выполняет свои функции.

Симптомы заражения

Существуют определенные признаки, указывающие на заражение программы или диска вирусом:

1. изменение длины файлов и даты создания;

2. выдача сообщений типа "Write protect error" при чтении информации с защищенных
от записи дискет;

3. замедление работы программ, зависание и перезагрузка;


4. уменьшение объема системной памяти и свободного места на диске без видимых
причин;

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

Симптомы поражения вирусом — червем. Грамотно сконструированный и не слишком прожорливый программный код обнаружить не так-то просто! Есть ряд характерных признаков червя, но все они ненадежны, и гарантированный ответ дает лишь дизассемблирование. Черви могут вообще не дотрагиваться до файловой системы, оседая в оперативной памяти адресного пространства уязвимого процесса. Распознать зловредный код по внешнему виду нереально, а проанализировать весь слепок памяти целиком - чрезвычайно трудоемкий и затруднительный процесс, тем более что явных команд передачи управления машинному коду червя может и не быть (подробнее см. раздел «Структурная анатомия червя»). Признаки червя:

1. большое количество исходящих TCP/IP-пакетов, расползающихся по всей сети и в
большинстве своем адресованных несуществующим получателям. Рассылка пакетов
происходит либо постоянно, либо совершается через более или менее регулярные и при
том очень короткие промежутки времени, например, через 3-5 сек.

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

3. существование пакетов с подозрительным содержимым. Под «пакетом» здесь
понимаются не только TCP/IP-пакеты, но и сообщения электронной почты, содержащие
откровенно «левый» текст (впрочем, червь может маскироваться и под спам, а тщательно
исследовать каждое спаммерское письмо не хватит ни нервов, ни времени).

Поделиться:





Воспользуйтесь поиском по сайту:



©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...