Контрольная работа по информационным технологиям
Оренбургский государственный аграрный университет
Оренбург-2004
1. Компьютерные вирусы и борьба с ними
Компьютерный вирус - это специально написанная небольшая по размерам программа, которая может "приписывать" себя к другим программам (т.е. "заражать" их), а также выполнять нежелательные различные действия на компьютере. Программа, внутри которой находится вирус, называется "зараженной". Когда такая программа начинает работу, то сначала управление получает вирус. Вирус находит и "заражает" другие программы, а также выполняет какие-нибудь вредные действия (например, портит файлы или таблицу размещения файлов на диске, "засоряет" оперативную память и т.д.). Для маскировки вируса действия по заражению других программ и нанесению вреда могут выполняться не всегда, а, скажем, при выполнении определенных условий. После того как вирус выполнит нужные ему действия, он передает управление той программе, в которой он находится, и она работает также как обычно. Тем самым внешне работа зараженной программы выглядит так же, как и незараженной.
Многие разновидности вирусов устроены так, что при запуске зараженной программы вирус остается резидентно, т.е. до перезагрузки DOS, в памяти компьютера и время от времени заражает программы и выполняет вредные действия на компьютере.
Компьютерный вирус может испортить, т.е. изменить ненадлежащим образом, любой файл на имеющих в компьютере дисках. Но некоторые виды файлов вирус может "заразить". Это означает, что вирус может "внедриться" в эти файлы, т.е. изменить их так, что они будут содержать вирус, который при некоторых обстоятельствах может начать свою работу.
Следует заметить, что тексты программ и документов, информационные файлы без данных, таблицы табличных процессоров и другие аналогичные файлы не могут быть заражены вирусом, он может их только испортить.
Проявление наличия вируса в работе с ПЭВМ
Все действия вируса могут выполняться достаточно быстро и без выдачи каких-либо сообщений, поэтому пользователю очень трудно заметить, что в компьютере происходит что-то необычное.
Пока на компьютере заражено относительно мало программ, наличие вируса может быть практически незаметно. Однако по прошествии некоторого времени на компьютере начинает твориться что-то странное, например:
* некоторые программы перестают работать или начинают работать неправильно;
* на экран выводятся посторонние сообщения, символы и т.д.;
* работа на компьютере существенно замедляется;
* некоторые файлы оказываются испорченными и т.д.
К этому моменту, как правило, уже достаточно много (или даже большинство) программ являются зараженными вирусом, а некоторые файлы и диски - испорченными. Более того, зараженные программы с одного компьютера могли быть перенесены с помощью дискет или по локальной сети на другие компьютеры.
Некоторые виды вирусов ведут себя еще более коварно. Они вначале незаметно заражают большое число программ или дисков, а потом причиняют очень серьезные повреждения, например, формируют весь жесткий диск на компьютере. А бывают вирусы, которые стараются вести себя как можно более незаметно, но понемногу и постепенно портят данные на жестком диске компьютера.
Таким образом, если не предпринимать мер по защите от вируса, то последствия заражения компьютера могут быть очень серьезными.
1.1 Разновидности компьютерных вирусов
Каждая конкретная разновидность вируса может заражать только один или два типа файлов. Чаще всего встречаются вирусы, заражающие исполнимые файлы. Некоторые вирусы заражают и файлы, и загрузочные области дисков. Вирусы, заражающие драйверы устройств, встречаются крайне редко, обычно такие вирусы умеют заражать и исполнимые файлы.
В последнее время получили распространение вирусы нового типа - вирусы, имеющие файловую систему на диске. Эти вирусы обычно называются DIR. Такие вирусы прячут свое тело в некоторый участок диска (обычно - в последний кластер диска) и помечают его в таблице размещения файлов (FAT) как конец файла.
"НЕВИДИМЫЕ" вирусы. Многие резидентные вирусы (и файловые, и загрузочные) предотвращают свое обнаружение тем, что перехватывают обращения DOS (и тем самым прикладных программ) к зараженным файлам и областям диска и выдают их в исходном (незараженном) виде. Разумеется, этот эффект наблюдается только на зараженном компьютере - на "чистом" компьютере изменения в файлах и загрузочных областях диска можно легко обнаружить.
САМОМОДИФИЦИРУЮЩИЕСЯ вирусы. Другой способ, применяемый вирусами для того, чтобы укрыться от обнаружения, - модификация своего тела. Многие вирусы хранят большую часть своего тела в закодированном виде, чтобы с помощью дизассемблеров нельзя было разобраться в механизме их работы. Самомодифицирующиеся вирусы используют этот прием и часто меняют параметры этой кодировки, а кроме того, изменяют и свою стартовую часть, которая служит для раскодировки остальных команд вируса. Таким образом, в теле подобного вируса не имеется ни одной постоянной цепочки байтов, по которой можно было бы идентифицировать вирус. Это, естественно, затрудняет нахождение таких вирусов программами-детекторами.
"ТРОЯНСКИЙ КОНЬ"
Способ "троянский конь" состоит в тайном введении в чужую программу таких команд, которые позволяют осуществить новые, не планировавшиеся владельцем программы функции, но одновременно сохранять и прежнюю работоспособность. С помощью "троянского коня" преступники, например, отчисляют на свой счет определенную сумму с каждой операции.
Компьютерные программные тексты обычно чрезвычайно сложны. Они состоят из сотен тысяч, а иногда и миллионов команд. Поэтому "троянский конь" из нескольких десятков команд вряд ли может быть обнаружен, если, конечно, нет подозрений относительно этого. Но и в послед -- нем случае экспертам-программистам потребуется много дней и недель, чтобы найти его.
Интересен случай использования "троянского коня" одним американским программистом. Он вставил в программу компьютера фирмы, где работал, команды, не отчисляющие деньги, а не выводящие на печать для отчета определенные поступления. Эти суммы, особым образом маркированные, "существовали" только в системе. Вульгарным образом, украв бланки, он заполнял их с указанием своей секретной маркировки и получал эти деньги, а соответствующие операции по-прежнему не выводились на печать и не могли подвергнуться ревизии.
Есть еще одна разновидность "троянского коня". Ее особенность состоит в том, что в безобидно выглядящий кусок программы вставляются не команды, собственно выполняющие "грязную" работу, а команды, формирующие эти команды и после выполнения уничтожающие их. В это случае, программисту, пытающемуся найти "троянского коня", необходимо искать не его самого, а команды, его формирующие. Развивая эту идею, можно представить себе команды, которые создают команды и т. д. (сколь угодно большое число раз), которые создают "троянского коня".
В США получила распространение форма компьютерного вандализма, при которой "троянский конь" разрушает через какой-то промежуток времени все программы, хранящиеся в памяти машины. Во многих поступивших в продажу компьютерах оказалась "временная бомба", которая "взрывается" в самый неожиданный момент, разрушая всю библиотеку данных.
К сожалению, очень многие заказчики прекрасно знают, что после конфликтов с предприятием-изготовителем их программное обеспечение, которое до сих пор прекрасно работало, вдруг начинало вести себя самым непредсказуемым образом и наконец полностью отказывало. Нетрудно догадаться, что и копии на магнитных лентах или дисках, предусмотрительно сделанные, положения нисколько не спасали.
Оставался один путь - идти с повинной к разработчику.
AIDSTEST
В нашей стране, как уже было сказано выше, особую популярность приобрели антивирусные программы, совмещающие в себе функции детекторов и докторов. Самой известной из них является программа AIDSTEST Д.Н. Лозинского. В Украине практически на каждом IBM-совместимом персональном компьютере есть одна из версий этой программы. Одна из последних версия обнаруживает более 8000 вирусов.
Aidstest для своего нормального функционирования требует, чтобы в памяти не было резидентных антивирусов, блокирующих запись в программные файлы, поэтому их следует выгрузить, либо, указав опцию выгрузки самой резидентной программе, либо воспользоваться соответствующей утилитой.
При запуске Aidstest проверяет себя оперативную память на наличие известных ему вирусов и обезвреживает их. При этом парализуются только функции вируса, связанные с размножением, а другие побочные эффекты могут оставаться. Поэтому программа после окончания обезвреживания вируса в памяти выдает запрос о перезагрузке. Следует обязательно последовать этому совету, если оператор ПЭВМ не является системным программистом, занимающимся изучением свойств вирусов. При чем следует перезагрузиться кнопкой RESET, так как при "теплой перезагрузке" некоторые вирусы могут сохраняться. Вдобавок, лучше запустить машину и Aidstest с защищённой от записи дискеты, так как при запуске с зараженного диска вирус может записаться в память резидентом и препятствовать лечению.
Aidstest тестирует свое тело на наличие известных вирусов, а также по искажениям в своем коде судит о своем заражении неизвестным вирусом. При этом возможны случаи ложной тревоги, например при сжатии антивируса упаковщиком. Программа не имеет графического интерфейса, и режимы ее работы задаются с помощью ключей. Указав путь, можно проверить не весь диск, а отдельный подкаталог.