- •Лабораторная работа № Вирусы. Антивирусные программные средства Основные понятия.
- •Компьютерное хулиганство
- •Мелкое воровство
- •Криминальный бизнес.
- •Определение вируса
- •Внедрение
- •Способы активации
- •Поиск "жертв"
- •Подготовка копий для распространения
- •Жизненный цикл
- •Способы проникновения
- •Активация
- •Выполняемые функции
- •Другие вредоносные программы
- •Технологии обнаружения вирусов
- •Порядок выполнения работы
- •Контрольные вопросы по "Антивирусам" предыдущего года.
Другие вредоносные программы
Когда-то для описания всех вредоносных программ хватало понятий “вирус” и “троянец”. Однако технологии и методы заражения компьютеров с тех пор ушли вперед, и этих двух понятий стало недостаточно для описания всего существующего многообразия вредоносных программ.
Кроме вирусов, червей и троянов существует еще множество других вредоносных программ, для которых нельзя привести общий критерий. Однако среди них можно выделить небольшие группы. Это в первую очередь:
Условно опасные программы, то есть такие, о которых нельзя однозначно сказать, что они вредоносны. Такие программы обычно становятся опасными только при определенных условиях или действиях пользователя. К ним относятся:
Riskware - вполне легальные программы, которые сами по себе не опасны, но обладают функционалом, позволяющим злоумышленнику использовать их с вредоносными целями. К riskware относятся обычные утилиты удаленного управления, которыми часто пользуются администраторы больших сетей, клиенты IRC, программы для загрузки файлов из Интернет, утилиты восстановления забытых паролей и другие.
Рекламные утилиты (adware ) - условно-бесплатные программы, которые в качестве платы за свое использование демонстрируют пользователю рекламу, чаще всего в виде графических баннеров. После официальной оплаты и регистрации обычно показ рекламы заканчивается и программы начинают работать в обычном режиме. Проблема adware кроется в механизмах, которые используются для загрузки рекламы на компьютер. Кроме того, что для этих целей часто используются программы сторонних и не всегда проверенных производителей, даже после регистрации такие модули могут автоматически не удаляться и продолжать свою работу в скрытом режиме. Однако среди adware-программ есть и вполне заслуживающие доверия - например, клиент ICQ.
Pornware - к этому классу относятся утилиты, так или иначе связанные с показом пользователям информации порнографического характера. На сегодняшний день это программы, которые самостоятельно дозваниваются до порнографических телефонных служб, загружают из Интернет порнографические материалы или утилиты, предлагающие услуги по поиску и показу такой информации. Отметим, что к вредоносным программам относятся только те утилиты класса pornware, которые устанавливаются на компьютер пользователя несанкционированно - через уязвимость в операционной системы или браузера или при помощи троянов. Обычно это делается с целью насильственного показа рекламы платных порнографических сайтов или служб.
Хакерские утилиты - К этому виду программ относятся программы скрытия кода зараженных файлов от антивирусной проверки (шифровальщики файлов), автоматизации создания сетевых червей, компьютерных вирусов и троянских программ (конструкторы вирусов), наборы программ, которые используют хакеры для скрытного взятия под контроль взломанной системы (RootKit) и другие подобные утилиты. То есть такие специфические программы, которые обычно используют только хакеры.
Хакерские атаки. Термин "хакер" раньше использовался для обозначения высококвалифицированных программистов. Теперь так называют тех, кто использует уязвимости в программном обеспечении для внедрения в компьютерную систему. Это электронный эквивалент взлома помещения. Хакеры постоянно взламывают как отдельные компьютеры, так и крупные сети. Получив доступ к системе, они крадут конфиденциальные данные или устанавливают вредоносные программы. Они также используют взломанные компьютеры для рассылки спама. Защититься от них можно с помощью особого приложения - сетевого экрана. Часто он входит в состав антивирусных программ. Сетевой экран, или файервол (firewall), распознает попытки взлома и делает ваш компьютер невидимым для хакеров.
Злые шутки - программы, которые намеренно вводят пользователя в заблуждение путем показа уведомлений, например, форматировании диска или обнаружении вирусов, хотя на самом деле ничего не происходит. Текст таких сообщений целиком и полностью отражает фантазию автора.
Фишинг – это особый вид кибермошенничества, направленный на то, чтобы обманным путем заставить вас раскрыть персональные данные, как правило финансового характера. Мошенники создают поддельный веб-сайт, который выглядит как сайт банка (или как любой другой сайт, через который производятся финансовые операции, например eBay). Затем преступники пытаются завлечь вас на этот сайт, чтобы вы ввели на нем конфиденциальные данные, такие как логин, пароль или PIN-код. Часто для этого мошенники с помощью спама распространяют ссылку на этот сайт .
Руткит (rootkit) – это набор программ, используемый хакерами для сокрытия своего присутствия в системе при попытках неавторизованного доступа к компьютеру. Термин пришел из Unix-систем и обозначает методы, которые авторы троянских программ, работающих под Windows, используют для маскировки вредоносной активности своих зловредов. Установленные в системе руткиты не только не видны пользователям, но и избегают обнаружения антивирусным ПО. За счет того, что многие пользователи входят в систему как администраторы, не создавая отдельной учетной записи с ограниченными правами для ежедневной работы, для злоумышленников задача внедрения руткитов упрощается.
Drive-by (попутная) загрузка. При drive-by загрузке, компьютер заражается при посещении веб-сайта, содержащего вредоносный код. Кибермошенники ищут в Интернете веб-серверы, уязвимые для взлома, чтобы вписать вредоносный код на веб-страницы (часто в виде вредоносного скрипта). Если в операционной системе или на приложениях не установлены обновления безопасности, то при посещении зараженного веб-сайта вредоносный код загружается на ваш компьютер автоматически.
Уязвимость. Современные приложения чрезвычайно сложны; они компилируются из тысяч строк кода. Но создаются они людьми, а людям свойственно ошибаться. Поэтому нет ничего удивительного в том, что в программы закрадываются ошибки, что делает их уязвимыми для атаки. Хакерам эти лазейки позволяют проникнуть в систему, а вирусописатели используют ошибки в коде приложений, чтобы обеспечить автоматический запуск на компьютере вредоносных программ.
Проявления вредоносных программ можно условно разбить на три группы по тому, насколько легко их обнаружить:
Явные - вредоносная программа самостоятельно проявляет заметную активность
Косвенные - другие программы начинают выводить сообщения об ошибках или вести себя нестандартно из-за присутствия на компьютере вируса
Скрытые - ни явных ни косвенных проявлений вредоносная программа не имеет
Перечислить все характерные признаки заражения сложно, потому что одни и те же симптомы могут быть вызваны как воздействием вредоносного ПО, так и иными программными или аппаратными проблемами. Вот лишь несколько примеров:
компьютер ведет себя странно, непривычно.
на экране появились неожиданные сообщения или изображения;
вы слышите неожиданные звуки, воспроизводимые в случайном порядке;
происходит неожиданный запуск программ;
ваш персональный сетевой экран сообщает, что некое приложение пытается соединиться с интернетом, хотя вы эту программу не запускали;ваши друзья получают от вас по электронной почте сообщения, которых вы не посылали;
ваш компьютер часто зависает, или программы стали выполняться медленно;
вы получаете множество системных сообщений об ошибке;
при включении компьютера операционная система не загружается;
вы обнаружили пропажу или изменение файлов или папок;
загорается индикатор доступа к жесткому диску, хотя вы не запускали никаких программ;
ваш браузер ведет себя неадекватно – например, вы не можете закрыть окно обозревателя.
Классификация компьютерных вирусов
В настоящее время не существует единой системы классификации и именования вирусов, однако, в различных источниках можно встретить разные классификации, приведем некоторые из них:
С
Рис. 1 Классификация компьютерных
вирусов.
В зависимости от способа проникновения в систему черви делятся на типы:
Сетевые черви используют для распространения локальные сети и Интернет
Почтовые черви - распространяются с помощью почтовых программ
IM-черви используют системы мгновенного обмена сообщениями1)
IRC-черви распространяются по каналам IRC IRC (от англ. Internet Relay Chat - ретранслируемый интернет-чат) - система обмена сообщениями в режиме реального времени. Создана в 1988 году финским студентом Ярко Ойкариненом (Jarkko Oikarinen). На сегодняшний день самый популярный IRC-клиент - это mIRC
P2P-черви - при помощи пиринговых файлообменных сетей (от англ. peer-to-peer - равный с равным) - это одноранговые (их иногда называют также пиринговыми) компьютерные сети, то есть такие, где отсутствуют выделенные сервера, а все входящие в нее компьютеры выступают в двух ролях - и клиентом, и сервером. Такие сети в основном используются для организации обмена файлами, обычно музыкой и фильмами, а также для решения особо сложных математических задач, требующих много ресурсов. Наиболее известные пиринговые сети - это eDonkey и Gnutella
Файловые вирусы либо различными способами внедряются в исполняемые модули, т.е. в файлы, имеющие расширения СОМ и ЕХЕ (самый распространенный тип вирусов), либо создают файлы двойники (вирусы компаньоны), либо используют особенности организации файловой системы. Файловые вирусы могут внедряться и в другие типы файлов, но, как правило, записанные в таких файлах, они никогда не получают управление и, следовательно, теряют способность к размножению. Макровирусы также являются файловыми, однако, они настолько специфичны, что вынесены в отдельную группу.
Загрузочные вирусы внедряются в загрузочный сектор диска (Вооt-сектор) или в сектор, содержащий программу загрузки системного диска (Маster Вооt Record), либо меняют указатель на активный bооt-сектор.
Макровирусы - вирусы этого семейства используют возможности макроязыков, встроенных в системы обработки данных (текстовые редакторы, электронные таблицы и т.д.). В настоящее время наиболее распространены макровирусы заражающие текстовые документы редактора Microsoft Word.
Существует большое количество сочетаний, например файлово-загрузочные вирусы, заражающие как файлы, так и загрузочные сектора дисков. Другой пример такого сочетания – сетевой макровирус, который не только заражает редактируемые документы, но и рассылает свои копии по электронной почте.
Способы заражения делятся на резидентный и нерезидентный. Резидентные вирусы при заражении (инфицировании) компьютера оставляет в оперативной памяти свою резидентную часть, которая потом перехватывает обращение операционной системы к объектам заражения (файлам, загрузочным секторам дисков и т.п.) и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы не заражают память компьютера и являются активными ограниченное время.
По особенностям алгоритма вирусы трудно классифицировать из-за большого разнообразия. Простейшие вирусы — паразитические, они обязательно изменяют содержимое файлов, при этом оставляя сами файлы полностью или частично работоспособными.
Вирусы компаньоны не изменяют заражаемые файлы. Алгоритм работы этих вирусов состоит в том, что они создают для EXE-файлов файлы-спутники, имеющие то же самое имя, но с расширением .COM, например, для файла XCOPY.EXE создается файл XCOPY.COM. Вирус записывается в COM-файл и никак не изменяет EXE-файл. При запуске такого файла DOS первым обнаружит и выполнит COM-файл, т.е. вирус, который затем запустит и EXE-файл. Некоторые вирусы используют не только вариант COM-ЕХЕ, но также ВАТ-СОМ-ЕХЕ.
Известны вирусы-невидимки, называемые стелс-вирусами, которые очень трудно обнаружить и обезвредить, так как они перехватывают обращения операционной системы к пораженным файлам и секторам дисков и либо временно лечат их, либо подставляют вместо своего тела незараженные участки информации.
Наиболее трудно обнаружить вирусы-мутанты (полиморфик-вирусы, самошифрующиеся или вирусы-призраки), содержащие алгоритмы шифровки-расшифровки, благодаря которым копии одного и того же вируса не имеют ни одной повторяющейся цепочки байтов (сигнатуры или маски вируса). Это достигается шифрованием основного тела вируса и модификациями программы-расшифровщика.
Существуют и так называемые квазивирусные или "троянские" программы, содержащие в себе некоторую разрушающую функцию, которая активизируется при наступлении некоторого условия срабатывания. Эти программы хотя и не способны к самораспространению, но очень опасны, так как, маскируясь под полезную программу, разрушают загрузочный сектор и файловую систему дисков.
В античной мифологии Троянский конь – это деревянная конструкция соответствующей формы, внутри которой греки проникли в Трою и таким образом смогли покорить и разрушить город. По классическому определению, троянец – это программа, которая внешне выглядит как легальный программный продукт, но при запуске совершает вредоносные действия. Троянские программы не могут распространяться сами по себе, и этим они отличаются от вирусов и червей, они маскируются под игровые или развлекательные программы и наносят вред под красивые картинки или музыку.
Обычно троянцы скрытно устанавливаются на компьютер и выполняют вредоносные действия без ведома пользователя. Трояны разных видов составляют большую часть современных вредоносных программ; все они пишутся специально для выполнения конкретной зловредной функции. Чаще всего встречаются backdoor-троянцы (утилиты удаленного администрирования, часто включают в себя клавиатурные шпионы), троянцы-шпионы, троянцы для кражи паролей и троянцы-прокси, превращающие ваш компьютер в машину для рассылки спама.
По степени воздействия вирусы можно условно разделить на следующие виды:
неопасные, не мешающие работе компьютера, но уменьшающие объем свободной оперативной памяти и памяти на дисках, действия таких вирусов проявляются в каких-либо графических или звуковых эффектах;
опасные вирусы, которые могут привести к различным нарушениям в работе компьютера;
очень опасные, воздействие которых может привести к потере программ, уничтожению данных, стиранию информации в системных областях диска.
Программы обнаружения и защиты от вирусов.
Антивирусная программа - это компьютерная программа, целью которой является обнаружить, предотвратить размножение и удалить компьютерные вирусы и другие вредоносные программы. Многие антивирусные программы позволяют не только обнаруживать, но и препятствуют несанкционированному проникновению вредоносных программ в компьютер.
Характеристика антивирусных программ
Рис. 2.
Классификация антивирусных программ
Для обнаружения, удаления и защиты от компьютерных вирусов разработано несколько видов специальных программ, которые позволяют обнаруживать и уничтожать вирусы. Такие программы называются антивирусными. Классификация антивирусов представлена на рис.2.
Программы-детекторы осуществляют поиск характерной для конкретного вируса последовательности байтов (сигнатуры, тело вируса или маска вируса) в оперативной памяти и в файлах и при обнаружении выдают соответствующее сообщение. Различают детекторы универсальные и специализированные.
Универсальные детекторы в своей работе используют проверку неизменности файлов путем подсчета и сравнения с эталоном контрольной суммы. Недостаток универсальных детекторов связан с невозможностью определения причин искажения файлов.
Специализированные детекторы выполняют поиск известных вирусов по их сигнатуре (повторяющемуся участку кода). Недостаток таких детекторов состоит в том, что они неспособны обнаруживать все известные вирусы.
Детектор, позволяющий обнаруживать несколько вирусов, называют полидетектором.
Недостатком таких антивирусных про грамм является то, что они могут находить только те вирусы, которые известны разработчикам таких программ.
Сканеры или программы-доктора, не только находят зараженные вирусами файлы, но и "лечат" их, т.е. удаляют из файла тело программы вируса, возвращая файлы в исходное состояние. Принцип работы сканеров основан на проверке системной памяти, затем файлов и секторов и поиске в них известных и новых (неизвестных сканеру) вирусов. Для поиска известных вирусов используются маски вируса (некоторая постоянная последовательность кода, специфичная для конкретного вируса), содержащиеся в антивирусных базах.
Если же вирус не содержит постоянной маски (полиморфы), то может использоваться алгоритмический язык, описывающий все возможные варианты кода, которые могут встретиться при заражении подобного типа вирусом. Во многих сканерах используются алгоритмы эвристического сканирования, заключающиеся в поиске признаков деятельности вирусов, таких как подозрительный код или неожиданные изменения в файлах. Поскольку эвристическое сканирование является вероятностным методом поиска вирусов, то на него распространяются многие законы теории вероятностей. Например, чем выше процент обнаруживаемых вирусов, тем больше количество ложных срабатываний
Эвристическим анализатором называют алгоритм, предназначенный для обнаружения фрагментов программ, типичных для компьютерных вирусов. Эвристические анализаторы используются полифагами для обнаружения вирусов, не входящих в базу данных полифага. Эффективность эвристического анализатора определяется двумя параметрами: процентом обнаруженных вирусов и процентом так называемых ложных срабатываний (подозрений на наличие вируса в файлах, в которых его нет). Российский полифаг Doctor Web имеет один из лучших в мире эвристических анализаторов.
Учитывая, что постоянно появляются новые вирусы, программы-детекторы и программы-доктора быстро устаревают, и требуется регулярное обновление их антивирусных баз. К достоинствам сканеров относится их универсальность, к недостаткам - размеры антивирусных баз, которые сканерам приходится "таскать за собой", и относительно небольшая скорость поиска вирусов.
Ревизоры (CRC-сканеры.) Ревизор дисков – программа, предназначенная для контроля целостности информации на диске. Ревизор контролирует целостность файлов, загрузочных секторов и системных областей, сообщая обо всех изменениях Ревизоры запоминают исходное состояние программ, каталогов и системных областей диска тогда, когда компьютер не заражен вирусом, а затем периодически или по желанию пользователя сравнивают текущее состояние с исходным. Обнаруженные изменения выводятся на экран видеомонитора. Как правило, сравнение состояний производят сразу после загрузки операционной системы. При сравнении проверяются длина файла, код циклического контроля (CRC-сумма или контрольная сумма файла Контрольная сумма – функция от файла, вычисляемая по специальному алгоритму. Контрольные суммы строятся таким образом, чтобы изменения в файле влекли изменения контрольной суммы. Контрольные суммы используются программой-ревизором для контроля целостности файлов), дата и время модификации, другие параметры. Программы-ревизоры имеют достаточно развитые алгоритмы, обнаруживают стелс-вирусы и могут даже отличить изменения версии проверяемой программы от изменений, внесенных вирусом: практически 100% оказываются обнаруженными почти сразу после их появления в системе. Однако у этого типа антивирусов есть врожденный недостаток: они не способны поймать вирус в новых файлах (в электронной почте, на дискете, в файлах, восстанавливаемых из архивов).
Но они могут лечить не от всех вирусов, а только от тех, которые используют "стандартные", известные на момент написания программы, механизмы заражения файлов.
Мониторы или "сторожа" (блокировщики.) представляют собой небольшие резидентные программы, предназначенные для обнаружения подозрительных действий при работе компьютера, характерных для вирусов. Такими действиями могут являться:
попытки коррекции файлов с расширениями СОМ и ЕХЕ;
изменение атрибутов файлов;
прямая запись на диск по абсолютному адресу;
запись в загрузочные сектора диска;
загрузка резидентной программы.
При попытке какой-либо программы произвести указанные действия "сторож" посылает пользователю сообщение и предлагает запретить или разрешить соответствующее действие. Программы-фильтры весьма полезны, так как способны обнаружить вирус на самой ранней стадии его существования до размножения. Однако они не "лечат" файлы и диски. Для уничтожения вирусов требуется применить другие программы, например фаги. К недостаткам программ-сторожей можно отнести их "назойливость" (например, они постоянно выдают предупреждение о любой попытке копирования исполняемого файла), а также возможные конфликты с другим программным обеспечением.
Вакцины или иммунизаторы — это программы, блокирующие заражение каким-либо типом вируса. Вакцины применяют, если отсутствуют программы-доктора, "лечащие" этот вирус. Вакцинация возможна только от известных вирусов. Файлы на диске модифицируются таким образом, чтобы это не отражалось на их работе, а вирус будет воспринимать их зараженными. Для защиты от резидентного вируса в память заносится программа, имитирующая копию вируса, при запуске вирус натыкается на нее и считает, что система уже заражена. В настоящее время программы-вакцины имеют ограниченное применение.
Классификация антивирусных программ в зависимости от выполняемых функций.
На сегодняшний день все антивирусные средства защиты компьютеров, можно разделить на пять основных функциональных групп:
Классический антивирус – (определение приводится выше)
Антишпион (antispyware) - антивирусная программа, предназначенная для обнаружения и удаления шпионского программного обеспечения (spyware) с компьютера пользователя. Сегодня антишпионы в чистом виде практически не используются. Как правило, они включаются в состав антивирусов или комплексных средств защиты компьютеров и имеют дополнительные функции позволяющие удалять агрессивную рекламу (add-aware), номеронабиратели (scumware), кейлоггеры (keylogger) и другие вредоносные программы.
Онлайн сканер - антивирусное средство для обнаружения и удаления вирусов из файловой системы персонального компьютера, подключенного к сети интернет. Основным преимуществом онлайн сканеров является отсутствие необходимости инсталляции приложения. К недостаткам можно отнести тот факт, что сканер только обнаруживает вирусы, которые уже проникли систему и не способен защитить компьютер от будущего заражения
Сетевой экран (firewall) - это программа, обеспечивающая безопасную работу компьютера в локальных сетях и интернете, которая позволяет блокировать нежелательный сетевой трафик, а также обеспечивает невидимость компьютера в сети, с целью предотвращения кибер атак. Актуальность использования этого эффективного средства безопасности растет по мере лавинообразно нарастающего объёма и скорости создания вирусов и других вредоносных программ.
Комплексная защита - это комплекс антивирусных программных средств, представляемый, как правило, под названием "Internet Security" и включающий в себя все перечисленные выше средства защиты компьютера плюс дополнительные функциональные компоненты, такие как родительский контроль, защита от спама и многое другое.
Своевременное обнаружение зараженных вирусами файлов и дисков, полное уничтожение обнаруженных вирусов на каждом компьютере позволяют избежать распространения вирусной эпидемии на другие компьютеры.
Следует отметить, что в настоящее время полноценным и функциональным антивирусным пакетом принято считать продукты, содержащие сканер, монитор, центр управления с планировщиком и конфигуратором, а также модуль обновления через Интернет.
Какое средство выбрать для антивирусной защиты? Ответ на этот вопрос можно получить из ежегодных результатов тестирования антивирусных продуктов. Рассмотрим некоторые антивирусные пакеты, распространенные на отечественном рынке, результаты тестирования 2003 года приведены в таблице 1
