Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Цуканов Б.И. "Время в психике человека" (Медицина)

Суворов С. "Танк Т-64. Первенец танков 2-го поколения " (Военная промышленность)

Нестеров В.А. "Основы проэктирования ракет класса воздух- воздух и авиационных катапульных установок для них" (Военная промышленность)

Фогль Б. "101 вопрос, который задала бы ваша кошка своему ветеринару если бы умела говорить" (Ветеринария)

Яблоков Н.П. "Криминалистика" (Юриспруденция)
Реклама

Азбука хакера 3. Компьютерная вирусология - Собейкис В.Г.

Собейкис В.Г. Азбука хакера 3. Компьютерная вирусология — М.: Майор, 2006. — 512 c.
ISBN 5-98551-013-1
Скачать (прямая ссылка): hakeriazbukahakera2006.djvu
Предыдущая << 1 .. 10 11 12 13 14 15 < 16 > 17 18 19 20 21 22 .. 123 >> Следующая

Никто из здравомыслящих людей не использует эти функции. Они - атавизм,
оставшийся от СР/М. Вместо них применяли функции 3DH, ЗЕН, 3FH, 40Н и т.
д., введенные разработчиками DOS 2.00. Но!!!!... эти старые функции все
же можно использовать, и необходимые данные в PSP по-прежнему
сохраняются.
Вот почему PSP стал сокровищницей хакеров и пробиркой, в которой
вирусмейкеры выращивают своих маленьких "зверушек".
ля
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
Табл. 2. Формат префикса программного сегмента
Офсет Размер; Описание
ОН 2 Инструкция Int 20Н
2 2 |Адрес последнего назначенного сегмента , ((вершина доступной
памяти системы)
4 1 (Зарезервировано (может быть нулевым)
5 5 {Удаленный вызов диспетчера функций DOS
А 4 (Вектор Int 22Н (прерывание программы)
В 12 i 4 (Вектор Int 23Н (управление Ctrl-C) ^ (Вектор Int 24Н
(управление критической {ошибкой)
il6 22 (Зарезервировано
|2С 2 (Адрес сегмента области среды DOS
|2Е 34 (Зарезервировано
50 3 (Инструкция Int 21Н / RETF
53 9 (Зарезервировано
5С 16 (Контроль файла - область первого параметра
tec 20 (Контроль файла - область второго параметра
80 128 DTA по умолчанию (длина в байтах области командной строки)
100 - Начинает СОМ-программу
В то же время другие части PSP являются очень даже полезными.
Например, все, что находится после имени программы в командной строке для
вызова СОМ-программы, сохраняется в PSP, начиная с офсета 80Н.
Если мы вызовем нашу программу FLY следующим образом:
C:\FLYHellothere! то PSP будет выглядеть примерно так:
лл
2750:0000 CD 20 00 9D 00 9А F0 FE-1D F0 4F 03 85 21 8А 03.......0..!..
2750:0010 85 21 1703 85 2174 21-01 0801 00 02FFFFFF.!...!t!.........
2750:0020 FF FF FF FF FF FF FF FF-FF FF FF FF 32 27 4C 01.......2'L
2750:0030 45 26 14 00 18 00 50 27-FF FF FF FF 00 00 00 00 ....
2750:0040 06 1400 0000 00 00 00-00 00 00 00 00 0000 00..............
2750:0050 CD 21 CB 00 00 00 00 00-00 00 00 00 00 48 45 4C .!........HEL
2750:0060 4C 4F 20 20 20 20 20 20-00 00 00 00 00 54 48 45 LO THE
2750:0070 5245 21 20 20 20 20 20-00 00 00 00 00 00 00 00 RE! .......
2750:0080 OE 20 48 65 6C 6C 6F 20-74 68 65 72 65 21 20 OD . Hello there!.
2750:0090 6F 20 74 68 65 72 65 21 -20 OD 61 72 64 OD 00 00 О there!
.ard...
2750:00AO 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00...........
2750:00BO 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00...........
2750:00C0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00...........
2750:00DO 00 000000 00 0000 00-00 0000 0000 00 0000.................
2750.00E0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00...........
2750:00F0 00 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00...........
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
В 80Н мы находим значение ОЕН, которое является длиной •"Hello there!",
за которой следует сама строка, обрываемая <CR>-0DH. Кроме того, PSP
содержит адрес системной среды, хранящей все "установленные" переменные в
AUTOEXEC.BAT, а также путь, по которому DOS ищет исполняемые файлы, когда
вы напечатали имя в командной строке. Этот путь очень важен для вируса,
так как о" говорит ему, где находится множество вкусных и сочных
программ, ожидающих инфицирования.
Последним шагом, совершаемым DOS перед выполнением COM-файла, является
установка стека. Обычно стек размещается на самой вершине сегмента, в
котором обитает СОМ-программа (см. рис. 2). Первые два байта стека всегда
устанавливаются DOS таким образом, чтобы простая инструкция RET могла
остановить COM-программу и вернуть контроль DOS (еще один анахронизм от
СР/М). Эти байты устанавливаются в ноль, чтобы вызвать прыжок к офсету 0,
где в PSP хранится инструкция int 20Н. Инструкция int 20Н возвращает
контроль к DOS. Затем DOS устанавливает указатель стека sp до FFFE Hex и
прыгает к офсету 100Н, вызывая выполнение затребованной СОМ-программы.
Вот так работает СОМ-программа. Разобравшись с ней, мы займемся созданием
простейшего вируса.
SH-
IP
Рис. 2. Карта памяти перед выполнением СОМ-файла
urrrrn
Область-стека
Неинициализи-
рованные
данные
Образ
СОМ-файла
PSP
46
ГЛАВА 2. Самовоспроизводство
Переписывающие вирусы
Переписывающие вирусы переписывают свои жертвы. Это означает, что
зараженные программы уже не будут выполняться, потому что вирус заменил
их код своим кодом. Когда пользователь пытается выполнить зараженную
программу, вместо нее выполняется вирус. Он размножается и при совпадении
заданных условий показывает сообщение или разрушает данные. Это выглядит
так:
Программа +
Вирус =
Вирусамма
Рис. 3. Воздействие перезаписываюицего вируса на программу
Давайте посмотрим, что делает переписывающий вирус:
1. Находит подходящий файл.
2. Открывает его для чтения/записи.
3. Записывает вирус в файл.
4. Закрывает файл.
5. Вирус завершает действие и передает контроль DOS.
А если найденный файл уже инфицирован? В случае переписывающих вирусов
этот фактор не важен. Но если вы не хотите, чтобы ваш вирус по сто раз
заражал один и тот же файл, мы позже что-нибудь придумаем. А пока
Предыдущая << 1 .. 10 11 12 13 14 15 < 16 > 17 18 19 20 21 22 .. 123 >> Следующая