ПНЗ (ПЗУ) - ВИРУС - ПНЗ (диск) - СИСТЕМА

Была рассмотрена схема функционирования простого бутового вируса, живущего в загрузочных секторах дискет. Как правило, вирусы способны заражать не только загрузочные секторы дискет, но и загрузочные секторы жестких дисков — винчестеров. При этом в отличие от дискет на винчестере имеются два типа загрузочных секторов, содержащих программы начальной загрузки, которые получают управление. При загрузке компьютера с винчестера первой берет на себя управление программа начальной загрузки в МВR (главная загрузочная запись). Если жесткий диск разбит на несколько разделов, то лишь один из них помечен как загрузочный (bооt). Программа начальной загрузки в МВR находит загрузочный раздел винчестера и передает управление на программу начальной загрузки этого раздела. Код последней совпадает с кодом программы начальной загрузки, содержащейся на обычных дискетах, а соответствующие загрузочные секторы отличаются только таблицами параметров. Таким образом, на винчестере имеются два объекта атаки загрузочных вирусов — программа начальной загрузки в МВR и программа начальной загрузки в bооt-секторе загрузочного диска.

Приведем обобщенный пример структуры программы-вируса. Она состоит из псевдокоманд DOS и подпрограмм — маленьких внутренних программ (составляющие их инструкции хранятся отдельно от главной программы), выполняющих некоторые специальные функции всякий раз, когда к ним обращаются.

this:=findfile

LOAD (this)

loc := search(this)

insert (loc)

STORE (this)

Подпрограмма под названием findfile обращается к каталогу выполняемых файлов или программ на диске, берет произвольное имя файла и присваивает имя этого файла переменной this (этот). В следующей строке программы используется псевдокоманда DOS LOAD (загрузить), с помощью которой файл помещается в оперативную память компьютера.

Другая подпрограмма под названием search (поиск) просматривает только что загруженную программу в поисках инструкции, которая могла бы послужить подходящим местом, куда можно занести вирус. Когда процедура search находит такую инструкцию, она определяет соответствующий номер строки и присваивает его в качестве значения переменной lос. Теперь все готово для того, чтобы подпрограмма-вирус могла проникнуть в произвольно выбранную из каталога программу.

Подпрограмма insert (вставить) заменяет выбранную инструкцию другой (например такой, как вызов подпрограммы). Замененная инструкция передает управление блоку команд, составляющих главное тело подпрограммы-вируса, которая присоединяется к концу программы. Затем к концу добавленной подпрограммы присоединяется инструкция, возвращающая управление «зараженной» программе на инструкцию, следующую за вставленной. Таким образом, когда выполняется подпрограмма-вирус, выполняется также и подмененная инструкция зараженной программы. Исходная программа работает так, будто ничего особенного не произошло. Однако на самом деле подпрограмма-вирус воспользовалась каким-то мгновением, чтобы захватить власть над средствами операционной системы и прицепить свою копию к еще одной программе, хранящейся на диске. Приведенный пример демонстрирует лишь один из приемов, используемых авторами вирусов. В настоящее время специалисты выделили и другие приемы, отличающиеся друг от друга идеями и изощренностью выполнения.








Дата добавления: 2015-08-21; просмотров: 656;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.