На главную | Содержание | Назад | Вперёд
Наши друзья

 

 

РАЗЛИЧНЫЕ типы ВИРУСОВ

Как уже говорилось, наиболее распространенными являются троянские кони, полиморфные вирусы и неполиморфные шифрующиеся вирусы, стелс-вирусы, медленные вирусы, ретро-вирусы, составные вирусы, вооруженные вирусы,
вирусы-фаги и макровирусы. Каждый из них производит некоторые специфи­ческие действия.
ТРОЯНСКИЕ кони
Троянскими конями называются вирусы, прячущиеся в файлах данных (напри­мер, сжатых файлах или документах). Чтобы избежать обнаружения, некоторые
разновидности троянских коней прячутся и в исполняемых файлах. Таким обра­зом, эта программа может располагаться и в программных файлах, и в файлах библиотек, пришедших в сжатом виде. Однако зачастую троянские кони содер­жат только подпрограммы вируса. Возможно, самое лучшее определение троян­ских коней дал Дэн Эдварде — бывший хакер, занимающийся теперь разработ­кой антивирусного программного обеспечения для NSA (National Security Administration). По словам Дэна, троянским конем называется «небезопасная программа, скрывающаяся под видом безобидного приложения, вроде архива­тора, игры или (знаменитый случай 1990 года) программы обнаружения и унич­тожения вирусов». Большинство новых антивирусных программ обнаруживает практически всех троянских коней.
Одной из наиболее известных «троянских лошадок» стала программа Как и все другие средства для взлома паролей, доступные в Internet, эта про­грамма тестировала относительную мощность паролей, расположенных в вы­бранном файле. После своего запуска она выдавала список взломанных паролей и предлагала пользователю удалить этот файл. Первая версия программы не только взламывала пароли, но также и передавала их автору троянского коня. Crackerjack оказался достаточно полезным средством, в чем вы можете убедиться сами. Для этого достаточно загрузить программу из Internet.
ПОЛИМОРФНЫЕ ВИРУСЫ
Полиморфные вирусы — это вирусы, которые зашифровывают свое тело и благо­даря этому могут избежать обнаружения путем проверки сигнатуры вируса. Прежде чем приступить к работе, такой вирус расшифровывает себя с помощью специаль­ной процедуры расшифровки. Как уже говорилось в главе 4, процедура расшифров­ки превращает зашифрованную информацию в обычную. Чтобы расшифровать
тело вируса, процедура расшифровки захватывает управление машиной. После расшифровки управление компьютером передается расшифрованному вирусу.
Первые шифрующиеся вирусы были неполиморфными. Другими словами, про­цедура расшифровки вируса не изменялась от копии к копии. Поэтому антиви­русные программы могли обнаружить вирус по сигнатуре, присущей процедуре расшифровки. Но вскоре ситуация изменилась коренным образом.
Полиморфные вирусы обнаружить очень трудно. Дело в том, что они генериру­ют абсолютно новые процедуры расшифровки при каждом новом заражении. Благодаря этому сигнатура вируса изменяется от файла к файлу. Для изменения процедуры шифрования используется достаточно простой генератор машинного кода, называющийся генератором мутаций. Он использует генератор случайных чисел и достаточно простой алгоритм изменения сигнатуры вируса. С его помо­щью программист может превратить любой вирус в полиморфный. Для этого он должен изменить текст вируса так, чтобы перед каждым созданием своей копии он вызывал генератор мутаций.
Несмотря на то что полиморфные вирусы нельзя обнаружить с помощью обыч­ных методов проверки (вроде сравнения строк кода), они все же детектируются
специальными антивирусными программами. Итак, полиморфные вирусы можно обнаружить. Однако этот процесс занимает огромное количество времени, а на создание антивирусной программы уходит гораздо больше сил. Наиболее све­жие обновления антивирусного программного обеспечения производят поиск процедур шифрования,, с помощью которой обнаруживают полиморфные виру­сы. показано, как полиморфный вирус изменяет свою сигнату­ру при создании очередной копии.
Полиморфный вирус изменяет свою сигнатуру от файла к файлу.
Стелс- вирусы
Сшелс-вирусь, — это вирусы, которые прячут изменения, созданные в заражен­ном файле. Для этого они отслеживают системные функции чтения файлов или секторов на носителях информации. Если происходит вызов такой функции, то вирус старается изменить полученные ею результаты: вместо настоящей инфор­мации вирус передает функции данные незараженного файла. Таким образом,
антивирусная программа не может обнаружить никаких изменений в файле. Но,
для того чтобы перехватывать системные вызовы, вирус должен находиться в памяти машины. Все достаточно хорошие антивирусные программы могут обна­ружить подобные вирусы во время загрузки зараженной программы.
Хорошим примером стелс-вируса является один из первых задокументированных вирусов DOS — Brain. Этот загрузочный вирус просматривал все дисковые сис­темные операции ввода/вывода и перенаправлял вызов всякий раз, когда систе­ма пыталась считать зараженный загрузочный сектор. При этом система считы­вала информацию не с загрузочного сектора, а с того места, где вирус сохранил копию этого сектора. Стелс-вирусами также являются вирусы Number, Beast и Frodo, Говоря языком программистов, они перехватывают прерывание 21Н — основное прерывание DOS. Поэтому всякая команда пользователя, способная обнаружить присутствие вируса, перенаправляется вирусом в определенное мес­то в памяти. Благодаря этому пользователь не может «заметить» вирус.
Как правило, стелс-вирусы либо обладают невидимым размером, либо они невиди­мы для чтения. Вирусы с невидимым размером принадлежат к подвиду вирусов,
заражающих файлы. Такие вирусы помешают свое тело внутрь файла, вызывая тем самым увеличение его размера. Однако вирус изменяет информацию о раз­мере файла так, чтобы пользователь не мог обнаружить его присутствия. Други­ми словами, система указывает на то, что длина зараженного файла равняется длине обычного (незараженного) файла. Вирусы, невидимые для чтения (вроде Stoned.Monkey), перехватывают запросы на чтение зараженной загрузочной за­писи или файла и предоставляют в ответ первоначальную, не измененную виру­сом информацию. И снова пользователь не может обнаружить присутствие вируса.
достаточно легко обнаружить. Большинство стандартных антиви­русных программ «вылавливают» стелс-вирусы. Для этого достаточно запустить антивирусную программу до того, как вирус будет размещен в памяти машины. Надо запустить компьютер с чистой загрузочной дискеты, а затем выполнить антивирусную программу. Как уже говорилось, стелс-вирусы могут замаскиро­ваться только в том случае, если они уже размещены в памяти. Если же это не так, то антивирусная программа легко обнаружит наличие таких вирусов на же­стком диске. показан процесс заражения стедс-вирусом.
МЕДЛЕННЫЕ ВИРУСЫ
Медленные вирусы очень трудно обнаружить, так как они заражают только те
файлы, которые изменяются или копируются операционной системой. Други­ми словами, медленный вирус заражает любой исполняемый файл, причем делает это в тот момент, когда пользователь выполняет некоторые операции с этим файлом. Например, медленный вирус может производить заражение за­грузочной записи дискеты при выполнении команд системы, изменяющих эту запись (например, FORMAT или SYS). Медленный вирус может заразить ко­пию файла, не заразив при этом файл-источник. Одним из наиболее известных медленных вирусов является который заражает только
и только во время их записи.
Обнаружение медленных вирусов — это достаточно сложный процесс. Храни­тель целостности должен обнаружить новый файл и сообщить пользователю о том, что у этого файла нет значения контрольной суммы. Хранитель целостно­сти — это антивирусная программа, наблюдающая за содержанием жестких дис­ков, а также за размером и контрольной суммой каждого из расположенных на них файлов. Если хранитель обнаружит изменения в содержании или размере,
то он немедленно сообщит об этом пользователю. Однако сообщение будет выдано
и в том случае, если пользователь сам создаст новый файл. Поэтому пользователь, скорее, укажет хранителю целостности вычислить новую контрольную сумму
для нового (инфицированного) файла.
Наиболее удачным средством против медленных вирусов являются оболочки це­лостности. Оболочки целостности — это резидентные хранители целостности. Они постоянно находятся в памяти компьютера и наблюдают за созданием каж­дого нового файла, и у вируса не остается практически никаких шансов. Еще одним способом проверки целостности является создание ловушек. Здесь специ­альная антивирусная программа создает несколько СОМ- и ЕХЕ-файлов опреде­ленного содержания. Затем программа проверяет содержимое этих файлов. Если медленный вирус заразит их, то пользователь сразу же узнает об этом.
Например, медленный вирус может наблюдать за программой копирования фай­лов. Если DOS выполняет запрос на то вирус поместит свое тело в новую копию файла. показано, как медленный вирус заража­ет копии файлов.
(A) Медленный вирус остается в памяти.
(B) DOS записывает зараженный файл на диск.
(C) Диск содержит зараженную программу, которая будет запускать вирус при каждом своем запуске.
Медленный вирус заражает только копии файлов.
ретро-вирусы
Ретро-вирус — это вирус, который пытается обойти или помешать действиям антивирусных программ. Другими словами, эти вирусы атакуют антивирусное программное обеспечение. Компьютерные профессионалы называют ретро-виру­сы анти-антивирусами. (Не спутайте анти-антивирусы с анти-вирус-вирусами -вирусами, созданными для уничтожения других вирусов.)
Создание ретро-вируса является относительно несложной задачей. В конце кон­цов, создатели вирусов обладают доступом ко всем антивирусным программам.
Приобретая такую программу, они изучают ее работу, находят бреши в обороне
и после этого создают вирус на основе обнаруженных просчетов. Большинство ретро-вирусов занимается поисками и удалением файлов с данными о сигнату­рах вирусов. Таким образом, антивирусная программа, использовавшая этот
файл, не может больше нормально функционировать. Более сложные ретро-
вирусы занимаются поиском и удалением баз данных, содержащих информацию о целостности файлов. Удаление подобной базы производит на хранителя цело­стности такой же эффект, как уничтожение файлов с сигнатурами вирусов на антивирусную программу.
Многие ретро-вирусы обнаруживают активизацию антивирусных программ, а затем прячутся от программы либо останавливают ее выполнение. Кроме того, они могут запустить процедуру разрушения до того, как антивирусная програм­ма обнаружит их присутствие. Некоторые ретро-вирусы изменяют оболочку вы­числений антивируса и таким образом влияют на выполнение антивирусных про­грамм. Кроме того, существуют ретро-вирусы, использующие недостатки анти­вирусного программного обеспечения, чтобы замедлить его работу или свести на
нет эффективность программы. СОСТАВНЫЕ ВИРУСЫ
Составные вирусы заражают как исполняемые файлы, так и загрузочные сектора дисков. Кроме они могут заражать загрузочные сектора дискет. Такое
название они получили потому, что заражают компьютер различными путями. Другими словами, они не ограничиваются одним типом файлов или определен­ным местом на диске. Если запустить инфицированную программу, вирус зара­зит загрузочную запись жесткого диска. При следующем включении машины вирус активизируется и будет заражать все запущенные программы. Одним из наиболее известных составных вирусов является One-Half, который обладает при­знаками стелс-вируса и полиморфного вируса. показано, как производится заражение составным вирусом.
ВООРУЖЕННЫЕ ВИРУСЫ
Вооруженные вирусы защищают себя с помощью специального кода, благодаря которому сильно усложняется отслеживание и дизассемблирование вируса. Во­оруженные вирусы могут воспользоваться для защиты «пустышкой». Это — код, позволяющий увести разработчика антивирусных программ от настоящего кода
вируса. Кроме того, вирус может включать в себя специальный фрагмент, ука­зывающий на то, что вирус расположен в одном месте, хотя на самом деле его там не будет. Одним из наиболее известных вооруженных вирусов является Whale.
ВИРУСЫ-КОМПАНЬОНЫ
Свое название эти вирусы получили потому, что параллельно с заражаемым файлом они создают файл с таким же именем, но с другим расширением. Напри­мер, вирус-компаньон может сохранить свое тело в файле winword.com. Благодаря этому операционная система перед каждым запуском файла winword.exe будет
запускать файл winword.com, который будет располагаться в памяти компьютера. Обычно вирусы-компаньоны генерируются вирусами-фагами.
ВИРУСЫ-ФАГИ
Последним классическим типом вирусов являются вирусы-фаги. Вирус-фаг -это программа, которая изменяет другие программы или базы данных. Компью­терные профессионалы называют эти вирусы фагами потому, что по своему дей­ствию они напоминают живые микроорганизмы. В природе вирусы-фаги пред­ставляют собой особенно вредные микроорганизмы, которые замещают содер­жимое клетки своим собственным. Обычно фаги замещают текст программы своим собственным кодом. Чаще всего они являются генераторами вирусов-компаньонов. Фаги — это наиболее опасный вид вирусов. Дело в том, что они не только размножаются и заражают другие программы, но и стремятся уничто­жить все зараженные программы.
И СНОВА ЧЕРВИ
В первой главе этой книги я уже рассказывал о знаменитом черве Internet, появившемся в конце 80-х годов. Как уже говорилось, червь Internet (известный также как червь Морриса) был самым первым вирусом, поразившим Internet. Этот вирус делал невозможной работу компьютера, создавая огромное количе­ство своих копий в памяти компьютера. Так как червь старается остановить зара­женный компьютер, создатель вируса должен наделить его способностями пере­мещаться с помощью сети от одной машины к другой. Я уже рассказывал о том, что черви копируют себя на другие компьютеры с помощью протоколов и систем, описанных во второй главе. Удаленное воспроизведение необходимо, так как после остановки машины пользователь постарается вычистить все имею­щиеся на жестком диске вирусы. Для своего распространения вирусам-червям не требуется изменять программы хоста.
Для нормальной работы червям необходимы операционные системы, обеспечи­вающие возможность удаленного выполнения и позволяющие приходящим про­граммам выполняться на компьютере. В 1988 году такими возможностями обла­дала только одна операционная система — Unix. До недавнего времени многие персональные компьютеры не могли быть заражены червем — этого не позволяют сделать ни DOS, ни Windows 95. Однако Windows NT уже обладает возможно­стями удаленного выполнения и поэтому может поддерживать работу вирусовчервей.
Одним из самых распространенных вирусов в является Свое
название он получил от имени файла — winstart.bat, — в котором обычно и располагается тело вируса. Этот червь, как и многие остальные, копирует себя в памяти машины до тех пор, пока не будет выведена из строя операционная система. После этого компьютер автоматически зависает. Во время своего вы­полнения вирус параллельно занимается поиском следующей жертвы.
По иронии судьбы червем называется не только определенный тип вирусов, но и очень полезное антивирусное инструментальное средство. Недостаток боль­шинства стандартных средств аудита и хранителей целостности заключается в том, что они также могут стать жертвами вирусов. Однако можно хранить инфор­мацию безопасности и программы на изолированном и неизменяемом носителе. Наиболее подходят для этих целей WORM-диски. («Write-опсе, read-тапу» -одна запись, многоразовое чтение; английское слово worm переводится как червь. - Прим. перев.). Привод WORM-диска обычно представляет собой приспособление оптического хранения данных, работающее с несколькими WORM-дисками.
ВИРУСЫ И СЕТИ
Файловые вирусы и макровирусы — вот два наиболее опасных типа вирусов. Именно с ними приходится иметь дело администраторам сетевых серверов и од­норанговых сетей, соединенных с Internet. Загрузочные вирусы обычно не рас­пространяются по Internet, так как соединенный с Internet компьютер не может
произвести на другом компьютере дисковые операции низкого уровня. Другими словами, сервер Internet обычно не может записывать файлы на другой компьютер. Такую операцию в состоянии произвести только компьютер-получатель. К числу файловых вирусов и макровирусов относятся многие вирусы, описанные ранее.
Файл о вы, ВИРУСЫ
Файловым вирусом может быть троянский конь, вооруженный вирус, стелс-ви-рус и некоторые другие. Файловые вирусы опасны для данных, хранящихся на сервере, одноранговых сетей и, в какой-то степени, Internet. Далее приводятся три пути заражения сетевого сервера:
• Копирование (пользователем или администратором) зараженных файлов прямо на сервер. После этого вирус, расположившийся в файле, начнет заражать все остальные файлы.
• Выполнение файлового вируса на рабочей станции может заразить сеть. После своего запуска вирус сможет заразить любое приложение, храни­мое на сервере. Если же вирус сумеет проникнуть в какой-либо файл, расположенный на сервере, то он сможет заразить и все машины в сети.
• Выполнение резидентного вируса на рабочей станции может вызвать зара­жение всей сети. После своего запуска резидентный вирус может полу­чить информацию о передаваемых данных и скопировать себя на сервер, не обладая при этом прямым доступом к расположенной на сервере ин­формации.
Абсолютно не важно, как вирус попадет в сеть. Он может быть размещен на
дискете, получен с сообщением электронной почты или загружен из Internet
вместе с исполняемым файлом. Как только вирус попадает на компьютер, об­ладающий доступом к другим сетевым компьютерам, то он способен заразить все остальные машины. Заразив всего лишь одну машину в сети, вирус начнет свое «шествие» по всей сети и в конце концов попадет на сервер. На рисун­ке 14.8 показаны все три пути заражения сети.
зараженная дискета
зараженное сообщение электронной почты
кому: хосту
сервер
зараженный файл с другого хоста или сервера
Три пути заражения сети.
После заражения файлового сервера любой пользователь, запустивший заражен­ную программу, может заразить файлы на своем жестком диске или другие файлы, размещенные на том же сервере. Кроме того, администратор, зарегистриро­вавшийся в сети с правами суперпользователя, может обойти запреты на доступ к файлам и каталогам и заразить еще большее количество файлов. Серверы —это очень удобное для вирусов место. Дело в том, что при загрузке сервер разме­щает в памяти достаточно большое количество сетевых приложений.
Зараженный сервер становится носителем исполняемых файловых вирусов. Ви­русы не размножаются на сервере и не портят его программ. Они переносятся лишь в том случае, если пользователь загрузит зараженную программу на свою рабочую станцию. До сих пор не зарегистрировано ни одного вируса, способно­го внедриться в программное обеспечение сервера и заражать файлы во время чтения или записи на сервер. Однако технологии создания вирусов не стоят на месте, и, возможно, скоро появится именно такой тип вирусов.
Одноранговые сети еще более подвержены атакам файловых вирусов. Дело в том, что средства безопасности одноранговой сети очень слабы (если не сказать
больше). Кроме того, архитектура такой сети (каждая машина одновременно является и сервером, и рабочей станцией) делает машины еще более уязвимы­ми. показано, как вирус распространяется в одноранговой сети.
Распространение вируса в одноранговой сети.
Отметим также, что Internet не является «инкубатором» для вирусов. «Сеть се­тей» также является носителем «компьютерных инфекций». Файловые вирусы не могут размножаться в Internet и заражать удаленные машины. Чтобы про­изошло заражение, компьютер должен загрузить зараженный файл из сети и запустить его.

 

На главную | Содержание | Назад | Вперёд
 
Яндекс.Метрика