Понятие компьютерного вируса
канд. техн. наук Ливак Елены Николаевны
Upload
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
По деструктивным возможностям вирусы
можно разделить на:
Но даже если в алгоритме вируса не
найдено ветвей, наносящих ущерб системе,
этот вирус нельзя с полной уверенностью
назвать безвредным, так как проникновение
его в компьютер может вызвать
непредсказуемые и порой катастрофические
последствия, поскольку вирус, ка
По деструктивным возможностям вирусы можно разделить на следующие:
1. Базовые, т.е. никак не влияющие на работу компьютера (кроме уменьшения свободной памяти на диске в результате своего распространения).
2. Неопасные, влияние которых ограничивается уменьшением свободной памяти на диске и графически и пр. эффектами.
3. Опасные вирусы, которые могут привести к серьезным ошибкам и сбоям в работе .
4. Очень опасные, которые могут привести к потере программ, уничтожить данные, стереть необходимую для работы компьютера информацию, записанную в системных областях памяти.
Безвредные вирусы, как правило, производят различные визуальные или звуковые эффекты. Диапозон проявления безвредных вирусов очень широк – от простейшего стирания содержимого экрана до сложных эффектов переворачивания изображения, создания иллюзии «вращения» или «опадания» (например, вирус Cascade-1701).
Выполняемые вредными вирусами деструктивные функции тоже чрезвычайно разнообразны. В процессе своего распространения некоторые вирусы повреждают или искажают некоторые выполняемые программы, дописывая в начало уничтожаемой программы некий код без сохранения исходной последовательности байт. Некоторые вирусы при определенных условиях выполняют форматирование диска, точнее его нулевой дорожки, тем самым уничтожая важную информацию о хранящихся на диске файлах. Другие через определенные (как правило, случайные) промежутки времени перезагружают компьютер, приводя к потере несохраненных данных. В последнее время появилось огромное количество вирусов, направленных на борьбу с антивирусными программами. Некоторые из них при просмотре каталогов ищут программы, в именах которых имеются фрагметы, характерные для антивирусных программ (ANTI, AIDS, SCAN), и при обнаружении таковых пытаются нанести им какой-либо вред: стереть с диска, изменить код в теле программы и др.
Вирус представляет собой самовоспроизводящуюся программу, которая способна внедрять свои копии в файлы, системные области, вычислительные сети и т, д. и приводить к нарушению нормального функционирования компьютера. Копии вирусной программы также сохраняют способность дальнейшего распространения. Вирусы классифицируются по следующим признакам:
по среде обитания; способу заражения среды обитания; способу активации; деструктивным возможностям: особенностям алгоритма
По среде обитания вирусы разделяют на файловые, загрузочные и сетевые. Файловые вирусы внедряются в файлы, чаще всего выполняемые, или файлы документов текстовых процессоров и рабочих книг табличных процессоров. Загрузочные вирусы внедряются в загрузочный сектор диска или в сектор системного загрузчика жесткого диска. Сетевые вирусы распространяются по компьютерной сети. Существуют также файлово-загрузочные вирусы, которые заражают файлы и загрузочные секторы.
Способ заражения среды обитания зависит от самой среды. В частности, тело файлового вируса может при заражении размещаться в конце, начале, середине или хвостовой (свободной) части последнего кластера файла. Наиболее просто реализуется внедрение вируса в конец файла типа сот. Наиболее сложна имплантация вируса в середину файла, поскольку для этого должна быть известна структура заражаемого файла, чтобы можно было внедриться, к примеру, в область стека. При внедрении загрузочного вируса (ввиду малых размеров среды обитания), используется размещение головы и тела вместо загрузочного сектора диска или сектора системного загрузчика, а хвост вируса и следующий за ним загрузочный сектор размещаются в других кластерах или секторах.
По способу активации вирусы подразделяют на резидентные и нерезидентные. Резидентный вирус при заражении оставляет в оперативной памяти резидентную часть, которая затем перехватывает обращения операционной системы к объектам заражения – файлам, загрузочным секторам и т. п., и внедряется в них. Резидентные вирусы сохраняют свою активность вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы являются активными ограниченное время и активизируются в определенные моменты, например, при запуске зараженных выполняемых программ или при обработке документов текстовым процессором. Некоторые нерезидентные вирусы оставляют в оперативной памяти небольшие резидентные программы.
По деструктивным возможностям вирусы разделяют на безвредные, неопасные, опасные и очень опасные. Безвредные вирусы проявляются только в том, что уменьшают объем памяти на диске в результате своего распространения. Неопасные вирусы, кроме отмеченного проявления, порождают графические, звуковые и другие эффекты. Опасные вирусы могут привести к нарушениям нормальной работы компьютера, например к неправильной печати документа. Очень опасные вирусы могут привести к уничтожению программ и данных, стиранию информации в системных областях памяти и даже приводить к выходу из строя движущихся частей жесткого диска при вводе в резонанс.
По особенностям алгоритмов различают следующие вирусы: спутники, черви, или репликаторы, паразитические, студенческие, невидимки, или стелс-вирусы, призраки или мутанты. Вирусы-спутники файлы не изменяют, а для выполнимых программ (.ехе) создают одноименные программы типа сот, которые при выполнении исходной программы запускаются первыми, а затем передают управление исходной выполняемой программе. Вирусы-черви распространяются в компьютерных сетях, вычисляют адреса сетевых компьютеров. Паразитические вирусы при распространении меняют содержимое дисковых секторов и файлов и, как следствие, легко обнаруживаются. Студенческие вирусы представляют собой простейшие, легко обнаруживаемые вирусы. Стелс-вирусы (название происходит от STEALTH – названия проекта создания самолетов-невидимок) перехватывают обращение операционной системы к пораженным файлам и секторам дисков и подставляют незараженные участки диска, затрудняя тем самым их обнаружение. Вирусы-призраки представляют собой труднообнаруживаемые вирусы, которые имеют зашифрованное с помощью алгоритмов шифровки-расшифровки тело вируса, благодаря чему две копии одного вируса не имеют одинаковых участков кода (сигнатур).
Макровирус—
это разновидность компьютерных
вирусов, разработанных на макроязыках,
встроенных в такие прикладные пакеты
ПО,
как Microsoft
Office.
Для своего размножения такие вирусы
используют возможности макроязыков
и при их помощи переносятся из одного
зараженного файла в другие. Большая
часть таких вирусов написана для MS
Word.
Оператор,
работающий в какой-либо системе, часто
встречается с необходимостью повторять
некоторые последовательности действий
много раз
Такая
последовательность может, например,
состоять из:
В
подобных случаях часто можно
воспользоваться аппаратом
макрокоманд.
Макрокомады
(часто
называемые макро
или
макрос)
– являются однострочными
сокращениями для группы команд.
Используя макрокоманду, программист
по существу определяет одну
“команду”
для представления некоторой
последовательности команд.
Определяя
соответствующие макрокоманды,
оператор может удобным для себя образом
вводить свои собственные средства
более высокого уровня, не заботясь о
структуре системы. Он может достигнуть
краткости и простоты управления
системой, не теряя при этом основных
преимуществ использования исходной
системы, такой, как например язык
ассемблера.
Крупные
макрооперации
упрощают пользование, отладку и
модификацию программ, и облегчают
стандартизацию.
Многие
разработчик вычислительных машин
используют макрокоманды для автоматизации
составления “подходящих”
операционных систем в процессе,
называемом генерацией
системы
В
своей простейшей
форме макрокоманда
представляет собой сокращение
для обозначения последовательности
операций
Рассмотрим
следующий набор команд, взятый из
макроязыка
IDE для Borland C++ версии 3.1 (TEMC). Пример
В
приведенной программе последовательность
команд
Аппарат
макрокоманд
позволяет присвоить
этой последовательности имя и
использовать это имя вместо нее.
Можно
также определить некоторый
макроязык,
позволяющий рассматривать данную
конструкцию, как определение и в
дальнейшем использовать это определение.
Фактически,
макропроцессор представляет собой
отдельный языковой процессор со своим
собственным языком.
Форматы
макроопределений в различных системах
могут отличаться друг от друга.
Язык ассе́мблера
(англ.assemblylanguage)—
машино-ориентированный
язык
низкого уровняс
командами, обычно соответствующими
командам
машины,
который может обеспечить дополнительные
возможности вроде макрокоманд.
Язык ассемблера
позволяет программисту использовать
различные системы счисления (например,
десятичную
или шестнадцатеричную)
для представления числовых констант
и даёт возможность помечать строки
программы метками с символическими
именами с тем, чтобы к ним можно было
обращаться (по именам, а не по адресам)
из других частей программы (например,
для передачи управления).
Перевод программы
на языке ассемблера в исполнимый
машинный
код
производится ассемблером—
программой-транслятором,
которая и дала языку
ассемблера его название.
Команды языка
ассемблера
один к одному соответствуют командам
процессора.
Достоинства:
Язык
ассемблера
позволяет писать самый
быстрый и компактный код, какой
вообще возможен для данного процессора.
Недостатки:
В силу
машинной
ориентации («низкого» уровня) языка
ассемблера
человеку сложнее читать и понимать
программу на нём по сравнению с языками
программирования высокого уровня.
Исторически,
первым поколением языков программирования
считают машинные коды, язык
ассемблера
рассматривают как второе
поколение языков программирования.
Недостатки языка ассемблера, сложность
разработки на нём больших программных
комплексов привели к появлению языков
третьего поколения—
языков
программирования высокого уровня
(таких как Фортран,
Лисп,
Кобол,
Паскаль,
Си
и др.). Именно языки программирования
высокого уровня и их наследники в
основном используются в настоящее
время в индустрии информационных
технологий.
Однако, языки
ассемблера сохраняют свою нишу,
обусловленную их уникальными
преимуществами в части эффективности
и возможности полного использования
специфических средств конкретной
платформы.
На языке
ассемблера пишут программы или их
фрагменты в тех случаях, когда критически
важны:
Наибольшее
распространение получили макровирусы
для Microsoft
Word, Excel и
Office
97.
Для
существования вирусов в конкретной
системе (редакторе) необходимо наличие
встроенного в систему макроязыка с
возможностями:
Описанным
условиям удовлетворяют редакторы MS
Word, MS Office 97
и AmiPro,
а также электронная таблица MS
Excel.
Эти системы содержат в себе макроязыки
(MS
Word — WordBasic, MS Excelи
MS Office 97 — VisualBasic),
при этом:
1. Макропрограммы
привязаны к конкретному файлу (AmiPro)
или находятся внутри файла (MS
Word/Excel/Office 97);
2.
Макроязык
позволяет копировать файлы (AmiPro)
или перемещать макропрограммы
в служебные файлы системы и редактируемые
файлы (MSWord/Excel/Office
97);
3.
При работе с файлом при определенных
условиях (открытие, закрытие и т. д.)
вызываются макропрограммы
(если таковые есть), которые определены
специальным образом (AmiPro)
или имеют
стандартные имена
(MS
Word/Excel/ Office 97).
В
четырех указанных выше программных
продукта хвирусы:
По
аналогии с
DOS
можно сказать, что большинство
макровирусов являются резидентными
вирусами:
они активны не только в момент открытия
или закрытия файла, но до тех пор, пока
активен сам редактор.
7.3.
Принципы работы макровирусов
Макровирусы,
поражающие файлы Word, Excel или Office 97, как
правило пользуются одним из трех
нижеперечисленных приемов:
Бывают
также полувирусы,
которые не используют перечисленные
приемы и размножаются, только если
пользователь самостоятельно запускает
их на выполнение.
Большинство
макровирусов
содержат
все свои функции в виде стандартных
макросовMS
Word/Excel/Office 97.
Существуют,
однако, вирусы,
использующие приемы скрытия своего
кода и хранящие свой код в виде
не-макросов.
Известны три подобных приема. Все они
используют возможность макросов
создавать, редактировать и исполнять
другие макросы. Как правило, подобные
вирусы имеют небольшой (иногда
полиморфный) макрос-загрузчик, который
вызывает встроенный редактор макросов,
создает новый макрос, заполняет его
основным кодом вируса, выполняет и
затем, как правило, уничтожает, чтобы
скрыть следы присутствия вируса.
Основной код таких вирусов присутствует
либо в теле самого вируса в виде
текстовых строк, либо хранится в
области переменных документа или в
области Auto-text.
Характерными
признаками присутствия макровирусов
являются:
Хакер
Мак-Намарой
был первым, кто создал макровирус,
который заражал документы Word.
Далее макровирусы стали писаться
регулярно. Основным источником вирусов
на сегодняшний день является Internet.
Наибольшее
число заражений вирусом происходит
при обмене письмами в форматах MS
Word/Office97:
пользователь зараженного макровирусом
редактора, сам того не подозревая,
рассылает «инфицированные»
письма своим адресатам, а они рассылают
новые письма и т. д.
Классификация компьютерных вирусов
До сих пор строгого определения компьютерного вируса не существует, поэтому в различных работах специалистов встречаются совершенно разные трактовки и определения этого термина.
Однако все едины в одном.
Программа-вирус способна к самораспространению. Это и есть главный критерий, по которому отличается программа-вирус от остальных программ.
Другое отличие заключается в том, что обычно понятие компьютерный вирус связывают с какой-нибудь опасностью, подстерегающей даже высоконадежные компьютерные системы, так как программы-вирусы специально предназначены для того, чтобы нарушать нормальную работу компьютерных систем
Мы будем исходить из следующего определения.
Компьютерный вирус – это набор команд, который производит и распространяет свои копии в компьютерных системах и/или компьютерных сетях и преднамеренно выполняет некоторые действия, нежелательные для законных пользователей системы.
Рассмотрим подробнее ключевые элементы определения, чтобы понять его суть.
Компьютерный вирус – набор команд. Тело вируса могут составлять команды какого-либо языка программирования или нескольких сразу. Самым распространенным случаем является язык ассемблера. Реже встречаются команды языка управления заданиями. Иногда используются микропрограммные инструкции, управляющие символы и комбинации в телекоммуникационных сообщениях, различного рода параметры. Последние “достижения” в этой области – макрокоманды.
Компьютерный вирус распространяется. Вирус может создавать свои копии и внедряться в выполнимые файлы программ, командные файлы, системные области компьютера. При этом копии сохраняют способность к дальнейшему распространению. Важно и то, что вирус может распространять набор команд, отличный от оригинала.
Компьютерный вирус выполняет нежелательные действия. Причем – это чаще всего мягко сказано. Попадая в компьютерную систему, вирус производит в ней изменения. В лучшем случае – это безобидные действия. Например, отображение на экране монитора разнообразных надписей или рисунков, проигрывание на встроенном динамике различных мелодий. В худшем случае – это разрушение файлов данных и программного обеспечения компьютера. Существуют вирусы, которые могут основательно вывести компьютер из строя и сделать неработоспособной системную плату компьютера. Существуют вирусы, делающие “полезную” работу. Например, один из вирусов, поражающий файлы программ, одновременно сжимает их, создавая на диске больше свободного места. Но он выполняет эти действия автоматически, не спрашивая разрешения на это владельца программ, т.е. и это “полезное” действие является нежелательным для законного пользователя.
Ссылки на дополнительные материалы (печатные и электронные ресурсы)
- Касперский Е. Компьютерные вирусы в
MS-DOS. – М.: Эдель, 1992. - Щербаков А. Ю. Введение в теорию и
практику компьютерной безопасности.
– М.: Издательство Молгачева С. В., 2001. - Фролов А. В., Фролов Г. В. Осторожно:
компьютерные вирусы. – М.: ДИАЛОГ-МИФИ,
1996. - Галатенко В. А. Основы информационной
безопасности. – М: Интернет-Университет
Информационных Технологий – ИНТУИТ.
РУ, 2003
Вопросы для самоконтроля
Способы противодействия компьютерным вирусам можно разделить на несколько групп: профилактика вирусного заражения и уменьшение предполагаемого ущерба от такого заражения; методика использования антивирусных программ, в том числе обезвреживание и удаление известного вируса; способы обнаружения и удаления неизвестного вируса.
С давних времен известно, что к любому яду рано или поздно можно найти противоядие. Таким противоядием в компьютерном мире стали программы, называемые антивирусными. Данные программы можно классифицировать по пяти основным группам: фильтры, детекторы, ревизоры, доктора и вакцинаторы.
но отнести универсальность по отношению как к известным,так и неизвестным вирусам, тогда как детекторы пишутся под конкретные,известные на данный момент программисту виды. Это особенно актуально сейчас, когда появилось множество вирусов-мутантов, не имеющих постоянного кода. Однако, программы-фильтры не могут отслеживать вирусы, обращающиеся непосредственно к BIOS, а также BOOT-вирусы, активизирующиеся ещс до запуска антивируса, в начальной стадии загрузки DOS, К недостаткам также можно отнести частую выдачу запросов на осуществление какой-либо операции: ответы на вопросы отнимают у пользователя много времени и действуют ему на нервы. При установке некоторых антивирусов-фильтров могут возникать конфликты с другими резидентными программами, использующими те же прерывания, которые просто перестают работать.
Наибольшее распространение в нашей стране получили программы-детекторы,а вернее программы, объединяющие в себе детектор и доктор. Наиболее известные представители этого класса – Aidstest, Doctor Web,MicroSoft AntiVirus. Антивирусы-детекторы расчитаны на конкретные вирусы и основаны на сравнении последовательности кодов содержащихся в теле вируса с кодами проверяемых программ. Такие программы нужно регулярно обновлять, так как они быстро устаревают и не могут обнаруживать новые виды вирусов.
Ревизоры – программы, которые анализируют текущее состояние файлов и системных областей диска и сравнивают его с информацией, сохраненной ранее в одном из файлов данных ревизора. При этом проверяется состояние BOOT-сектора, таблицы FAT, а также длина файлов, их время создания, атрибуты, контрольная сумма. Анализируя сообщения программы-ревизора, пользователь может решить, чем вызваны изменения: вирусом или нет. При выдаче такого рода сообщений не следует предаваться панике, так как причиной изменений, например, длины программы может быть вовсе и не вирус.
К последней группе относятся самые неэффективные антивирусы вакцинаторы. Они записывают в вакцинируемую программу признаки конкретного вируса так, что вирус считает ее уже зараженной.
Характеристика «вирусоподобных» программ
К «вредным
программам», помимо вирусов, относятся:
«Троянские»
программы (логические бомбы).
К «троянским»
программам относятся программы, наносящие
какие-либо разрушительные действия в
зависимости
от каких-либо условий. Например,
уничтожение информации
на дисках при каждом запуске или по
определенному
графику и т. д. Большинство известных
«троянских»
программ являются программами, которые
маскируются под какие-либо полезные
программы, новые
версии популярных утилит или дополнения
к ним. Очень
часто они рассылаются по электронным
конференциям. По сравнению с вирусами
«троянские» программы не получают
широкого распространения по достаточно
простым причинам – они либо уничтожают
себя вместе с остальными данными на
диске, либо демаскируют свое присутствие
и уничтожаются пострадавшим
пользователем. К «троянским» программам
также относятся так
называемые «дропперы» вирусов –
зараженные
файлы, код которых подправлен таким
образом, что известные
версии антивирусов не определяют
присутствие вируса в файле. Например,
файл шифруется или
упаковывается неизвестным архиватором,
что
не позволяет антивирусу «увидеть»
заражение.
Отметим
еще один тип программ (программы – «злые
шутки»),
которые используются для устрашения
пользователя,
свидетельствуя о заражении вирусом или
о каких-либо
предстоящих действиях с этим связанных,
то есть
сообщают о несуществующих опасностях,
вынуждая
пользователя к активным действиям.
Например, к «злым
шуткам» относятся программы, которые
«пугают»
пользователя сообщениями о форматировании
диска
(хотя никакого форматирования на самом
деле не происходит),
детектируют вирусы в незараженных
файлах,
выводят странные вирусоподобные
сообщения и т.
д. К категории «злых шуток» можно отнести
также заведомо
ложные сообщения о новых «супер-вирусах».
Такие сообщения периодически появляются
в сети Интернет
и обычно вызывают панику среди
пользователей.
Утилиты
скрытого администрирования.
Утилиты скрытого
администрирования являются разновидностью
«логических
бомб» («троянских программ»), которые
используются
злоумышленниками для удаленного
администрирования
компьютеров в сети. По своей функциональности
они во многом напоминают различные
системы администрирования, разрабатываемые
и распространяемые
различными фирмами-производителями
программных
продуктов. Единственная особенность
этих программ
заставляет классифицировать их как
вредные «троянские»
программы: отсутствие предупреждения
об инсталляции и
запуске. При запуске такая программа
устанавливает
себя в систему и затем следит за ней,
при этом
пользователю не выдается никаких
сообщений о действиях
программы в системе. Чаще всего ссылка
на такую
программу отсутствует в списке активных
приложений.
В результате пользователь может и не
знать о ее присутствии в системе, в то
время как его компьютер открыт
для удаленного управления.
«Intended»-вирусы.
К
таким вирусам относятся программы,
которые, на первый взгляд, являются
стопроцентными вирусами, но не способны
размножаться по причине ошибок. Например,
вирус, который при заражении
не помещает в начало файла команду
передачи управления
на код вируса, либо записывает в нее
неверный адрес своего кода, либо
неправильно устанавливает
адрес перехватываемого прерывания (в
большинстве приводит
к «зависанию» компьютера) и
т.
д. К категории
«intended»
также относятся вирусы, которые по
приведенным
выше причинам размножаются только один
раз – из «авторской» копии. Заразив
какой-либо файл, они теряют способность
к дальнейшему размножению.
Появляются «intended»-вирусы
чаще всего из-за
неумелой перекомпиляции какого-либо
уже существующего
вируса, либо по причине недостаточного
знания языка
программирования, либо по причине
незнания технических
тонкостей операционной системы.
Конструкторы
вирусов.
К
данному виду «вредных» программ
относятся утилиты, предназначенные для
изготовления
новых компьютерных вирусов. Известны
конструкторы
вирусов для DOS,
Windows
и макровирусов.
Они позволяют генерировать исходные
тексты вирусов, объектные модули, и/или
непосредственно зараженные
файлы. Некоторые конструкторы снабжены
стандартным оконным
интерфейсом, где при помощи системы
меню можно выбрать тип вируса, поражаемые
объекты (СОМ и/или ЕХЕ), наличие или
отсутствие самошифровки,
противодействие отладчику, внутренние
текстовые
строки, выбрать эффекты, сопровождающие
работу
вируса, и т. п.
Полиморфные
генераторы.
Полиморфик-генераторы, как
и конструкторы вирусов, не являются
вирусами в прямом
смысле этого слова, поскольку в их
алгоритм не закладываются
функции размножения, т. е. открытия,
закрытия
и записи в файлы, чтения и записи секторов
и т.
д. Главной функцией подобного рода
программ является
шифрование тела вируса и генерация
соответствующего
расшифровщика. Обычно полиморфные
генераторы распространяются в виде
файла-архива. Основным файлом в архиве
любого генератора является объектный
модуль,
содержащий этот генератор.
Вирусы можно разделить на классы по следующим признакам:
по среде обитания вируса,
по способу заражения,
по деструктивным возможностям,
по особенностям алгоритма вируса.
По седе обитания виpусы подpазделяются на файловые, загрузочные и файлово-загpузочные.
ФАЙЛОВЫМ называют вирус, который внедяется в исполняемые файлы.
Это означает, что код программы-вируса находится в каком-то исполняемом файле.
Файл, в теле которого присутствует код программы-вируса, называется зараженным (инфицированным) файлом.
ЗАГРУЗОЧЫМ (бутовым) называют вирус, который внедpяется в загpузочный сектоp диска (Boot-сектоp), либо в сектоp, содеpжащий системный загpузчик винчестеpа (Master Boot Record).
В данном случае код программы-вируса (или его часть) размещен в загрузочном секторе или в главной загрузочной записи.
Диск, загрузочный сектор которого поражен вирусом, называется зараженным или инфицированным диском.
ФАЙЛОВО-ЗАГРУЗОЧHЫМ называют виpус, который внедряется как в файлы, так и загpузочные сектоpы дисков.
Это уже более сложные вирусы, потому что они реализовывают и алгоpитм заражения файловым вирусом, и алгоритм заражения загрузочным вирусом.
По способам заpажения различают pезидентные и неpезидентные вирусы.
РЕЗИДЕHТHЫЙ виpус размещает себя или некоторую свою часть в опеpативной памяти компьютера, получая возможность пеpехватывать обpащения опеpационной системы к дискам и файлам.
При обращении операционной системы к этим объектам, вирус внедряется в них. Резидентный виpус находится в опеpативной памяти и является активным (т.е. способным заражать все новые и новые объекты) вплоть до выключения или перезагрузки компьютеpа.
Резидентными являются все загрузочные вирусы.
HЕРЕЗИДЕHТHЫЙ виpус не заpажает оперативную память компьютеpа, то есть не размещает свой код в оперативной памяти. Он является активным только во время работы зараженной программы.
По деструктивным возможностям вирусы можно разделить на неопасные и опасные.
НЕОПАСНЫЕ виpусы – это те, которые либо совсем никак не влияют на pаботу компьютеpа, кpоме того, что все-таки уменьшают свободную память на диске в pезультате своего pаспpостpанения, либо ограничиваются видео и аудиоэффектами.
ОПАСHЫМИ виpусами являются все остальные.
Это вирусы, котоpые наносят любой вред компьютеру: пpиводят к сеpьезным сбоям в pаботе, уничтожают или изменяют данные, уничтожают информацию в системных областях компьютера и т.п.
Необходимо сразу же заметить, что даже неопасные вирусы в результате ошибок могут нанести вред системе. Ведь по закону Мэрфи «каждая программа имеет хотя бы одну ошибку», следовательно, и каждый вирус имеет таковые. Особенно часто это случается, когда автор вируса сознательно или несознательно пишет вирус под какую-нибудь определенную систему или рассматривает ограничения на объекты заражения. Когда такой вирус попадает в новую среду, его внедрение может вызвать непредсказуемые и часто катастрофические последствия.
По особенностям алгоритма можно выделить следующие группы вирусов:
вирусы в структуре файловой системы;
Обо всех этих вирусах и их алгоритмах мы подробно поговорим позже.
Семейства вирусов – это группы из нескольких вирусов. Иногда эти группы насчитывают более десятка представителей.
Вирусам одного семейства или одной группы присуща одна или несколько отличительных черт, которую называют «почерком». Либо в этих вирусах встречается один и тот же алгоритм, либо одинаковые приемы программирования. Часто все вирусы одного семейства принадлежат одному автору, который либо постепенно совершенствует свою программу, либо, используя те же алгоритмы и приемы, пишет новые.
Увеличивается количество представителей в некоторых семействах вирусов и благодаря «студенческим/школьным» модификациям или плагиату. Иногда достаточно изменить деструктивную функцию вируса (тот нежелательный эффект, который производит программа) – и вот уже совсем новый вирус.
Такие вот вирусы и объединяют в одно семейство.
Иногда семейство насчитывает более 30 вирусов.
Размер программы измеряется количеством байт, которые она занимает в памяти. По отношению к программам-вирусам применяется термин длина вируса. Она тоже измеряется в байтах, но это не всегда размер всей программы-вируса. Чуть позже мы подробнее обсудим определение длины вирусов.
Длина вируса является важным его свойством, ее необходимо знать при лечении файлов и загрузочных секторов.
Как известно, программирование – это искусство. Авторы вирусов доказывают, что написание программ-вирусов тоже искусство. Они чуть ли не соревнуются друг с другом в написании самого компактного кода, в реализации самого изощренного алгоритма.
На сколько разнообразна сложность вирусов, на столько разнообразна и их длина (прямой зависимости нет). Длина вирусов колеблется от очень большой до очень маленькой. Например, существуют вирусы с длиной меньше 100 байт и наряду с ними есть вирусы, имеющие значительный размер – более 30 Кб. Но чаще всего длина вируса находится в диапазоне от 500 до 2000 байт.
Особое впечатление, конечно, производят компактные вирусы. Существуют даже своего рода шедевры. Это вирусы, имеющие длину меньше 100 байт.
Во многих классификациях длина вируса включается в его название.