
- •Раздел 1. Программное обеспечение для защиты информации
- •1.1. Основные термины информационной безопасности
- •1.2 Организация защиты информации программными средствами
- •Подмена доверенного объекта или субъекта распределенной вс
- •Внедрение в распределенную вс ложного объекта путем использования недостатков алгоритмов удаленного поиска
- •Селекция потока информации и сохранение ее на ложном объекте рвс
- •Модификация информации
- •Подмена информации
- •1.3. Специальное программное обеспечение для защиты информации
- •Защита программ на жестком диске
- •Защита программ от трассировки
- •1.4. Анализ использования программного обеспечения в области безопасности информации
- •Глава 2. Построение информационной системы на основе анализа работы программ информационной безопасности
- •Начальная битовая перестановка (ip).
- •Конечная битовая перестановка (ip–1).
- •Расширение 32-битового блока до 48 бит (e).
Защита программ на жестком диске
Обычно процесс установки защищенного от копирования программного продукта выглядит следующим образом:
-
в НГМД вставляется установочная дискета; с нее запускается программа установки;
-
программа установки уменьшает на единицу счетчик выполненных установок (этот счетчик может находиться в нестандартном секторе или в каком-нибудь другом месте на дискете);
-
если количество установок, выполненных с этой дискеты, превысило максимально допустимое, на экран выдается сообщение об этом и работа программы установки завершается;
-
если ресурс количества установок еще не исчерпан, выполняется копирование файлов программного продукта на жесткий диск и другие необходимые действия;
-
выполняется настройка программного продукта на параметры используемого компьютера.
Последний шаг необходим для того чтобы защищенный от копирования программный продукт стало невозможно перенести на другой компьютер, используя программы копирования файлов или разгрузки дисков на дискеты либо магнитные ленты с последующим восстановлением на жестком диске другого компьютера.
В этом разделе книги мы опишем несколько методов настройки программного обеспечения на конкретный компьютер:
-
привязка файлов программного продукта к их физическому расположению на диске (метод основан на том, что при восстановлении файлов на другом компьютере они будут располагаться в других секторах диска);
-
запись в неиспользуемый участок последнего кластера, распределенного файлу, контрольной информации (при выгрузке и восстановлении файлов эти неиспользуемые участки файлов пропадают);
-
привязка программы к конкретной версии BIOS, при этом используется дата трансляции BIOS и метод контрольных сумм;
-
проверка производительности отдельных подсистем компьютера.
Первый способ предполагает исследование расположения какого-либо достаточно длинного файла, записанного на диск в процессе установки на предмет определения его расположения на диске.
Программа установки, пользуясь таблицей размещения файлов FAT , определяет список кластеров, распределенных файлу и записывает этот список в конец защищаемого файла или в отдельный файл. Можно использовать, например, файл конфигурации, предназначенный для хранения текущих параметров программного пакета. Список кластеров можно зашифровать, сложив его с каким-либо числом, например, с использованием логической операции "ИСКЛЮЧАЮЩЕЕ ИЛИ".
После запуска программный продукт определяет расположение защищенного файла на диске и сравнивает его с записанным при установке. Если расположение изменилось - запущена незаконная копия.
Запись контрольной информации в неиспользуемый участок файла сделает невозможным копирование программного продуктами средствами разгрузки дисков, но по-прежнему остается возможность использования программ копирования содержимого диска по секторам.
Метод проверки версии или контрольных сумм программы BIOS пригоден для защиты от копирования между компьютерами, содержащими разные версии BIOS. Однако при покупке партии компьютеров все они почти наверняка будут иметь одинаковую систему BIOS, поэтому, хотя этот метод достаточно прост, его эффективность относительно невысока.
Последний метод - проверка производительности отдельных подсистем компьютера - кажется нам наиболее пригодным, так как такие характеристики, как быстродействие диска или процессора являются в достаточной степени уникальными для каждого конкретного компьютера.