Какими основными свойствами обладает компьютерный вирус
Сейчас применяются персональные компьютеры, в которых пользователь имеет свободный доступ ко всем ресурсам машины. Именно это открыло возможность для опасности, которая получила название компьютерного вируса.
Что такое компьютерный вирус? Формальное определение этого понятия до сих пор не придумано, и есть серьезные сомнения, что оно вообще может быть дано. Многочисленные попытки дать «современное» определение вируса не привели к успеху. Чтобы почувствовать всю сложность проблемы, попробуйте, к примеру, дать определение понятия «редактор». Вы либо придумаете нечто очень общее, либо начнете перечислять все известные типы редакторов. И то и другое вряд ли можно считать приемлемым. Поэтому мы ограничимся рассмотрением некоторых свойств компьютерных вирусов, которые позволяют говорить о них как о некотором определенном классе программ.
Прежде всего, вирус — это программа. Такое простое утверждение само по себе способно развеять множество легенд о необыкновенных возможностях компьютерных вирусов. Вирус может перевернуть изображение на вашем мониторе, но не может перевернуть сам монитор. К легендам о вирусах-убийцах, «уничтожающих операторов посредством вывода на экран смертельной цветовой гаммы 25-м кадром» также не стоит относиться серьезно. К сожалению, некоторые авторитетные издания время от времени публикуют «самые свежие новости с компьютерных фронтов», которые при ближайшем рассмотрении оказываются следствием не вполне ясного понимания предмета.
Вирус — программа, обладающая способностью к самовоспроизведению. Такая способность является единственным средством, присущим всем типам вирусов. Но не только вирусы способны к самовоспроизведению. Любая операционная система и еще множество программ способны создавать собственные копии. Копии же вируса не только не обязаны полностью совпадать с оригиналом, но, и могут вообще с ним не совпадать!
Вирус не может существовать в «полной изоляции»: сегодня нельзя представить себе вирус, который не использует код других программ, информацию о файловой структуре или даже просто имена других программ. Причина понятна: вирус должен каким-нибудь способом обеспечить передачу себе управления.
Классификация вирусов
В настоящее время известно более 5000 программных вирусов, их можно классифицировать по следующим признакам:
- среде обитания
- способу заражения среды обитания
- воздействию
- особенностям алгоритма
В зависимости от среды обитания вирусы можно разделить на сетевые, файловые, загрузочные и файлово-загрузочные. Сетевые вирусы распространяются по различным компьютерным сетям. Файловые вирусы внедряются главным образом в исполняемые модули, т. е. В файлы, имеющие расширения COM и EXE. Файловые вирусы могут внедряться и в другие типы файлов, но, как правило, записанные в таких файлах, они никогда не получают управление и, следовательно, теряют способность к размножению. Загрузочные вирусы внедряются в загрузочный сектор диска (Boot-сектор) или в сектор, содержащий программу загрузки системного диска (Master Boot Re-cord). Файлово-загрузочные вирусы заражают как файлы, так и загрузочные сектора дисков.
По способу заражения вирусы делятся на резидентные и нерезидентные. Резидентный вирус при заражении (инфицировании) компьютера оставляет в оперативной памяти свою резидентную часть, которая потом перехватывает обращение операционной системы к объектам заражения (файлам, загрузочным секторам дисков и т. п.) и внедряется в них. Резидентные вирусы находятся в памяти и являются активными вплоть до выключения или перезагрузки компьютера. Нерезидентные вирусы не заражают память компьютера и являются активными ограниченное время.
По степени воздействия вирусы можно разделить на следующие виды:
- неопасные, не мешающие работе компьютера, но уменьшающие объем свободной оперативной памяти и памяти на дисках, действия таких вирусов проявляются в каких-либо графических или звуковых эффектах
- опасные вирусы, которые могут привести к различным нарушениям в работе компьютера
- очень опасные, воздействие которых может привести к потере программ, уничтожению данных, стиранию информации в системных областях диска.
По особенностям алгоритма вирусы трудно классифицировать из-за большого разнообразия. Простейшие вирусы — паразитические, они изменяют содержимое файлов и секторов диска и могут быть достаточно легко обнаружены и уничтожены. Можно отметить вирусы-репликаторы, называемые червями, которые распространяются по компьютерным сетям, вычисляют адреса сетевых компьютеров и записывают по этим адресам свои копии.
Известны вирусы-невидимки, называемые стелс-вирусами, которые очень трудно обнаружить и обезвредить, так как они перехватывают обращения операционной системы к пораженным файлам и секторам дисков и подставляют вместо своего тела незараженные участки диска. Наиболее трудно обнаружить вирусы-мутанты, содержащие алгоритмы шифровки-расшифровки, благодаря которым копии одного и того же вируса не имеют ни одной повторяющейся цепочки байтов. Имеются и так называемые квазивирусные или «троянские» программы, которые хотя и не способны к самораспространению, но очень опасны, так как, маскируясь под полезную программу, разрушают загрузочный сектор и файловую систему дисков.
Теперь поподробнее о некоторых из этих групп.
Загрузочные вирусы
Рассмотрим схему функционирования очень простого загрузочного вируса, заражающего дискеты.
Что происходит, когда вы включаете компьютер? Первым делом управление передается программе начальной загрузки, которая хранится в постоянно запоминающем устройстве (ПЗУ) т.е. ПНЗ ПЗУ.
Эта программа тестирует оборудование и при успешном завершении проверок пытается найти дискету в дисководе А:
Всякая дискета размечена на т.н. секторы и дорожки. Секторы объединяются в кластеры, но это для нас несущественно.
Среди секторов есть несколько служебных, используемых операционной системой для собственных нужд (в этих секторах не могут размещаться ваши данные). Среди служебных секторов нас интересует сектор начальной загрузки (boot-sector).
В секторе начальной загрузки хранится информация о дискете — количество поверхностей, количество дорожек, количество секторов и пр. Но нас сейчас интересует не эта информация, а небольшая программа начальной загрузки (ПНЗ), которая должна загрузить саму операционную систему и передать ей управление.
Таким образом, нормальная схема начальной загрузки следующая:
ПНЗ (ПЗУ) — ПНЗ (диск) — СИСТЕМА
Теперь рассмотрим вирус. В загрузочных вирусах выделяют две части: голову и т.н. хвост. Хвост может быть пустым.
Пусть у вас имеются чистая дискета и зараженный компьютер, под которым мы понимаем компьютер с активным резидентным вирусом. Как только этот вирус обнаружит, что в дисководе появилась подходящая жертва — в нашем случае не защищенная от записи и еще не зараженная дискета, он приступает к заражению. Заражая дискету, вирус производит следующие действия:
- выделяет некоторую область диска и помечает ее как недоступную операционной системе, это можно сделать по-разному, в простейшем и традиционном случае занятые вирусом секторы помечаются как сбойные (bad)
- копирует в выделенную область диска свой хвост и оригинальный (здоровый) загрузочный сектор
- замещает программу начальной загрузки в загрузочном секторе (настоящем) своей головой
- организует цепочку передачи управления согласно схеме.
Таким образом, голова вируса теперь первой получает управление, вирус устанавливается в память и передает управление оригинальному загрузочному сектору. В цепочке
ПНЗ (ПЗУ) — ПНЗ (диск) — СИСТЕМА
появляется новое звено:
ПНЗ (ПЗУ) — ВИРУС — ПНЗ (диск) — СИСТЕМА
Мы рассмотрели схему функционирования простого бутового вируса, живущего в загрузочных секторах дискет. Как правило, вирусы способны заражать не только загрузочные секторы дискет, но и загрузочные секторы винчестеров. При этом в отличие от дискет на винчестере имеются два типа загрузочных секторов, содержащих программы начальной загрузки, которые получают управление. При загрузке компьютера с винчестера первой берет на себя управление программа начальной загрузки в MBR (Master Boot Record — главная загрузочная запись). Если ваш жесткий диск разбит на несколько разделов, то лишь один из них помечен как загрузочный (boot). Программа начальной загрузки в MBR находит загрузочный раздел винчестера и передает управление на программу начальной загрузки этого раздела. Код последней совпадает с кодом программы начальной загрузки, содержащейся на обычных дискетах, а соответствующие загрузочные секторы отличаются только таблицами параметров. Таким образом, на винчестере имеются два объекта атаки загрузочных вирусов — программа начальной загрузки в MBR и программа начальной загрузки в бут-секторе загрузочного диска.
Файловые вирусы
Рассмотрим теперь схему работы простого файлового вируса. В отличие от загрузочных вирусов, которые практически всегда резидентны, файловые вирусы совсем не обязательно резидентны. Рассмотрим схему функционирования нерезидентного файлового вируса. Пусть у нас имеется инфицированный исполняемый файл. При запуске такого файла вирус получает управление, производит некоторые действия и передает управление «хозяину»
Какие же действия выполняет вирус? Он ищет новый объект для заражения — подходящий по типу файл, который еще не заражен. Заражая файл, вирус внедряется в его код, чтобы получить управление при запуске этого файла. Кроме своей основной функции — размножения, вирус вполне может сделать что-нибудь замысловатое (сказать, спросить, сыграть) — это уже зависит от фантазии автора вируса. Если файловый вирус резидентный, то он установится в память и получит возможность заражать файлы и проявлять прочие способности не только во время работы зараженного файла. Заражая исполняемый файл, вирус всегда изменяет его код — следовательно, заражение исполняемого файла всегда можно обнаружить. Но, изменяя код файла, вирус не обязательно вносит другие изменения:
- он не обязан менять длину файла
- неиспользуемые участки кода
- не обязан менять начало файла
Наконец, к файловым вирусам часто относят вирусы, которые «имеют некоторое отношение к файлам», но не обязаны внедряться в их код.
Таким образом, при запуске любого файла вирус получает управление (операционная система запускает его сама), резидентно устанавливается в память и передает управление вызванному файлу.
Статьи к прочтению:
- Свойства криптографических хеш-функций
- Свойства примитивов (цвет, толщина, тип линии). программирование простейших типов линий. создание сложных объектов
Все виды компьютерных ВИРУСОВ, САМЫЙ полный СПИСОК!
Похожие статьи:
Разновидности компьютерных вирусов
Рассмотрим подробнее основные особенности компьютерных вирусов, характеристики антивирусных программ и меры зашиты программ и данных от компьютерных…
Классификация и характеристика компьютерных вирусов
Компьютерным вирусомназывается программа, предназначенная для выполнения разрушительных действий. Она может размножаться, внедряясь в другие программы во…
Компьютерные вирусы можно разделить на следующие виды.
Рекламные программы
Под рекламными и информационными программами понимаются такие программы, которые, помимо своей основной функции, также демонстрируют рекламные баннеры и всевозможные всплывающие окна с рекламой. Такие сообщения с рекламой порой бывает достаточно нелегко скрыть или отключить. Такие рекламные программы основываются при работе на поведение пользователей компьютера и являются достаточно проблемными по соображениям безопасности системы.
(Backdoor)
Утилиты скрытого администрирования позволяют, обходя системы защиты, поставить компьютер установившего пользователя под свой контроль. Программа, которая работает в невидимом режиме, дает хакеру неограниченные права для управления системой. С помощью таких backdoor-программ можно получить доступ к персональным и личным данным пользователя. Нередко такие программы используются в целях заражения системы компьютерными вирусами и для скрытой установки вредоносных программ без ведома пользователя.
Загрузочные вирусы
Нередко главный загрузочный сектор вашего HDD поражается специальными загрузочными вирусами. Вирусы подобного типа заменяют информацию, которая необходима для беспрепятственного запуска системы. Одно из последствий действия таковой вредоносной программы это невозможность загрузки операционной системы…
Bot-сеть
Bot-сеть это полноценная сеть в Интернет, которая подлежит администрированию злоумышленником и состоящая из многих инфицированных компьютеров, которые взаимодействуют между собой. Контроль над такой сетью достигается с использованием вирусов или троянов, которые проникают в систему. При работе, вредоносные программы никак себя не проявляют, ожидая команды со стороны злоумышленника. Подобные сети применяются для рассылки СПАМ сообщений или для организации DDoS атак на нужные сервера. Что интересно, пользователи зараженных компьютеров могут совершенно не догадываться о происходящем в сети.
Эксплойт
Эксплойт (дословно брешь в безопасности) – это такой скрипт или программа, которые используют специфические дырки и уязвимости ОС или какой-либо программы. Подобным образом в систему проникают программы, с использованием которых могут быть получены права доступа администратора.
Hoax (дословно шутка, ложь, мистификация, шутка, обман)
Уже на протяжении нескольких лет многие пользователи сети Интернет получают электронные сообщения о вирусах, которые распространяются якобы посредством e-mail. Подобные предупреждения массово рассылаются со слезной просьбой отправить их всем контактам из вашего личного листа.
Ловушки
Honeypot (горшочек меда) – это сетевая служба, которая имеет задачу наблюдать за всей сетью и фиксировать атаки, при возникновении очага. Простой пользователь совершенно не догадывается о существовании такой службы. Если же хакер исследует и мониторит сеть на наличие брешей, то он может воспользоваться услугами, которые предлагает такая ловушка. При этом будет сделана запись в log-файлы, а также сработает автоматическая сигнализация.
Макровирусы
Макровирусы — это очень маленькие программы, которые написаны на макроязыке приложений. Такие программки распространяются только среди тех документов, которые созданы именно для этого приложения. Для активации таких вредоносных программ необходим запуск приложения, а также выполнение инфицированного файла-макроса. Отличие от обычных вирусов макросов в том, что заражение происходит документов приложения, а не запускаемых файлов приложения.
Фарминг
Фарминг — это скрытая манипуляция host-файлом браузера для того, чтобы направить пользователя на фальшивый сайт. Мошенники содержат у себя сервера больших объемов, на таких серверах хранятся большая база фальшивых интернет-страниц. При манипуляции host-файлом при помощи трояна или вируса вполне возможно манипулирование зараженной системой. В результате этого зараженная система будет загружать только фальшивые сайты, даже в том случае, если Вы правильно введете адрес в строке браузера.
Фишинг
Phishing дословно переводится как «выуживание» личной информации пользователя при нахождении в сети интернет. Злоумышленник при своих действиях отправляет потенциальной жертве электронное письмо, где указано, что необходимо выслать личную информацию для подтверждения. Нередко это имя и фамилия пользователя, необходимые пароли, PIN коды для доступа к счетам пользователя онлайн. С использованием таких похищенных данных, хакер вполне может выдать себя за другое лицо и осуществить любые действия от его имени.
Полиморфные вирусы
Полиморфные вирусы – это вирусы, использующие маскировку и перевоплощения в работе. В процессе они могут изменять свой программный код самостоятельно, а поэтому их очень сложно обнаружить, потому что сигнатура изменяется с течением времени.
Программные вирусы
Компьютерный вирус — это обычная программа, которая обладает самостоятельно прикрепляться к другим работающим программам, таким образом, поражая их работу. Вирусы самостоятельно распространяют свои копии, это значительно отличает их от троянских программ. Также отличие вируса от червя в том, что для работы вирусу нужна программа, к которой он может приписать свой код.
Руткит
Руткит – это определенный набор программных средств, который скрыто устанавливается в систему пользователя, обеспечивая при этом сокрытие личного логина киберпреступника и различных процессов, при этом делая копии данных.
Скрипт-вирусы и черви
Такие виды компьютерных вирусов достаточно просты для написания и распространяются в основном посредством электронной почты. Скриптовые вирусы используют скриптовые языки для работы чтобы добавлять себя к новым созданным скриптам или распространяться через функции операционной сети. Нередко заражение происходит по e-mail или в результате обмена файлами между пользователями. Червь это программа, которая размножается самостоятельно, но которая инфицирует при этом другие программы. Черви при размножении не могут стать частью других программ, что отличает их от обычных видов компьютерных вирусов.
Шпионское ПО
Шпионы могут переслать личные данные пользователя без его ведома третьим лицам. Шпионские программы при этом анализируют поведение пользователя в сети Интернет, а также, основываясь на собранных данных, демонстрируют пользователю рекламу или pop-up (всплывающие окна), которые непременно заинтересуют пользователя.
Троянские программы
Троянские программы это программы, которые должны выполнять определенные полезные функции, но после запуска таких программ выполняются действия другого характера (разрушительные). Трояны не могут размножаться самостоятельно, и это основное их отличие их от компьютерных вирусов.
Зомби
Зомби — это инфицированный компьютер, который инфицирован вредоносными программами. Такой компьютер позволяет хакерам удаленно администрировать систему и с помощью этого совершать различные нужные действия (DoS атаку, рассылка спама и т.п.).
Загрузочные вирусы
Рассмотрим схему функционирования очень простого загрузочного вируса, заражающего дискеты. Мы сознательно обойдем все многочисленные тонкости, которые неизбежно встретились бы при строгом разборе алгоритма его функционирования.
Что происходит, когда вы включаете компьютер? Первым делом управление передается программе начальной загрузки (ПНЗ), которая хранится в постоянно запоминающем устройстве (ПЗУ).
Эта программа тестирует оборудование и при успешном завершении проверок пытается найти дискету в дисководе А:. Всякая дискета размечена на секторы и дорожки. Секторы объединяются в кластеры, но это для нас несущественно. Среди секторов есть несколько служебных, используемых операционной системой для собственных нужд (в этих секторах не могут размещаться ваши данные).
Среди служебных секторов нас пока интересует один — сектор начальной загрузки (boot-sector). В секторе начальной загрузки хранится информация о дискете — количество поверхностей, количество дорожек, количество секторов и пр. Но нас сейчас интересует не эта информация, а небольшая программа начальной загрузки, которая должна загрузить саму операционную систему и передать ей управление.
Таким образом, нормальная схема начальной загрузки следующая:
ПНЗ (ПЗУ) ® ПНЗ (диск) ® СИСТЕМА
Теперь рассмотрим вирус. В загрузочных вирусах выделяют две части — голову и хвост. Хвост, вообще говоря, может быть пустым. Пусть у вас имеются чистая дискета и зараженный компьютер, под которым мы понимаем компьютер с активным резидентным вирусом. Как только этот вирус обнаружит, что в дисководе появилась подходящая жертва — в нашем случае не защищенная от записи и еще не зараженная дискета, он приступает к заражению. Заражая дискету, вирус производит следующие действия:
- выделяет некоторую область диска и помечает ее как недоступную операционной системе. Это можно сделать по-разному, в простейшем и традиционном случае занятые вирусом секторы помечаются как сбойные (bad);
- копирует в выделенную область диска свой хвост и оригинальный (здоровый) загрузочный сектор;
- замещает программу начальной загрузки в загрузочном секторе (настоящем) своей головой;
- организует цепочку передачи управления согласно схеме.
Таким образом, голова вируса теперь первой получает управление, вирус устанавливается в память и передает управление оригинальному загрузочному сектору.
В цепочке ПНЗ (ПЗУ) ® ПНЗ (диск) ® СИСТЕМА появляется новое звено: ПНЗ (ПЗУ) ® ВИРУС ® ПНЗ (диск) ® СИСТЕМА.
Поэтому никогда не оставляйте (случайно) дискет в дисководе А.
Мы рассмотрели схему функционирования простого бутового вируса, живущего в загрузочных секторах дискет. Как правило, вирусы способны заражать не только загрузочные сектора дискет, но и загрузочные сектора винчестеров. При этом в отличие от дискет на винчестере имеются два типа загрузочных секторов, содержащих программы начальной загрузки, которые получают управление.
При загрузке компьютера с винчестера первой берет на себя управление программа начальной загрузки в MBR (Master Boot Record — главная загрузочная запись). Если ваш жесткий диск разбит на несколько разделов, то лишь один из них помечен как загрузочный (boot). Программа начальной загрузки в MBR находит загрузочный раздел винчестера и передает управление на программу начальной загрузки этого раздела. Код последней совпадает с кодом программы начальной загрузки, содержащейся на обычных дискетах, а соответствующие загрузочные сектора отличаются только таблицами параметров. Таким образом, на винчестере имеются два объекта атаки загрузочных вирусов — программа начальной загрузки в MBR и программа начальной загрузки в boot-секторе загрузочного диска.
Файловые вирусы
Рассмотрим теперь схему работы простого файлового вируса. В отличие от загрузочных вирусов, которые практически всегда резидентны, файловые вирусы совсем не обязательно резидентны. Рассмотрим схему функционирования нерезидентного файлового вируса. Пусть у нас имеется инфицированный исполняемый файл. При запуске такого файла вирус получает управление, производит некоторые действия и передает управление «хозяину» (хотя еще неизвестно, кто в такой ситуации хозяин).
Какие же действия выполняет вирус? Он ищет новый объект для заражения — подходящий по типу файл, который еще не заражен (в том случае, если вирус «приличный», а то попадаются такие, что заражают сразу, ничего не проверяя). Заражая файл, вирус внедряется в его код, чтобы получить управление при запуске этого файла. Кроме своей основной функции — размножения, вирус вполне может сделать что-нибудь замысловатое (сказать, спросить, сыграть) — это уже зависит от фантазии автора вируса.
Если файловый вирус резидентный, то он установится в память и получит возможность заражать файлы и проявлять прочие способности не только во время работы зараженного файла.
Заражая исполняемый файл, вирус всегда изменяет его код -следовательно, заражение исполняемого файла всегда можно обнаружить. Но, изменяя код файла, вирус не обязательно вносит другие изменения: он не всегда изменяет длину файла, может не менять начало файла.
Наконец, к файловым вирусам часто относят вирусы, которые «имеют некоторое отношение к файлам», но не обязаны внедряться в их код. Рассмотрим в качестве примера схему функционирования вирусов известного семейства DIR-II. Нельзя не признать, что, появившись в 1991 г., эти вирусы стали причиной настоящей компьютерной эпидемии в России. Рассмотрим модель, на которой ясно видна основная идея вируса. Информация о файлах хранится в каталогах. Каждая запись каталога включает в себя имя файла, дату и время создания, некоторую дополнительную информацию, номер первого кластера файла и так называемые резервные байты.
При запуске исполняемых файлов система считывает из записи в каталоге первый кластер файла и далее все остальные кластеры. Вирусы семейства DIR-II производят следующую «реорганизацию» файловой системы: сам вирус записывается в некоторые свободные секторы диска, которые он помечает как сбойные. Кроме того, он сохраняет информацию о первых кластерах исполняемых файлов в резервных битах, а на место этой информации записывает ссылки на себя.
Таким образом, при запуске любого файла вирус получает управление (операционная система запускает его сама), резидентно устанавливается в память и передает управление вызванному файлу. Действие вируса приводит к «размножению» на винчестере секторов, помеченных как сбойные.
Загрузочно-файловые вирусы
Типичным представителем таких вирусов является «популярный» загрузочно-файловый вирус OneHalf, заражающий главный загрузочный сектор (MBR) и исполняемые файлы. Основное разрушительное действие — шифрование секторов винчестера. При каждом запуске вирус шифрует очередную порцию секторов, а, зашифровав половину жесткого диска, радостно сообщает об этом.
Основная проблема при лечении данного вируса состоит в том, что недостаточно просто удалить вирус из MBR и файлов, надо расшифровать зашифрованную им информацию. Наиболее радикальное действие — просто переписать новый здоровый MBR.
Полиморфные вирусы
Большинство вопросов связано с термином «полиморфный вирус». Этот вид компьютерных вирусов представляется на сегодняшний день наиболее опасным. Полиморфные вирусы — вирусы, модифицирующие свой код в зараженных программах таким образом, что два экземпляра одного и того же вируса могут не совпадать ни в одном бите. Такие вирусы не только шифруют свой код, используя различные пути шифрования, но и содержат код генерации шифровщика и расшифровщика, что отличает их от обычных шифровальных вирусов, которые также могут шифровать участки своего кода, но имеют при этом постоянный код шифровальщика и расшифровщика.
Полиморфные вирусы — это вирусы с самомодифицирующимися расшифровщиками. Цель такого шифрования: защита от расшифровки. Имея зараженный и оригинальный файлы, вы все равно не сможете проанализировать его код с помощью обычного дизассемблирования. Этот код зашифрован и представляет собой бессмысленный набор команд. Расшифровка производится самим вирусом уже непосредственно во время выполнения. При этом возможны варианты: он может расшифровать себя всего сразу, а может выполнить такую расшифровку «по ходу дела», может вновь шифровать уже отработавшие участки. Все это делается ради затруднения анализа кода вируса.