Вызываемые вирусом эффекты

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

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

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

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

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

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

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

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

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

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

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

 

По степени разрушительности вирусы можно условно разделить на два типа: “иллюзионисты” и “вандалы”.

“Иллюзионисты” демонстрируют экзотические звуковые и визуальные эффекты: осыпание букв, бегающие рожицы.

У “вандалов” главная задача – как можно более скрытое размножение с последующим разрушением информации (обычно FAT и форматирование диска).

Виды наносимого вирусом ущерба:

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

2. блокирование некоторых функций ОС типа загрузки (?) с дискеты;

3. выдача ложных, раздражающих или отвлекающих сообщений (например, “Скажи бебе”);

4. создание звуковых или визуальных эффектов;

5. имитация ошибок или сбоев в программе или операционной системе;

6. имитация сбоев аппаратуры (перевод части кластеров в сбойные на винчестере или на дискете, зависание ПК через некоторое время после включения и т.д.).

Наиболее опасны не катастрофические повреждения винчестера или дискет, а медленные постепенные изменения в файлах данных (например, перестановка цифр в числовых полях файлов DBF (Data Base File) = файл базы данных).

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

Эффекты вирусов – червей проявляются при анализе TCP/IP пакетов. Универсальных решений не существует, но кое-какие наметки дать все-таки можно. В частности, применительно к веб-серверам и запросам типа GET характерным признаком shell-кода являются:

а) имена командных интерпретаторов (cmd.exe, sh), системных библиотек типа admin.dll и подобных им файлов;

б) последовательность из трех и более машинных команд NOP, записываемая приблизительно так: %u9090;

в) машинные команды CALL ESP.JMP ESP, INT 80h и другие подобные им (полный список занимает слишком много места и поэтому здесь не приводится);

г) бессмысленные последовательности вроде .\.\.\ или XXX, используемые вирусом для переполнения.

 

Общая классификация средств защиты от вирусов

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

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

Вторым и наиболее распространенным средством защиты от вирусов являются так называемые фаги – программы, “выкусывающие” вирус из зараженной программы.

Полифаги рассчитаны на несколько типов вирусов. Они умеют распознавать и выкусывать вирусы, информация о которых в них уже заложена (SOS и Aidstest).

Третьим типом антивирусных программ являются резидентныепрограммы-сторожа, контролирующие подозрительные действия запускаемых программ (например, попытку записи в определенный раздел или файл с расширением .COM или .EXE) и блокирующие их. Здесь наибольший практический интерес представляют дисковые драйверы, обеспечивающие возможность сегментации винчестера и присваивания отдельным разделам статуса READ ONLY. Например, драйвер ADM (Advanced Disk Manager) блокирует доступ к первой дорожке, содержащей загрузочные сектора.

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

Наиболее изощренным типом антивирусных программ являются так называемые вакцины. Они делают вирус неспособным к размножению. Вакцины могут быть пассивными или активными. Пассивная вакцина представляет собой программу, которая обрабатывает файл или все файлы на диске таким образом, что проставляется признак, который вирус использует, чтобы отличить зараженные файлы. Например, некоторые вирусы дописывают в конец файла строку “Ms Dos”. Если искусственно дописать в конец всех файлов эту строку, то файлы заражаться не будут.

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

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

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

1. Архивирование – это основной метод защиты от вирусов. Архивирование заключается в сжатии файлов с помощью программ-архиваторов. Для резервирования системных областей имеются служебные программы-утилиты, входящие в пакеты MS DOS, PC SHELL, NU.

2. Сегментация – разбиение диска на разделы с атрибутом READ ONLY. Использование для хранения ценной информации разделов, отличных от C или D.

3. Ревизия – ежедневный контроль целостности исполняемых файлов и системных блоков с помощью Adinf или аналогичного ревизора.

4. Входной контроль – проверка поступающих программ рядом детекторов и фагов, проверка соответствия длины и контрольных сумм приведенным в документации.

5. Профилактика – систематическое использование vformat для разметки дискет; вакцинирование поступающих дискет; защита дискет от записи.

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

7. Фильтрация – применение программ-сторожей для обнаружения попыток выполнить несанкционированные действия.

8. Терапия – проверка дискет и винчестера на вирусы и лечение зараженных программ.

 

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

1) архивирование по схеме неделя-месяц-год;

2) сплошной входной контроль новых программных средств;

3) предварительная вакцинация;

4) сегментация информации на винчестере;

5) систематическое использование ревизоров.

 

Против вирусов-червей необходимо предпринять следующие действия:

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

2. Укрепление серверов. Защита хоста — это наиболее сложный этап защиты. От системного администратора требуется практически постоянно обновлять систему: необходимо устанавливать патчи на операционную систему, удалять ненужные сервисы и разрешения по доступу к файлам, и т.п. Любой сервер, вне зависимости от типа ОС, должен быть защищен еще до его подключения к сети.

3. Защита приложений. Защита приложений — это разработка безопасного кода. Кодировка используется для предотвращения переполнения буфера и применения защиты. Подтверждение входных данных по типу и размеру позволит предотвратить переполнение буфера.

4. Пользователь как оперативная боевая единица. Объяснить пользователям компьютеров, что они должны делать для защиты сети. Эту работу нельзя оставлять системным администраторам и аналитикам ИТ-безопасности. Самое эффективное средство повышения бдительности и снижения риска — тренинг для самих пользователей. Они должны понимать риск, связанный с открытием почтовых приложений и вложенных файлов, подсоединением ноутбуков к домашней сети, и назначением «слабых», в том числе общеизвестных паролей.