Слайд 2
Методы внедрения программных закладок
Маскировка под «полезное» ПО.
Маскировка под
модуль расширения возможностей программной среды (драйвер, DLL).
Подмена уже установленного
ПО.
Прямое ассоциирование с уже установленным ПО.
Косвенное ассоциирование с ПО ядра ОС в оперативной памяти.
Слайд 3
Причины, способствующие внедрению программных закладок
Разрешение пользователю доступа по
записи к критичному системному ресурсу.
Сохранение (установка) уязвимой сетевой службы.
Оставление
незаблокированной консоли администратора.
Требования высокопоставленных пользователей и т.д.
Слайд 4
Признаки внедрения программных закладок
Изменение конфигурационных файлов ОС (например,
реестра Windows) для обеспечения автозапуска закладки при загрузке ОС.
Использование
для связи с нарушителем протокола TCP/IP с большим номером порта.
Создание после своей загрузки отдельного процесса.
Отсутствие длительное время после загрузки активных действий.
Слайд 5
Признаки внедрения программных закладок
Оставление следов в файле аудита
и др.
Слайд 6
Технология «руткитов»
Изначально словом «руткит» обозначался набор инструментов, позволяющий
нарушителю входить в систему таким образом, чтобы системный администратор
не мог его видеть, а система - регистрировать.
Руткиты могут применяться в коммерческих продуктах для защиты от несанкционированного копирования.
Слайд 7
Технология «руткитов»
Практически все современные версии руткитов могут скрывать
от пользователя файлы, папки и параметры реестра, работающие программы,
системные службы, драйверы и сетевые соединения.
В основе функционирования руткитов лежит модификация данных и кода программы в памяти операционной системы.
Слайд 8
Виды руткитов
работающие на уровне ядра (Kernel Level, или
KLT);
функционирующие на пользовательском уровне (User Level).
Слайд 9
Защита от руткитов
Существующие сегодня специализированные программы, предназначенные для
обнаружения руткитов, и традиционные антивирусы не дают стопроцентной гарантии
безопасности.
Обладая исходным кодом этих программ, можно создать любые модификации руткитов или включить часть кода в любую шпионскую программу.
Главная цель руткитов не прочно закрепиться в системе, а проникнуть в нее.
Слайд 10
Предотвращение внедрения программных закладок
Организационные меры:
Минимизация времени работы в
системе с полномочиями администратора.
Создание отдельной учетной записи для работы
в Интернете (с минимальными правами: запуск браузера и сохранение файлов в выделенной папке).
Осмотрительная работа с почтовыми и офисными программами и др.
Слайд 11
Система защиты от копирования
Комплекс программных (программно-аппаратных) средств, обеспечивающих
затруднение нелегального распространения, использования и (или) изменения программных продуктов.
Нелегально
– без согласия владельца авторских прав. Нелегальное изменение – для того, чтобы измененный продукт не попадал по действие законодательства о защите авторских прав.
Слайд 12
Надежность системы защиты от копирования
Способность противостоять попыткам проникновения
в алгоритм ее работы и обхода механизмов защиты.
Любая система
защиты от копирования может быть раскрыта за конечное время (т.к. ее команды в момент своего исполнения присутствуют в оперативной памяти в открытом виде).
Надежность системы защиты определяется надежностью ее слабейшего звена.
Слайд 13
Принципы создания системы защиты от копирования
Учет условий распространения
защищаемых программных продуктов.
Учет особенностей защищаемых программных продуктов.
Учет особенностей пользователей
защищаемых программных продуктов.
Оценка возможных потерь от снятия защиты.
Слайд 14
Принципы создания системы защиты от копирования
Учет особенностей «взломщиков».
Постоянное
обновление применяемых средств защиты.
Слайд 15
Условия распространения программных продуктов
Распространение на инсталляционных дисках (установка
продукта пользователем). Возможные угрозы:
копирование инсталляционных дисков;
изучение работы системы защиты
(обычно при помощи отладчиков и декомпиляторов или дизассемблеров);
перенос установленного продукта на другие компьютеры;
моделирование работы системы защиты и изготовление тождественного варианта инсталляционного диска
Слайд 16
Условия распространения программных продуктов
Установка программного продукта представителем его
изготовителя или продавца. Возможные угрозы:
перенос установленного продукта на другие
компьютеры;
изучение работы системы защиты.
Покупатели программного продукта не заинтересованы в его нелегальном распространении. Возможная угроза:
несанкционированное использование продукта.
Слайд 17
Особенности программных продуктов
Предполагаемый тираж.
Розничная и оптовая цена.
Частота обновления
версий.
Специализированность и сложность.
Уровень сервиса для легальных покупателей.
Скидки при обновлении
продукта (upgrade).
Слайд 18
Особенности пользователей программных продуктов
Наличие (возможность привлечения) квалифицированных программистов
для снятия защиты.
Возможность реального применения юридических санкций к нарушителям
законодательства о защите авторских прав.
Слайд 19
Особенности «взломщиков»
Хорошее знание системного программирования и операционных систем.
Более
слабая подготовка в области дискретной математики, криптографии и других
математических дисциплин.
Слайд 20
Универсальные и специализированные системы защиты
Готовые решения:
менее надежны;
могут быть
несовместимы с защищаемым программным продуктом.
Специализированная система:
более дорогая.
Слайд 21
Требования к системе защиты от копирования
Некопируемость инсталляционных дисков
стандартными средствами операционных систем.
Невозможность применения стандартных отладчиков.
Некорректное дизассемблирование (декомпиляция)
стандартными средствами.
Сложность изучения структуры ключевой информации, используемой при проверке легальности запуска программы.
Слайд 22
Типовая структура системы защиты от копирования
Блок проверки ключевой
информации.
Блок защиты программы от изучения (противодействия отладчикам и дизассемблерам/декомпиляторам).
Блок
согласования с защищаемыми структурами (обеспечения правильной работы защищаемых программ и правильного расшифрования защищаемых данных при легальном использовании).
Слайд 23
Реализация блока проверки ключевой информации
В виде отдельного модуля.
Блок
проверки
Защищаемая программа
Точка
входа
Слайд 24
Реализация блока проверки ключевой информации
В виде «навесного» модуля
(по технологии компьютерного вируса).
Защищаемая программа
Блок проверки
Точка
входа
Слайд 25
Реализация блока проверки ключевой информации
В виде нескольких внутренних
функций проверки (ФП).
Точка
входа
ФП1 ФП2 . . .
ФПN
Защищаемая программа
Слайд 26
Защита инсталляционных дисков
Создание некопируемой метки (совокупности информационных признаков
носителя, существенно изменяющихся при его копировании).
Виды некопируемой метки:
программная (логическая);
физическая.
Слайд 27
Основные приемы нанесения программной метки
Изменение стандартного формата диска.
Привязка
к временным характеристикам чтения и(или) записи диска.
Комбинация нескольких приемов
(в том числе в сочетании с шифрованием данных на диске).
Слайд 28
Особенности файловой системы CDFS
Каждый файл имеет две основные
характеристики:
номер начального сектора;
длина в байтах.
Слайд 29
Способы нанесение программной метки на CD
Увеличение значения длины
файла (его последний сектор должен находиться за пределами диска).
Для преодоления такой защиты нарушителю достаточно задать размер считываемого файла таким, чтобы он помещался на CD, а после копирования на файла на жесткий иск отбросить ненужную информацию.
Слайд 30
Способы нанесение программной метки на CD
Изменение номера начального
сектора файла (уменьшение или увеличение его фактического размера).
Сочетание двух
рассмотренных выше способов.
Если правильные значения номера начального сектора и длины файла будут храниться в программе установки, нарушитель может их выделить среди других констант программы.
Слайд 31
Способы нанесение программной метки на CD
Использование временных характеристик
чтения информации с диска. Недостатки этого способа:
вероятностный характер результатов
проверки;
зависимость временных характеристик не только от конкретного носителя, но и от используемого для чтения диска привода.
Слайд 32
Нанесение физической метки
Искусственное (механическое или с помощью лазера)
создание дефектов на поверхности диска, проверка и сохранение их
местоположения. При считывании данных с этого места при установке программного продукта проверяется возникновение сообщения об ошибке чтения. Адрес дефектного сектора может использоваться для получения регистрационного кода, который должен ввести пользователь в процессе установки программного продукта.
Слайд 33
Защита от копирования установленного программного обеспечения
Обычный порядок установки
защищенного программного продукта:
Запуск программы установки с инсталляционного диска и
проверка ключевой информации (например, некопируемой метки).
При успехе проверки получение от пользователя сведений о месте установки программы и другой необходимой информации.
Слайд 34
Установка защищенного программного продукта
Копирование файлов на жесткий диск.
Обновление
реестра ОС.
Обновление меню Пуск | Программы.
Создание ярлыка на Рабочем
столе.
Сбор и сохранение ключевой информации о параметрах компьютера и учетной записи пользователя (возможно с вычислением электронной цифровой подписи пользователя под собранной информацией).
Слайд 35
Характеристики компьютера и пользователя
Имя учетной записи пользователя.
Имя компьютера.
Серийные
номера жесткого диска и других аппаратных устройств.
Параметры BIOS (номер
версии и дата создания).
Объем оперативной памяти и раздела жесткого диска.
Состав дисковых устройств.
Слайд 36
Характеристики компьютера и пользователя
Параметры устройств ввода-вывода (клавиатуры, мыши,
монитора, принтера).
Версии операционной и файловой системы.
Эти сведения могут быть
собраны с помощью функций из набора Windows API или непосредственным чтением параметров из реестра ОС.
Индивидуальные спецификации функций аппаратного устройства (обычно USB-ключа), поставляемого вместе с программным продуктом.