Меню
Главная
Авторизация/Регистрация
 
Главная arrow Информатика arrow Информационные технологии и моделирование бизнес-процессов

Компьютерные вирусы и другие вредоносные программы

Первые исследования искусственных конструкций, которые способны к воспроизводству самих себя, проводились в середине прошлого века известными учеными-математиками Джоном фон Нейманом и Норбертом Винером. Конечно, в СССР этому вопросу также уделялось достаточно внимания - изучались самовидтворювальни конечные автоматы.

Термин "компьютерный вирус" появился значительно позже - официально считается, что его впервые употребил сотрудник Лехайського университета (США) Фред Коэн в 1984 году на конференции. По определению Коэна,

Компьютерный вирус - это программа, обладающая способностью заражать другие программы путем добавления к ним своей, возможно измененной, копии

Как видим, определение довольно неоднозначное. И четкого формального определения, что же такое этот вирус, до сих пор нет.

Компьютерный вирус - одно из самых интересных явлений, которые можно наблюдать в результате развития компьютерной техники. Программы (которые являются лишь последовательностью символов) приобретают свойства, присущие живым организмам - рождаются, размножаются и умирают.

Главное условие существования вирусов - универсальная интерпретация информации в вычислительных системах. Один и тот же вирус в процессе заражения программы может воспринимать ее как данные, а в процессе выполнения - уже как исполняемый код. Этот принцип был положен в основу всех современных компьютерных систем, которые используют архитектуру фон Неймана. Принципиальное отличие вируса от троянской программы состоит в том, что вирус после попадания (с носителем) в компьютерную систему существует автономно и в процессе своего функционирования заражает (инфицирует) программы.

Физическая структура вируса довольно простой. Он состоит из председателя и тела (хвоста). Голова - это та часть кода вируса, выполняется первой. Код тела размещается отдельно от головы в коде зараженной программы. Если вирус состоит только из головы, то он называется несегментированное, с головы и тела - сегментированным.

Для заражения файлов вирусы используют три основных способа (рис.16.2): запись с перекрытием (overwriting), запись в начале (prepending) и запись в конце файла (appending).

В первом случае файл оказывается полностью испорченным, поскольку часть данных была затерта вирусом. Такие вирусы встречаются крайне редко. При попытке открыть зараженный файл происходит заражение еще одного файла. Когда вирус записывает себя в начале файла, при его открытии первым запускается код вируса, а затем программа-оригинал. Вирусы, размещенные после основного кода, перемещают начало программы (рис.16.2) в конец файла, а на его месте ставят команду перехода на начало загрузки (jmp). То есть управление сразу передается вируса, переносит начало программы назад и позволяет программе запуститься.

С понятием "компьютерный вирус" тесно связано такое понятие, как сигнатура. Сигнатура - это фрагмент кода, который есть во всех копиях вируса и только в них. То есть, это подписью вируса, однозначно определяет наличие или отсутствие в программе.

Варианты размещения вируса в коде программы

Рис.16.2. Варианты размещения вируса в коде программы

В конце прошлого века появилось много дискуссий и публикаций о том, может ли человек заразиться компьютерным вирусом? И находились такие, откровенно в это верили, отождествляя компьютерный вирус с, скажем, вирусом гриппа. Но пока человек является живым организмом, компьютерные вирусы будут угрожать только информации на ее компьютере, программном или аппаратном обеспечению, но никак не здоровью.

Конечно, человека можно заразить аналогом компьютерного вируса, введя ему в подсознание определенную вредную идею, но это уже будет предметом изучения для отрасли нейролингвистического программирования (программирование человека на низком уровне).

Типы вирусов. Эффекты. Для выявления и удаления вируса прежде всего необходимо его однозначно классифицировать по ограниченным набором простых и верных признаков, которые не требуют глубокого анализа зараженных программ и элементов ОС. Существует неофициальная классификация, в которой название вируса отражает ту или иную его свойство:

1) по месту обнаружения или разработки вируса

(Jerusalem - снижение быстродействия компьютера, добавляет 1813 байтов к com-файлов и многократно заражает exe-файлы. Vienna - зацикливание при загрузке)

2) по содержанию текстовых строк в коде вируса (Vacsine - меняет расширение файла)

3) по эффекту действия вируса (Cascade - "выпадение" букв на нижнюю ленту экрана)

4) по длине вируса или ростом длины файла при заражении или по дате активации. (524, 648, 2000)

Отметим, что такая классификация является чисто практической и не может использоваться антивирусными средствами для идентификации вируса. Поскольку тот же вирус, например Cascade также может иметь другое название - 1 701, потому что добавляет 1 701 байтов к com-файлов. Вирус CIH, известный также как Чернобыль, потому что вирус активировался 26 апреля - день катастрофы на

Чернобыльской АБС. А вот вирус Frodo (размещает в загрузочный сектор день рождения хоббита Фродо из "Властелина колец" Толкиена) имеет очень много названий:

o 4 096 или 4К - по количеству добавленных байтов в com- и exe-файлов;

o 100-летний, поскольку добавляет 100 лет до даты создания зараженного файла;

o Stealth - так как при наличии вируса в памяти, изменение длины файлов при заражении не отображается.

Таким образом, только за такими свойствами вирусов отнести их к определенному типу будет очень сложно. Как решили эту проблему разработчики антивирусной продукции? Они начали использовать для классификации три основных элемента:

o классификационный код вируса;

o дескриптор вируса - формализованный список основных свойств;

o сигнатуру вируса.

Классификационный код вируса состоит из буквенного префикса, количественной характеристики и буквенного суффикса. Префикс указывает на место размещения головы вируса и состоит из букв и цифр. В соответствии с этим различают следующие типы вирусов:

o файловые - председатель размещается в com- и exe-файлах (бывают резидентными и нерезидентными, по аналогии с программными закладками, див.р.15). Символы C и E используются в приставке;

o бутовые (от "boot" - начальная загрузка) - председатель вируса размещается в секторе загрузки или в блоке MBR. Символы B, R или M в приставке;

o пакетные - председатель вируса представляет собой строку или программу на языке управления заданиями ОС. Префикс J;

o гибридные - обладают свойствами нескольких типов.

Характеристика вируса - это количественно измерительная свойство, которое допускает простое определение и различается для большинства типов вирусов. Например, для файловых вирусов как характеристика может использоваться величина прироста длины файла о заражении.

Суффикс используется в случае, если два разных вирусы имеют одинаковый префикс и характеристику.

Например, вирус с кодовым обозначением RCE-1 813 является бутовым, что инфицирует com- и exe-файлы, добавляя к ним 1 813 байт.

В процессе реализации вирус вызывает в компьютерной системе ряд эффектов, которые однозначно утверждают о его присутствии:

o искажения информации в файлах или таблицы размещения файлов (FAT);

o имитация нарушений в работе аппаратного обеспечения;

o создание звуковых и визуальных эффектов, например, сигналы точного времени через каждый час или окошко с надписью "Компьютер создан не для игр !!!"

o сообщение ложного содержания о состоянии системы, затрудняют работу пользователя;

o инициирования ошибок в программах или ОС;

o считывания из памяти и перемещения в другое место информации.

Черви и рекламные системы Adware. Червь - это программа, которая распространяется через компьютерную сеть и не оставляет своей копии на магнитном носителе. Червь использует механизм поддержки сети для определения узла, который может быть заражен. Затем с помощью тех же механизмов передает свое тело или его часть на этот узел и активизируется, либо ждет благоприятных условий. Благоприятным средой для распространения червя является сеть, где пользователи доверяют друг другу. Лучшим способом защиты от программ-червей является создание условий для невозможности несанкционированного доступа к сети.

У вируса и червя является общей способность к воспроизводству самих себя. Червь копирует себя при первой возможности. В отличие от вируса, червю не нужен носитель.

Червь может распространять себя с помощью почты, ICQ или других средств коммуникации. Авторы вирусов в последнее время стали все чаще использовать программы, которые сами по себе не являются вредными, но оставляют в системе троянскую программу или загружают ее из Интернета. Такие программы часто применяют и для установки без ведома пользователя так называемых Adware и Pornware программ, которые не являются вирусами, однако собирают информацию о пользователе. Adware - это программы, отражающие рекламу, иногда баннеры, без ведома и согласия пользователя. Pornware - программы, соединяются с платными сайтами "для взрослых" также без ведома и согласия пользователя.

Жадные программы (greedy programs). Они пытаются монополизировать какой-либо ресурс, не давая другим программам возможности использовать его. Непосредственный атаке в большинстве случаев подвергаются такие объекты системы, как процессор, оперативная память, устройства ввода-вывода.

Критическая ситуация может возникнуть тогда, когда "жадная" программа выполняет бесконечный цикл. Поскольку во многих ОС при использовании процессора для одной программы ограничен и контролируется системой, то "жадная" программа может перехватывать асинхронное к основной программе сообщение об окончании операций ввода-вывода и посылать запрос на новый ввод. Так можно достичь зацикливание без возможности вмешательства ОС. Такие атаки называют также асинхронными.

Другой вариант "жадной" программы - захват очень большого участка оперативной памяти. Это возможно, например, при последовательном размещении в ОП большого объема данных, поступающих с внешнего носителя (забивания памяти).

В области вирусов необходимо отметить, что в 2004 году впервые появились угрозы безопасности мобильных устройств. В июне был создан первый вирус для мобильных телефонов Саbir. Он представлял собой первую попытку - возможно ли вообще заразить ПО мобильного телефона? Оказалось, что да. Тогда в июле появились вирус Duts и троянская программа Вrador, ориентированные на платформу РоcketРС. Поскольку средства защиты мобильных устройств довольно слабы, то в недалеком будущем конфиденциальной информации на них будет угрожать существенная опасность.

 
< Предыдущая   СОДЕРЖАНИЕ   Следующая >
 
Предметы
Агропромышленность
Банковское дело
БЖД
Бухучет и аудит
География
Документоведение
Естествознание
Журналистика
Инвестирование
Информатика
История
Культурология
Литература
Логика
Логистика
Маркетинг
Математика, химия, физика
Медицина
Менеджмент
Недвижимость
Педагогика
Политология
Политэкономия
Право
Психология
Региональная экономика
Религиоведение
Риторика
Социология
Статистика
Страховое дело
Техника
Товароведение
Туризм
Философия
Финансы
Экология
Экономика
Этика и эстетика
Прочее