Профтемы студенту и преподавателю
Taketop.ru
СТУДЕНТУ И ПРЕПОДАВАТЕЛЮ
лекции по дисциплинам
Информатика и вычислительная техника :: Информационная безопасность
Структура СОМ- и ЕХЕ-программ
СОМ-программа представляет собой участок кода и данных, начинающийся с исполняемой команды и занимающий не более 64Кбайт. Например, такую структуру имеет командный процессор СОММАND.СОМ операционной системы МS-DOS, версий до 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. В этой таблице хранятся адреса тех слов в коде программы, которые модифицируются операционной системой во время загрузки программы.
Случай СОМ-программы. Тело вируса приписывается к концу файла, где-то внутри его сохраняются несколько (обычно, три) байтов оригинального начала программы, на их место записываются команды перехода на начало вируса. Когда вирус заканчивает выполнение предусмотренных им действий, он восстанавливает оригинальные байты начала программы и передает туда управление.
Случай ЕХЕ-программы. Тело вируса приписывается к концу файла, в заголовке его модифицируются значения полей, определяющих местоположение точки входа и размер программы (иногда. еще -- местоположения стека). В результате управление получает вирусный код. По окончании работы вирус, используя сохраненные при заражении значения измененных полей, осуществляет переход на оригинальное начало программы.
Работы, представленные на сайте http://taketop.ru, предназначено исключительно для ознакомления. Все права в отношении работ и/или содержимого работ, представленных на сайте http://taketop.ru, принадлежат их законным правообладателям. Администрация сайта не несет ответственности за возможный вред и/или убытки, возникшие или полученные в связи с использованием работ и/или содержимого работ, представленных на сайте http://taketop.ru
Рейтинг@Mail.ru
Сайт управляется SiNG cms © 2010-2015