Рассмотрим схему функционирования очень простого загрузочного вируса, заражающего дискеты.
Что происходит, когда вы включаете компьютер? Первым делом управление передается программе начальной загрузки, которая хранится в постоянно запоминающем устройстве (ПЗУ) т.е. ПНЗ ПЗУ.
Эта программа тестирует оборудование и при успешном завершении проверок пытается найти дискету в дисководе А:
Всякая дискета размечена на т.н. секторы и дорожки. Секторы объединяются в кластеры, но это для нас несущественно.
Среди секторов есть несколько служебных, используемых операционной системой для собственных нужд (в этих секторах не могут размещаться ваши данные). Среди служебных секторов нас пока интересует один - т.н. сектор начальной загрузки (boot-sector).
В секторе начальной загрузки хранится информация о дискете - количество поверхностей, количество дорожек, количество секторов и пр. Но нас сейчас интересует не эта информация, а небольшая программа начальной загрузки (ПНЗ), которая должна загрузить саму операционную систему и передать ей управление.
Таким образом, нормальная схема начальной загрузки следующая:
ПНЗ (ПЗУ) - ПНЗ (диск) - СИСТЕМА
Теперь рассмотрим вирус. В загрузочных вирусах выделяют две части - т.н. голову и т.н. хвост. Хвост, вообще говоря, может быть пустым.
Пусть у вас имеются чистая дискета и зараженный компьютер, под которым мы понимаем компьютер с активным резидентным вирусом. Как только этот вирус обнаружит, что в дисководе появилась подходящая жертва - в нашем случае не защищенная от записи и еще не зараженная дискета, он приступает к заражению. Заражая дискету, вирус производит следующие действия:
выделяет некоторую область диска и помечает ее как недоступную операционной системе, это можно сделать по-разному, в простейшем и традиционном случае занятые вирусом секторы помечаются как сбойные (bad)
копирует в выделенную область диска свой хвост и оригинальный (здоровый) загрузочный сектор
замещает программу начальной загрузки в загрузочном секторе (настоящем) своей головой
организует цепочку передачи управления согласно схеме.
Таким образом, голова вируса теперь первой получает управление, вирус устанавливается в память и передает управление оригинальному загрузочному сектору. В цепочке
ПНЗ (ПЗУ) - ПНЗ (диск) - СИСТЕМА
появляется новое звено:
ПНЗ (ПЗУ) - ВИРУС - ПНЗ (диск) - СИСТЕМА
Мы рассмотрели схему функционирования простого бутового вируса, живущего в загрузочных секторах дискет. Как правило, вирусы способны заражать не только загрузочные секторы дискет, но и загрузочные секторы винчестеров. При этом в отличие от дискет на винчестере имеются два типа загрузочных секторов, содержащих программы начальной загрузки, которые получают управление. При загрузке компьютера с винчестера первой берет на себя управление программа начальной загрузки в MBR (Master Boot Record - главная загрузочная запись). Если ваш жесткий диск разбит на несколько разделов, то лишь один из них помечен как загрузочный (boot). Программа начальной загрузки в MBR находит загрузочный раздел винчестера и передает управление на программу начальной загрузки этого раздела. Код последней совпадает с кодом программы начальной загрузки, содержащейся на обычных дискетах, а соответствующие загрузочные секторы отличаются только таблицами параметров. Таким образом, на винчестере имеются два объекта атаки загрузочных вирусов - программа начальной загрузки в MBR и программа начальной загрузки boot-секторе загрузочного диска.
Статьи по теме:
Компьютерные сетиБлокнот: Поиск и замена Структура 3-магистрального МПОсобенности драйверов PCI и CompactPCI устройствПопулярно Про Ddos-АтакиЭлектромагнитные поляКонсоль восстановления Краткий обзор антивирусных программУголовно-правовой анализ ст? 273 гл? 28 УК РФ "Создание: распространение и использование вредоносных программ для ЭВМ"Поиск данных по ключевым словам (WAIS)Последовательный и прямой доступРасследование нарушения правил эксплуатации ЭВМ: системы ЭВМ или их сетиКонцепция развития информационного общества в ЕвропеГосударственное регулирование информатизации УкраиныУправление визуализацией Понятие и концепции информационного общества Архитектура украинского сегмента сети InternetТипы Java программПреобразование рисунка Запуск WindowsЗапись фильма с помощью командной строки Оптимальное время жизни кэша для Joomla CMSСпособы просмотра документа Эрг-упражнения для улучшения осанкиКонтроллеры и шиныМетрики Кода И Их Практическая Реализация В Subversion И Clearcase. Часть 1 - МетрикиРазработка и распространение компьютерных вирусов3Ds Max 2008 (Rip)Plasma monitorsWordPad: Выделение текста гарнитурой шрифта Чарльз БэббиджМеждународная сеть INTERNETОборотная сторона медали SpywareСОЗДАНИЕ БАЗ ДАННЫХ И ВВОД ДАННЫХСредства разработкиРежимы работы ЕС ЭВМАда Августа БайронКоммерческое использованиеСТАДИИ СОЗДАНИЯ САПРМой Милый Ослик Или Настройка EmuleДополнительные программы Microsoft Internet ExplorerМеханический подходMicrosoft Great Plains для клиентов в России: как найти консультанта и наиболее частые вопросыКак сделать правильный выбор? 1С:Предприятие 7.7. или 8.0Приостановка печати всех документов Черный Баннер - 25й кадр интернетаWordPad: Вставка времени и даты Сброс дисковой системыКомпьютер-помощник конструктораСамый востребованный софт!Формат Магнитной Записи Lto (Linear Tape Open)КонвертПРОБЛЕМА ПРЕДСТАВЛЕНИЯ ЗНАНИЙ В КОМПЬЮТЕРНЫХ СИСТЕМАХОбъектная модель JavaОсновные черты NetWare 3.x - 4.x