Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

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

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

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

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

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

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

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

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

● MZui — признак ЕХЕ-файла;

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

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

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

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

● MinMem — минимум требуемой памяти;

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

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

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

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

● ExelP — смещение точки входа;

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

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

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

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

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

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

Стандартные методы заражения.

Случай СОМ-программы. Тело вируса приписывается к концу файла, где-то внутри его сохраняются несколько (обычно, три) байтов оригинального начала программы, на их место записываются команды перехода на начало вируса. Когда вирус заканчивает выполнение предусмотренных им действий, он восстанавливает оригинальные байты начала программы и передает туда управление.

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

<== предыдущая лекция | следующая лекция ==>
Методы криптографического преобразования данных | Как работает вирус
Поделиться с друзьями:


Дата добавления: 2014-01-20; Просмотров: 1229; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.012 сек.