Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Тема 4.2. Способы заражения программ.




· метод приписывания. Код вируса приписывается к концу файла заражаемой программы, и тем или иным способом осуществляется переход вычислительного процесса на команды этого фрагмента;

· метод оттеснения. Код вируса располагается в начале зараженной программы, а тело самой программы приписывается к концу.

· метод вытеснения. Из начала (или середины) файла «изымается» фрагмент, равный по объему коду вируса, и приписывается к концу файла. Сам вирус записывается в освободившееся место. Разновидность метода вытеснения — когда оригинальное начало файла не сохраняется вообще. Такие программы являются «убитыми насмерть» и не могут быть восстановлены никаким антивирусом.

· прочие методы. Сохранение вытесненного фрагмента программы в «кластерном хвосте» файла и пр.

Структура СОМ- и ЕХЕ-программ

СОМ-программа представляет собой участок кода и данных, начинающийся с исполняемой команды и занимающий не более 64Кбайт. Например, такую структуру имеет командный процессор СОММАND.СОМ операционной системы МSDOS, версий до 6.22 включительно.

ЕХЕ-программа имеет гораздо более сложную структуру. В начале файла ЕХЕ-программы располагается заголовок длиной 28 байт, содержащий следующие данные:

· MZш — признак ЕХЕ-файла;

· PartPag — длина файла по модулю 512;

· РаgeCnt — длина файла в 512-байтовых страницах;

· ReloCnt — размер настроечной таблицы;

· HdrSize — размер заголовка;

· MinMen — минимум требуемой памяти;

· МахМеn — максимум требуемой памяти;

· Relo-SS — относительный сегмент стека;

· ExeSP — смещение указателя стека;

· ChkSum — контрольная сумма файла;

· ЕхеIР — смещение точки входа;

· ReloCS — относительный сегмент точки входа;

· TableOff— смещение настроечной таблицы;

· Overlay — номер оверлейного сегмента.

Поля ReloCS и ЕхеIР определяют местоположение точки входа в программу, поля ЕхеSР и ReloSS — местоположение стека, поля PartPag и PageCnt — размер корневого сегмента программы.

Вычисленный по PartPag и PageCnt; размер программы может не совпадать с реальным размером файла. Такие программы называются «сегментированными» или «содержащими внутренние оверлеи». Грамотные авторы вирусов избегают заражать такие программы.

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


Поделиться:

Дата добавления: 2014-12-23; просмотров: 141; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты