Проектирование программного обеспечения. Николаев С.В. - 140 стр.

UptoLike

Составители: 

140
6. Привязка к быстродействию отдельных компонентов вычислитель-
ной системы путем замера фактических временных характеристик: тактовой
частоты синхросистемы, скорости пересылки видеопамяти, временным за-
держкам в контроллере дисководов и т.п. Недостатки: при запуске защи-
щенной программы клавиша Turbo должна находиться в том же положении,
что и на момент инсталляции; многозадачный режим (например,
при работе
под управлением Windows) разрушает все временные соотношения в зави-
симости от количества открытых приложений; аналогично сказываются раз-
личия виртуального и реального режимов в процессоре Intel 386 и старше.
7. Привязка к логическим характеристикам раздела винчестера, в кото-
ром размещена программа: объем, тип и размер FAT, размер кластера. Не-
достаток: с большой вероятностью набор
логических характеристик может
повторяться на других компьютерах, оснащенных винчестером того же ти-
па.
8. Привязка к ключевой информации, помещенной в "хвосте" послед-
него кластера EXE-файла. Файл редко занимает точно целое число класте-
ров, поэтому в последнем кластере обычно остается неиспользованное про-
странство, которое при копировании с помощью команды COPY не перено-
сится.
Этим приемом очень часто пользуются вирусы и все антивирусные
программы первым делом чистят "хвосты" исполняемых файлов. Чтобы из-
бежать конфликта с антивирусами можно порекомендовать записывать
ключевую информацию в "хвост" какого-нибудь неисполняемого файла с
данными, который всегда сопровождает защищаемую программу (например,
конфигурационный файл). Но некоторые антивирусы все же чистят и "хво
-
сты" файлов с данными, хотя и значительно реже. Таким образом всегда
существует вероятность ложного срабатывания защиты после очередной
профилактики с помощью антивирусной программы.
9. Использование для записи ключевой информации ложного "плохо-
го" сектора. На физическом уровне диск (винчестер) в результате процесса
форматирования разбивается на дорожки (цилиндры), а каждая дорожка на
сектора
. При наличии сбойных секторов они изымаются из доступного про-
странства и на логическом уровне их прочесть нельзя (так как они не входят
ни в один кластер). Более того, нулевой цилиндр винчестера обычно не
включается в состав логических дисков (разделов) и найти свободный сек-
тор на нем обычно не составляет труда.
Недостаток: некоторые системные
программы (например, утилита-компрессор ADM) хранят в этой же зоне
свои пароли; не исключено, что некоторые вирусы также используют эту
зону винчестера. Это может привести к разрушению ключевой информации
и ложному срабатыванию защиты.