Главная · Поиск книг · Поступления книг · Top 40 · Форумы · Ссылки · Читатели

Настройка текста
Перенос строк


    Прохождения игр    
Demon's Souls |#13| Storm King
Demon's Souls |#12| Old Monk & Old Hero
Demon's Souls |#11| Мaneater part 2
Demon's Souls |#10| Мaneater (part 1)

Другие игры...


liveinternet.ru: показано число просмотров за 24 часа, посетителей за 24 часа и за сегодня
Rambler's Top100
Образование - Безруков Н.Н. Весь текст 1232.53 Kb

Компьютерная вирусология ч. 1

Предыдущая страница Следующая страница
1 ... 90 91 92 93 94 95 96  97 98 99 100 101 102 103 ... 106
используется для маркировки свободных кластеров, а поле первого кластера
используется для поля Media

                              Подкаталоги

     Подкаталог является обычным файлом со структурой, идентичной струк-
туре корневого каталога. В отличие от корневого каталога, размер которо-
го ограничен 7 секторами,  размеры подкаталога не лимитируются.  В  свою
очередь, подкаталог может содержать "подкаталоги".
     Каждый подкаталог содержит два элемента,  создаваемых MS DOS, кото-
рые  обеспечивают  координаты данного подкаталога в дереве иерархической
файловой системы.  Первым является элемент с именем ".",  указывающий на
первый кластер в самом подкаталоге,  а второй с именем ".." указывает на
первый кластер родителя данного каталога.  Эти два элемента также  имеют
установленный бит 4 байта атрибутов.

                           Удаление файлов

     Когда файл стирается с диска,  первая буква его имени заменяется на
Е5 и все элементы FAT, соответствующие занимаемым этим файлом кластерам,
обнуляются.  При занесении нового файла в каталог он  будет  размещен  в
первом свободном элементе. Таким образом, простого метода восстановления
удаленных файлов в MS DOS принципиально не существует.  В то  же  время,
поскольку информация в кластерах не уничтожается, принципиально возможно
восстановить файл путем просмотра всех свободных кластеров.
    Существуют методы  восстановления файлов с помощью системных утилит,
например PCTools,  но она правильно восстанавливает лишь те файлы, у ко-
торых номера кластеров в FAT расположены подряд по  возрастанию номеров.
PCTools  (и аналогичные ей утилиты) фактически читает из каталога бывший
элемент,  определяет по длине файла, сколько ему было выделено кластеров
и заполняет FAT.  Поэтому для успешного восстановления файла необходимо,
чтобы  дискета  или  винчестер  периодически   обрабатывались   утилитой
SpeedDisk из пакета Нортона, COMPRESS из пакета PC Shell или любой
другой аналогичной утилитой.

                Таблица разделов диска - Partition Table
                        (только для винчестера)

     Самый первый сектор твердого диска содержит так  называемый  Master
Boot Record (MBR). Название "главный бутсектор" (буквальный перевод
термина Master Boot Record -  главная загрузочная запись) связано
с тем, что MBR первым загружается в оперативную память, если загрузка
операционной системы выполняется с винчестера.

     MBR состоит из выполняемого кода и таблицы разделов.  Последняя
расположена в конце сектора  и состоит из четырех 16-байтовых элементов.
Информация в таблицу разделов заносится утилитой FDISK или аналогичной
ей несистемной утилитой.  Просматривать таблицу разделов удобнее всего с
помощью Norton Utilities.  Во время загрузки ROM-BIOS загружает главную
корневую запись и  передает управление на ее код.  Этот код считывает
таблицу разделов, чтобы определить раздел, помеченный как загружаемый
(Bootable). Затем в память считывается бутсектор из этого раздела и
ему передается управление.  Отсюда следует,  что  заражая  винчестер,
вирус  может заменять не только бутсектор,  но и таблицу разделов. И
действительно, существует несколько вирусов. использующих этот способ.

      0   1   2   3   4   5   6   7   8   9   A   B   C   D   E   F
    ЪДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВ
 00 ¦ начало кода начальной загрузки MBR
    АДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДґ
 10
    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДґ
. ...  ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...

    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДТДДДБДДДґ
1B0   конец кода начальной загрузки MBR                     є Первый
    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДЧДДДБДДДґ
1C0   раздел винчестера                                     є Второй
    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДЧДДДБДДДґ
1D0   раздел винчестера                                     є Третий
    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДОДДДБДДДґ
1E0   раздел винчестера                                     є Четвер-
    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДОДДДБДДДґ
1F0   тый раздел винчестера                                 є 55  AA¦
    ГДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДД†ДДДБДДДРДДДБДДДЩ

              Рис.11. Структура таблицы разделов винчестера


    ЪДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДВДДДДДДДТДДДТДДД·
 10                                                         єBotєHdSє
    ЦДДДБДДДТДДДБДДДТДДДБДДДТДДДБДДД†ДДДБДДДТДДДБДДД†ДДДБДДДЧДДДРДДДЅ
    єSec CylєSys HdEєSec Cylємладш   старш  ємладш   старш  є
    УДДДБДДДРДДДБДДДРДДДБДДДРДДДБДДД†ДДДБДДДРДДДБДДД†ДДДБДДДРДДДБДДДґ

                   Рис.12. Структура элемента раздела
(поля показаны в тех положениях, в которых они расположены в дампе)

            ЪДДД¬
  +0     1  ¦Boot     Флаг загрузки: 0=не загружаемый, 80h = загружаемый
            ГДДД†
  +1     1  ¦HdS¦     Начало раздела: номер головки
            ГДДД†ДДД¬
  +2     2  ¦Sec Cyl¦ Начало раздела: сектор/цилиндр корневого сектора
            ГДДД†ДДДЩ
  +4     1  ¦Sys¦     Код системы: 0=неизв., 1=DOS 12-бит FAT, 4=16-бит
            ГДДД†
  +5     1  ¦HdE¦     Конец раздела: номер головки
            ГДДД†ДДД¬
  +6     2  ¦Sec Cyl¦ Конец раздела: сектор/цилиндр последнего сектора
            ГДДДБДДД†ДДДВДДД¬
  +8     4  ¦ младш   старш ¦ Относительный номер начального сектора
            ГДДДБДДД†ДДДБДДДґ
 +0Ch    4  ¦ младш   старш ¦ Размер (число секторов)
            АДДДБДДДБДДДБДДДЩ
 +10h        начало следующего элемента раздела (или 0AA55h для послед-
             него элемента)


     Значения цилиндра и сектора занимают 10 и 6 бит соответственно:

[616]--Значения цилиндра и сектора занимают 10 и 6 бит соответственно:


        ЦFВEВDВCВBВAВ9В8†7В6Т5В4В3В2В1В0·
        єc c c c c c c c C Cєs s s s s sє
        УДБДБДБДБДБДБДБД†ДБДРДБДБДБДБДБДЅ

                        АДВДЩ
                          АД- биты, обозначенные большими буквами С
                              являются старшими, т.е. при дешифровке
                              номера цилиндра они приписываются слева,
                              а не справа


     Значение "относительного сектора" по смещению 8  в  каждом  разделе
эквивалентно цилиндру, дорожке и  сектору начального адреса раздела. От-
носительный сектор 0 совпадает с цилиндром 0,  дорожкой 0,  сектором  1.
Относительный номер сектора прирастает сначала по каждому сектору на го-
ловке, затем по каждой дорожке и, наконец, по каждому цилиндру.
     Применима формула:

отн_сек = (#Цил * сек_на_дор * дор_на_цил)+(#Гол * сек_на_дор)+(#Сек-1)

     Разделы винчестера начинаются с начала четного номера цилиндра, за
исключением первого раздела, который может начинаться с цилиндра 0,
дорожки 0, сектора 2 (поскольку сектор 1 - это главный бутсектор), а
обычно начинается со следующей дорожки, оставляя остальные сектора
нулевой дорожки пустыми. Последнее обстоятельство используется рядом
бутовых вирусов для хранения там своего хвоста, поэтому указанных
секторов рекомендуется периодически просматривать.





                                                          ПРИЛОЖЕНИЕ 7

          ИСПОЛНЯЕМЫЕ ФАЙЛЫ И СВЯЗАННЫЕ С НИМИ СИСТЕМНЫЕ БЛОКИ

               РАСПРЕДЕЛЕНИЕ ОПЕРАТИВНОй ПАМЯТИ В MS DOS

     Оперативная память в MS DOS распределяется в соответствии с
приводимой таблицей.
ЪДДДДДДДДДДВДДДДДВДДДВДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД¬
¦          ¦     ¦За-¦                                               ¦
¦  Адрес   ¦Длина¦ви-¦                                               ¦
¦ сегмент: ¦(де- ¦си-¦     Наименование и описание                   ¦
¦смещение) ¦сят.)¦мо-¦                                               ¦
¦          ¦     ¦сть¦                                               ¦
ЖНННННННННН‡ННННН‡ННН‡НННННННННННННННННННННННННННННННННННННННННННННННµ
¦0000:0000 ¦1024 ¦ - ¦ Таблица векторов прерываний:                  ¦
¦          ¦     ¦   ¦  256 4-байтовых адресов                       ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦0040:0000 ¦ 256 ¦ - ¦ Область данных ROM-BIOS                       ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦0050:0000 ¦ 512 ¦ - ¦ Область данных DOS                            ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦xxxx:0000 ¦ 8928¦Ver¦ Код BIOS  (считанный из IO.SYS или IBMBIO.COM ¦
¦          ¦     ¦   ¦ на диске загрузки)                            ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦xxxx:0000 ¦29920¦Ver¦Обработчики прерываний DOS,                    ¦
¦          ¦     ¦   ¦ включая INT 21h  (MSDOS.SYS или IBMDOS.COM)   ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦xxxx:0000 ¦     ¦Con¦ DOS: буфера, области данных                   ¦
¦          ¦     ¦   ¦ и устанавливаемые драйверы                    ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦xxxx:0000 ¦     ¦Ver¦ Резидентная порция COMMAND.COM                ¦
¦          ¦     ¦   ¦ (стандартный - около 4K длиной)               ¦
¦          ¦     ¦   ¦ включает обработчики                          ¦
¦          ¦     ¦   ¦ INT 22h, INT 23h и INT 24h                    ¦
ЖНННННННННН‡ННННН‡ННН‡ННННННННННННННННННННННННННННННННННННННННННННННН‡ННННННННН»
¦xxxx:0000 ¦     ¦   ¦ Резидентные программы и данные                ¦ область є
¦          ¦     ¦   ¦ (постоянно резидентные утилиты и т.д.         ¦ пользо- є
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ вателя  є
¦xxxx:0000 ¦     ¦   ¦ Текущая выполняемая прикладная                ¦         є
¦          ¦     ¦   ¦ программа (.COM или .EXE).                    ¦         є
¦          ¦     ¦   ¦ Программе в начале выделяется                 ¦         є
¦          ¦     ¦   ¦ память до 640K (адреса A000:0000)             ¦         є
¦          ¦     ¦   ¦ или до максимального для данного              ¦         є
¦          ¦     ¦   ¦ компьютера адреса                             ¦         є
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ         є
¦xxxx:0000 ¦     ¦Con¦ Транзитная часть  COMMAND.COM (содержит интер-¦         є
¦          ¦     ¦   ¦ претатор команд, внутренние команды и т.п.    ¦         є
¦          ¦     ¦   ¦ Перезагружается, если кто-то перекроет ее.    ¦         є
ЖНННННННННН‡ННННН‡ННН‡ННННННННННННННННННННННННННННННННННННННННННННННН‡НННННННННј
¦A000:0000 ¦     ¦ - ¦ EGA-память для некоторых видео режимов        ¦Граница
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ640К зоны
¦B000:0000 ¦     ¦ - ¦ Видео память монохромного адаптера            ¦
¦          ¦     ¦   ¦ и адаптера типа Гекулес (Hercules)            ¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦B800:0000 ¦     ¦ - ¦ Видео память CGA                              ¦
¦          ¦     ¦   ¦ (также страница 2 для Hercules)               ¦
ЖНННННННННН‡ННННН‡ННН‡НННННННННННННННННННННННННННННННННННННННННННННННµ
¦C800:0000 ¦     ¦ - ¦ Внешний код ROM. ROM-BIOS ищет здесь          ¦
¦   до     ¦     ¦   ¦ (в 2K-блоках) код, выполняемый при загрузке.  ¦
¦E000:0000 ¦     ¦   ¦ Этот код обычно инсталлирует обработчик       ¦
¦          ¦     ¦   ¦ устройства (дополнит. BIOS винчестера или EGA)¦
ГДДДДДДДДДД†ДДДДД†ДДД†ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДґ
¦E000:0000 ¦     ¦ - ¦ Модули ROM материнской платы                  ¦
¦   до     ¦     ¦   ¦ в блоках по 64K (только AT)                   ¦
¦E000:FFFF ¦     ¦   ¦                                               ¦
Предыдущая страница Следующая страница
1 ... 90 91 92 93 94 95 96  97 98 99 100 101 102 103 ... 106
Ваша оценка:
Комментарий:
  Подпись:
(Чтобы комментарии всегда подписывались Вашим именем, можете зарегистрироваться в Клубе читателей)
  Сайт:
 
Комментарии (3)

Реклама