В деятельности компьютерных вирусов можно выделить два периода: «инкубационный» (период спячки) и активный. В «инкубационный» период вирус создает собственные копии на диске и «заражает» другие программы, а также выполняет какие-либо вредные действия, например портит файлы, таблицу размещения файлов на диске и т. п.
Длительность этого периода зависит от многих факторов, например от интенсивности работы пользователей (вирус может подсчитывать число произведенных им заражений) или наступления какой-либо определенной даты (например, вирус Black Friday, или Израильский, производит проверку системной даты, и если она оказывается 13-м числом и пятницей, то вирус активизируется и портит диск и программы).
Авторы вирусных программ стараются предусмотреть все возможные ситуации, чтобы их «произведение» не раскрыло себя раньше времени: запрещают повторное заражение одного и того же файла для избежания конфликта разных копий вируса; шифруют текст самого вируса, маскируют вирус при попытке просмотреть зараженную программу в редакторе, сохраняют работоспособность инфицированных программ.
Однако вирус можно обнаружить и в этот скрытый период. Основными признаками заражения могут быть следующие: изменение длины программ; потеря работоспособности программного обеспечения; заметное замедление выполнения компьютером некоторых операций, особенно с диском; подозрительные «зависания» компьютера, приводящие к необходимости перезагрузки; появление большого количества «плохих» секторов на дискетах или винчестере и уменьшение их емкости и др.
О наступлении активного периода пользователь узнает из различных сообщений, звуковых сигналов, экранных эффектов или по отказам компьютера.
Учитывая алгоритмы работы и способы воздействия вирусов на программное обеспечение их можно условно классифицировать по следующим признакам (рис. 11.1)
Рис. 11.1. Классификация компьютерных вирусов
По среде обитания:
- файловыевирусы, поражающие исполняемые файлы, т. е. файлы с расширением.com,.exe, sys,.bat;
- вирусы, поражающие загрузочные секторы (загрузочные вирусы). Они поражают определенные системные области магнитных носителей (гибких и жестких дисков). Кроме того, на включенном компьютере они могут временно располагаться в оперативной памяти. Обычно заражение происходит при попытке загрузки компьютера с магнитного носителя, системная область которого содержит загрузочный вирус. Так, например, при попытке загрузить компьютер с гибкого диска происходит сначала проникновение вируса в оперативную память, а затем в загрузочный сектор жестких дисков. Далее этот компьютер сам становится источником распространения загрузочного вируса;
- сетевые, распространяющиеся по компьютерным сетям;
- драйверные, порождающие драйвера устройств.
По особенностям алгоритма:
- простейшие вирусы ( паразитические), они изменяют содержимое файлов и секторов диска и могут быть достаточно легко обнаружены и уничтожены;
- вирусы-репликаторы (черви)— распространяются по компьютерным сетям, вычисляют адреса сетевых компьютеров и записывают по этим адресам свои копии;
- вирусы-невидимки (стелс-вирусы) — перехватывают обращения операционной системы к пораженным файлам и секторам дисков и подставляют вместо своего тела незараженные участки диска;
- вирусы-мутанты, содержат алгоритмы шифровки-расшифровки, благодаря которым копии одного и того же вируса не имеют ни одной повторяющейся цепочки байтов;
- макровирусы. Эта особая разновидность вирусов поражает документы, выполненные в некоторых прикладных программах, имеющих средства для исполнения так называемых макрокоманд. В частности, к таким документам относятся документы текстового процессора Microsoft Word (они имеют расширение.DOC). Заражение происходит при открытии файла документа в окне программы, если в ней не отключена возможность исполнения макрокоманд. Как и для других типов вирусов, результат атаки может быть как относительно безобидным, так и разрушительным;
- квазивирусные или «троянские» программы,маскируются под полезную программу и разрушают загрузочный сектор и файловую систему дисков. Не способны к самораспространению, но очень опасны.
По способу заражения:
- резидентный вирус— при заражении (инфицировании) компьютера оставляет в оперативной памяти свою резидентную часть, которая потом перехватывает обращение операционной системы к объектам заражения (файлам, загрузочным секторам дисков и т. п.) и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера.
- нерезидентные вирусыне заражают память компьютера и являются активными ограниченное время.
По деструктивным особенностям (степени воздействия):
- неопасные, не мешающие работе компьютера, но уменьшающие объем свободной оперативной памяти и памяти на дисках, действия таких вирусов проявляются в каких-либо графических или звуковых эффектах;
- опасные вирусы, которые могут привести к различным нарушениям в работе компьютера;
- очень опасные (разрушительные), воздействие которых может привести к потере программ, уничтожению данных, стиранию информации в системных областях диска.
Каким бы не был вирус, пользователю необходимо знать основные методы защиты от компьютерных вирусов:
- общие средства защиты информации, которые полезны также и как страховка от физической порчи дисков, неправильно работающих программ или ошибочных действий пользователя. К ним относится копирование информации — создание копий файлов и системных областей дисков, и разграничение доступа;
- профилактические меры, позволяющие уменьшить вероятность заражения вирусом: работа с дискетами, защищенными от записи, минимизация периодов доступности дискетки для записи, раздельное хранение вновь полученных и эксплуатировавшихся ранее программ, хранение программ на «винчестере» в архивированном виде;
- организационные меры, состоящие в обучении персонала; обеспечение физической безопасности компьютера и магнитных носителей; создание и отработка плана восстановления «винчестера» и др;
- специализированные программы для зашиты от вирусов.
Для решения задач антивирусной защиты должен быть реализован комплекс известных и хорошо отработанных организационно-технических мероприятий:
- использование сертифицированного программного обеспечения;
- организация автономного испытательного стенда для проверки на вирусы нового программного обеспечения и данных. Это мероприятие эффективно для систем, обрабатывающих особо ценную информацию;
- ограничение пользователей системы на ввод программ и данных с посторонних носителей информации — отключение пользовательских дисководов для магнитных и оптических носителей информации. Особенно эффективным это становится при переходе на технологию электронного документооборота;
- запрет на использование инструментальных средств для создания программ в самой системе;
- резервное копирование рабочего программного обеспечения и данных. Для критических систем рекомендуется циклическая схема тройного копирования данных, когда рабочая копия файла хранится на диске рабочей станции, одна архивная копия в защищенной области на сервере и еще одна архивная копия на съемном носителе информации. При этом периодичность и порядок обновления архивных копий регламентируются специальной инструкцией;
- подготовка администраторов безопасности и пользователей по вопросам антивирусной защиты. Низкая квалификация администраторов безопасности и пользователей по вопросам антивирусной защиты приводит к ошибочным действиям при настройке системы и в случае возникновения нештатных ситуаций.
Использование антивирусных программ является основным средством зашиты информации от компьютерных вирусов.
Выделяют следующие виды антивирусных программ: детекторы, доктора (фаги), ревизоры, доктора-ревизоры, фильтры и вакцины (иммунизаторы).
Программы-детекторы позволяют обнаруживать файлы, зараженные одним из нескольких известных вирусов. Эти программы проверяют, имеется ли в файлах на указанном пользователем диске специфическая для данного вируса комбинация байтов. При ее обнаружении в каком-либо файле на экран выводится соответствующее сообщение. Многие детекторы имеют режимы лечения или уничтожения зараженных файлов. Следует подчеркнуть, что программы-детекторы могут обнаруживать только те вирусы, которые ей «известны». Некоторые программы-детекторы, например Norton AntiVirus или AVSP фирмы «Диалог-МГУ», могут настраивать на новые типы вирусов, им необходимо лишь указать комбинации байтов, присущие этим вирусам. Тем не мнение невозможно разработать такую программу, которая могла бы обнаруживать любой заранее неизвестный вирус.
Большинство программ-детекторов имеют функцию «доктора», т. е. они пытаются вернуть зараженные файлы или области диска в их исходное состояние. Те файлы, которые не удалось восстановить, как правило, делаются неработоспособными или удаляются.
Программы-ревизоры имеют две стадии работы. Сначала они запоминают сведения о состоянии программ и системных областей дисков (загрузочного сектора и сектора с таблицей разбиения жесткого диска). Предполагается, что в этот момент программы и системные области дисков не заражены. После этого с помощью программы-ревизора можно в любой момент сравнить состояние программ и системных областей дисков с исходным. О выявленных несоответствиях сообщается пользователю.
Чтобы проверка состояния программ и дисков проходила при каждой загрузке операционной системы, необходимо включить команду запуска программы-ревизора в командный файл autoexec.bat. Это позволяет обнаружить заражение компьютерным вирусом, когда он еще не успел нанести большого вреда. Более того, та же программа-ревизор сможет найти поврежденные вирусом файлы.
Многие программы-ревизоры являются довольно «интеллектуальными» — они могут отличать изменения в файлах, вызванные, например, переходом к новой версии программы, от изменений, вносимых вирусом, и не поднимают ложной тревоги. Другие программы часто используют различные полумеры — пытаются обнаружить вирус в оперативной памяти, требуют вызовы из первой строки файла autoexec.bat, надеясь работать на «чистом» компьютере, и т. д. Увы, против некоторых «хитрых» вирусов все это бесполезно.
В последнее время появились очень полезные гибриды ревизоров и докторов, т. е. доктора-ревизоры, — программы, которые не только обнаруживают изменения в файлах и системных областях дисков, но и могут в случае изменений автоматически вернуть их в исходное состояние. Такие программы могут быть гораздо более универсальными, чем программы-доктора, поскольку при лечении они используют заранее сохраненную информацию о состоянии файлов и областей дисков. Это позволяет им вылечивать файлы даже от тех вирусов, которые не были созданы на момент написания программы.
Существуют также программы-фильтры, которые располагаются резидентно в оперативной памяти компьютера и перехватывают те обращения к операционной системе, которые используются вирусами для размножения и нанесения вреда, и сообщают о них пользователя. Пользователь может разрешить или запретить выполнение соответствующей операции.
Программы-вакцины, или иммунизаторы, модифицируют программы и диски таким образом, что это не отражается на работе программ, но тот вирус, от которого производится вакцинация, считает эти программы или диски уже зараженными. Эти программы крайне неэффективны.
В настоящее время разделение антивирусных программ на виды не является жестким, многие антивирусные программы совмещают различные функции. Производители антивирусных программ начали создавать не просто программы антивирусы, а комплексные средства для борьбы с вирусами. Одна из наиболее популярных и наиболее универсальных антивирусных программ — DoctorWeb, антивирус Касперского Personal Pro, Norton AntiVirus Professional Edition. Это универсальные и перспективные антивирусные программы, сочетающие функции антивирусного сканера, резидентного сторожа и доктора.
В качестве перспективного подхода к защите от компьютерных вирусов в последние годы все чаще применяется сочетание программных и аппаратных методов защиты. Среди аппаратных устройств такого плана можно отметить специальные антивирусные платы, которые вставляются в стандартные слоты расширения компьютера.