Лекция 16. Защита от программных закладок и несанкционированного копирования
Методы внедрения программных закладок
Причины, способствующие внедрению программных закладок
Признаки внедрения программных закладок
Признаки внедрения программных закладок
Технология «руткитов»
Технология «руткитов»
Виды руткитов
Защита от руткитов
Предотвращение внедрения программных закладок
Система защиты от копирования
Надежность системы защиты от копирования
Принципы создания системы защиты от копирования
Принципы создания системы защиты от копирования
Условия распространения программных продуктов
Условия распространения программных продуктов
Особенности программных продуктов
Особенности пользователей программных продуктов
Особенности «взломщиков»
Универсальные и специализированные системы защиты
Требования к системе защиты от копирования
Типовая структура системы защиты от копирования
Реализация блока проверки ключевой информации
Реализация блока проверки ключевой информации
Реализация блока проверки ключевой информации
Защита инсталляционных дисков
Основные приемы нанесения программной метки
Особенности файловой системы CDFS
Способы нанесение программной метки на CD
Способы нанесение программной метки на CD
Способы нанесение программной метки на CD
Нанесение физической метки
Защита от копирования установленного программного обеспечения
Установка защищенного программного продукта
Характеристики компьютера и пользователя
Характеристики компьютера и пользователя
Проверка ключевой информации при запуске после установки
93.00K
Категория: ИнформатикаИнформатика

Защита от программных закладок и несанкционированного копирования. (Лекция 16)

1. Лекция 16. Защита от программных закладок и несанкционированного копирования

1.
2.
3.
Программные закладки и защита от них.
Принципы построения и состав систем
защиты от несанкционированного
копирования.
Методы защиты от копирования
инсталляционных дисков и установленного
ПО.

2. Методы внедрения программных закладок

1.
2.
3.
4.
5.
Маскировка под «полезное» ПО.
Маскировка под модуль расширения
возможностей программной среды
(драйвер, DLL).
Подмена уже установленного ПО.
Прямое ассоциирование с уже
установленным ПО.
Косвенное ассоциирование с ПО ядра ОС в
оперативной памяти.

3. Причины, способствующие внедрению программных закладок

Разрешение пользователю доступа по
записи к критичному системному ресурсу.
Сохранение (установка) уязвимой сетевой
службы.
Оставление незаблокированной консоли
администратора.
Требования высокопоставленных
пользователей и т.д.

4. Признаки внедрения программных закладок

Изменение конфигурационных файлов ОС
(например, реестра Windows) для
обеспечения автозапуска закладки при
загрузке ОС.
Использование для связи с нарушителем
протокола TCP/IP с большим номером порта.
Создание после своей загрузки отдельного
процесса.
Отсутствие длительное время после
загрузки активных действий.

5. Признаки внедрения программных закладок

Оставление следов в файле аудита и др.

6. Технология «руткитов»

Изначально словом «руткит» обозначался
набор инструментов, позволяющий
нарушителю входить в систему таким
образом, чтобы системный администратор
не мог его видеть, а система регистрировать.
Руткиты могут применяться в коммерческих
продуктах для защиты от
несанкционированного копирования.

7. Технология «руткитов»

Практически все современные версии
руткитов могут скрывать от пользователя
файлы, папки и параметры реестра,
работающие программы, системные
службы, драйверы и сетевые соединения.
В основе функционирования руткитов
лежит модификация данных и кода
программы в памяти операционной
системы.

8. Виды руткитов

работающие на уровне ядра (Kernel Level,
или KLT);
функционирующие на пользовательском
уровне (User Level).

9. Защита от руткитов

Существующие сегодня
специализированные программы,
предназначенные для обнаружения
руткитов, и традиционные антивирусы не
дают стопроцентной гарантии безопасности.
Обладая исходным кодом этих программ,
можно создать любые модификации
руткитов или включить часть кода в любую
шпионскую программу.
Главная цель руткитов не прочно
закрепиться в системе, а проникнуть в нее.

10. Предотвращение внедрения программных закладок

Организационные меры:
Минимизация времени работы в системе с
полномочиями администратора.
Создание отдельной учетной записи для
работы в Интернете (с минимальными
правами: запуск браузера и сохранение
файлов в выделенной папке).
Осмотрительная работа с почтовыми и
офисными программами и др.

11. Система защиты от копирования

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

12. Надежность системы защиты от копирования

Способность противостоять попыткам
проникновения в алгоритм ее работы и
обхода механизмов защиты.
Любая система защиты от копирования может
быть раскрыта за конечное время (т.к. ее
команды в момент своего исполнения
присутствуют в оперативной памяти в
открытом виде).
Надежность системы защиты определяется
надежностью ее слабейшего звена.

13. Принципы создания системы защиты от копирования

1.
2.
3.
4.
Учет условий распространения
защищаемых программных продуктов.
Учет особенностей защищаемых
программных продуктов.
Учет особенностей пользователей
защищаемых программных продуктов.
Оценка возможных потерь от снятия
защиты.

14. Принципы создания системы защиты от копирования

5.
6.
Учет особенностей «взломщиков».
Постоянное обновление применяемых
средств защиты.

15. Условия распространения программных продуктов

1.
Распространение на инсталляционных дисках
(установка продукта пользователем). Возможные
угрозы:
копирование инсталляционных дисков;
изучение работы системы защиты (обычно при
помощи отладчиков и декомпиляторов или
дизассемблеров);
перенос установленного продукта на другие
компьютеры;
моделирование работы системы защиты и
изготовление тождественного варианта
инсталляционного диска

16. Условия распространения программных продуктов

2.
3.
Установка программного продукта
представителем его изготовителя или
продавца. Возможные угрозы:
перенос установленного продукта на
другие компьютеры;
изучение работы системы защиты.
Покупатели программного продукта не
заинтересованы в его нелегальном
распространении. Возможная угроза:
несанкционированное использование
продукта.

17. Особенности программных продуктов

Предполагаемый тираж.
Розничная и оптовая цена.
Частота обновления версий.
Специализированность и сложность.
Уровень сервиса для легальных
покупателей.
Скидки при обновлении продукта
(upgrade).

18. Особенности пользователей программных продуктов

Наличие (возможность привлечения)
квалифицированных программистов для
снятия защиты.
Возможность реального применения
юридических санкций к нарушителям
законодательства о защите авторских прав.

19. Особенности «взломщиков»

Хорошее знание системного
программирования и операционных
систем.
Более слабая подготовка в области
дискретной математики, криптографии и
других математических дисциплин.

20. Универсальные и специализированные системы защиты

Готовые решения:
менее надежны;
могут быть
несовместимы с
защищаемым
программным
продуктом.
Специализированная
система:
более дорогая.

21. Требования к системе защиты от копирования

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

22. Типовая структура системы защиты от копирования

1.
2.
3.
Блок проверки ключевой информации.
Блок защиты программы от изучения
(противодействия отладчикам и
дизассемблерам/декомпиляторам).
Блок согласования с защищаемыми
структурами (обеспечения правильной
работы защищаемых программ и
правильного расшифрования защищаемых
данных при легальном использовании).

23. Реализация блока проверки ключевой информации

1.
В виде отдельного модуля.
Точка
входа
Блок проверки
Защищаемая программа

24. Реализация блока проверки ключевой информации

2.
Точка
входа
В виде «навесного» модуля (по
технологии компьютерного вируса).
Блок проверки
Защищаемая программа

25. Реализация блока проверки ключевой информации

3.
В виде нескольких внутренних функций
проверки (ФП).
Точка
входа
ФП1 ФП2 . . .
ФПN
Защищаемая программа

26. Защита инсталляционных дисков

Создание некопируемой метки (совокупности
информационных признаков носителя,
существенно изменяющихся при его
копировании).
Виды некопируемой метки:
программная (логическая);
физическая.

27. Основные приемы нанесения программной метки

1.
2.
3.
Изменение стандартного формата
диска.
Привязка к временным
характеристикам чтения и(или) записи
диска.
Комбинация нескольких приемов (в
том числе в сочетании с шифрованием
данных на диске).

28. Особенности файловой системы CDFS

Каждый файл имеет две основные
характеристики:
номер начального сектора;
длина в байтах.

29. Способы нанесение программной метки на CD

1.
Увеличение значения длины файла (его
последний сектор должен находиться за
пределами диска). Для преодоления такой
защиты нарушителю достаточно задать
размер считываемого файла таким, чтобы
он помещался на CD, а после копирования
на файла на жесткий иск отбросить
ненужную информацию.

30. Способы нанесение программной метки на CD

Изменение номера начального сектора
файла (уменьшение или увеличение его
фактического размера).
3. Сочетание двух рассмотренных выше
способов.
Если правильные значения номера
начального сектора и длины файла будут
храниться в программе установки,
нарушитель может их выделить среди
других констант программы.
2.

31. Способы нанесение программной метки на CD

4.
Использование временных характеристик
чтения информации с диска. Недостатки
этого способа:
вероятностный характер результатов
проверки;
зависимость временных характеристик не
только от конкретного носителя, но и от
используемого для чтения диска привода.

32. Нанесение физической метки

Искусственное (механическое или с помощью
лазера) создание дефектов на поверхности
диска, проверка и сохранение их
местоположения. При считывании данных с
этого места при установке программного
продукта проверяется возникновение
сообщения об ошибке чтения. Адрес
дефектного сектора может использоваться
для получения регистрационного кода,
который должен ввести пользователь в
процессе установки программного
продукта.

33. Защита от копирования установленного программного обеспечения

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

34. Установка защищенного программного продукта

3.
4.
5.
6.
7.
Копирование файлов на жесткий диск.
Обновление реестра ОС.
Обновление меню Пуск | Программы.
Создание ярлыка на Рабочем столе.
Сбор и сохранение ключевой информации
о параметрах компьютера и учетной
записи пользователя (возможно с
вычислением электронной цифровой
подписи пользователя под собранной
информацией).

35. Характеристики компьютера и пользователя

Имя учетной записи пользователя.
Имя компьютера.
Серийные номера жесткого диска и других
аппаратных устройств.
Параметры BIOS (номер версии и дата
создания).
Объем оперативной памяти и раздела
жесткого диска.
Состав дисковых устройств.

36. Характеристики компьютера и пользователя

Параметры устройств ввода-вывода
(клавиатуры, мыши, монитора, принтера).
Версии операционной и файловой системы.
Эти сведения могут быть собраны с помощью
функций из набора Windows API или
непосредственным чтением параметров из
реестра ОС.
Индивидуальные спецификации функций
аппаратного устройства (обычно USB-ключа),
поставляемого вместе с программным
продуктом.

37. Проверка ключевой информации при запуске после установки

1.
2.
3.
Сбор характеристик, аналогичных тем,
что были использованы при установке.
Чтение сохраненных при установке
характеристик (эталонных).
Сравнение вновь собранных и эталонных
характеристик (возможно с проверкой
электронной цифровой подписи
пользователя).
English     Русский Правила