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

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

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

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

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

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

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

сектору корневой директории. Это оставляет место лишь для 32 файлов.
На 1.44 Мб-дискетах место остается только для 16 файлов.
На 720К-дискетах мы имеем перед вирусом 64 файла.
оло
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
Резидентура в памяти
Вирус Kilroy не был эффективным, потому что он мог инфицировать в
загрузочное время только один диск В: при вставленной дискете.
Естественно, он был бы более проворным, если бы инфицировал дискеты в
любой драйве даже через несколько часов после старта машины. Но для этого
вирус должен стать резидентом памяти. Вначале такая возможность казалась
невероятной.
Во время запуска загрузочного сектора DOS еще не загружена, поэтому мы не
можем использовать вызов int 21h с последующим вовлечением функции TSR.
Мы не можем манипулировать блоками контроля памяти, потому что они еще не
существуют. Тем не менее, хакеры и вирусмейкеры нашли решение проблемы.
Они научились делать загрузочный центр резидентным, манипулируя данными
BIOS.
В 0000:0413Н BIOS устанавливает переменную, которую мы можем назвать
MEM_SIZE. Это слово содержит размер условной памяти (в килобайтах) -
обычно 640. DOS использует ее для создания структур контроля памяти.
Оказалось, что если изменить это число, то DOS признает его, и Windows
также сочтет его верным. То есть, если программа вычтет 2 из MEM_SIZE, в
памяти появится 2К-дырка (в сегменте 9F80H для 640К условной памяти),
которая будет не затронута DOS и другими программами. Значит, загрузочный
сектор может стать резидентом памяти, сократив MEM_SIZE и копировав себя
в образовавшуюся дыру.
Вирус Stoned использует данный метод. Сначала он получает MEM_SIZE и
вычитает из него 2:
MOV AX,DS:[MEM_SIZE];получаем размер памяти в 1К блоках DEC АХ ; вычитаем
из него 2К DEC АХ
MOV DS:[MEM_SIZE],AX -.сохраняем результат в том же месте
Затем вирус рассчитывает сегмент, где находится начало дыры в памяти:
MOV CL.6 ; конвертируем размер памяти к значению
SHL AX.CL ;сегмента
MOV ES.AX ;и помещаем его в es
97п
ГЛАВА 6. Инфицирование загрузочного сектора
Далее вирус копирует себя в эту дыру:
PUSH CS
POP DS ;ds=cs=7C0H из дальнего прыжка XOR SI,SI ;si=di=0 MOV Dl.SI CLD
REP MOVSB ;передвигаем вирус в верхнюю память
Затем вирус прыгает в дыру, передавая контроль своей копии: JMP DWORD PTR
CS:[HIMEM_JMP] ;переход
Для инфицирования дискеты после процесса запуска наш ласковый "зверек"
перехватывает прерывание 13Н дисковых служб BIOS. Затем он проверяет все
попытки чтения дискеты или записи на дискету. Чтобы понять дальнейший
процесс, давайте быстренько вернемся к перехвату прерывания 13Н и
посмотрим, как производится заражение жестких дисков.
Инфицирование жестких дисков
В отличие от вируса Kilroy, Stoned может быстро заразить жесткий диск.
Так как последовательность стартовых операций, через которые проходит
жесткий диск, отличается от процессов, происходящих в дискете, мы должны
бросить на нее поверхностный взгляд. Обычный незаряженный жесткий диск
всегда содержит, как минимум, два загрузочных сектора.
Первый является обычным загрузочным сектором операционной системы,
который мы уже встречали в дискетах.
Второй называется Master Boot Sector (главным загрузочным сектором) или
Master Boot Record (главной загрузочной записью).
Этот сектор, по сути, является загрузочным сектором, независимым от
операционной системы. Его работа заключается в загрузке загрузочного
сектора операционной системы и его последующем выполнении. Он был
придуман по той причине, что жесткий диск
П-7Ч
Варфоломей Собейкис. АЗБУКА ХАКЕРА-3
достаточно большой, чтобы содержать несколько операционных систем.
Например, вы можете установить на одном жестком диске DOS, OS/2 и
Unixall. Master Boot Sector делает возможным установку четырех разных
операционных систем на одном диске. По вашему указанию он загружает и
выполняет любую из них (хотя это требует дополнительного программного
обеспечения - например, загрузочного администратора - boot manager).
Загрузка ВЮ8
загрузочный сектор раздела
Загрузка загрузочного сектора раздела эагвдочм^й'Сектд^ОО^
загрузочный сектор Dus загрузка поч
(2) (3)
Рис. 16. Загрузочный процесс жесткого диска
Для загрузки различных операционных систем диск делится на четыре
раздела. Раздел - это часть диска, определяемая числом
цилиндра/головки/сектора, где она начинается, и числом
цилиндра/головки/сектора, где она кончается.
Процесс деления выполняется программой FDISK в DOS. Все FDISK
устанавливают 64-байтовую область в Master Boot Sector, известную как
Таблица разделов. Код в Master Boot Sector читает Таблицу разделов и
определяет, где искать загрузочный сектор, который он должен загрузить.
Таблица разделов содержит четыре 16-байтовые записи, которые описывают
четыре раздела на диске. Структура этих записей показана в табл. 13.
Раздел активизируется настройкой первого байта записи до 80Н. Неактивные
разделы имеют в первом

ГЛАВА 6. Инфицирование загрузочного сектора
Предыдущая << 1 .. 64 65 66 67 68 69 < 70 > 71 72 73 74 75 76 .. 123 >> Следующая