- •Вопросы и ответы по дисциплине “защита программ…”
- •Архитектура технических средств защиты по от несанкциони-рованного копирования
- •3. Методы защиты по от исследования
- •4. Разрушающие программные воздействий (рпв). Основные модели работы рпв
- •5. Функции специальных разрушающих программных воздействий - вирусов. Классификация вирусов .Жизненный цикл вирусов.Полиморфные вирусы. Вирусы как класс рпв обладают следующими функциями:
- •Описать типовые дефекты программного обеспечения
- •6. Описать методы аудита безопасности кода
- •7. Описать метод защиты программ – обфускацию программ
- •Обфускация данных
- •Обфускация управления
- •Что такое система обеспечения информационной безопасности и оценка безопасности по
- •Что такое уровень безопасности по
- •Кто потенциально может осуществить практическое внедрение программных дефектов деструктивного воздействия в исполняемый программный код
- •Каковы возможные мотивы действий субъекта, осуществляющего разработку деструктивного воздействия в исполняемый программный код
- •Лексическая обфускация
- •Что такое алгоритмические и программные закладки?
5. Функции специальных разрушающих программных воздействий - вирусов. Классификация вирусов .Жизненный цикл вирусов.Полиморфные вирусы. Вирусы как класс рпв обладают следующими функциями:
способность к самодублированию
способность к ассоциированию с другими программами
способность скрывать признаки своего присутствия до определенного момента
направлены на деструктивные функции
Компьютерные вирусы делятся на:
файловые
загрузочные
макровирусы
Жизненный цикл вирусов включает 2 фазы: латентную, когда вирус не проявляет своего присутствия, и фазу непосредственного функционирования.
Переход от латентной фазы к фазе исполнения выполняется по методу активизирующего события. Загрузка вируса в оперативную память выполняется одновременно с загрузкой инфицированного объекта. Основные способы загрузки зараженных объектов:
автоматическая загрузка при запуске операционной системы
внедрение в меню автозагрузки
через носители типа flash
Фаза исполнения вируса включает следующие этапы:
загрузка вируса в память
поиск «жертвы»
инфицирование
выполнение деструктивных функций
передача управления объекту-носителю вируса.
По способу поиска «жертвы» вирусы делятся на:
те, которые выполняют активный поиск объектов
те, которые ведут пассивный поиск, то есть устанавливают ловушки на заражаемые объекты
Инфицирование объектов может выполняться либо путем простого самокопирования кода вируса в исполнительный код, либо может использовать более сложный алгоритм, осуществляя мутацию исполнительного кода вируса при его самодублировании. Суть мутации сводится к изменению кода таким образом, чтобы вирус нельзя было обнаружить по фиксированным сигнатурам. Может использоваться шифрование кода на различных ключах.
Суть мутации кода может заключается в изменении порядка независимых инструкций, в замене одних регистров на другие, внедрение в исполнительный код мусорных конструкций, в замене одних инструкций другими.
Вирусы, мутирующие в процессе самокопирования называются полиморфными. Если неполиморфные вирусы могут быть идентифицированы в ПА среде путем их поиска по сигнатурам, то полиморфные вирусы не имеют сигнатуру, по которой бы они однозначно идентифицировались.
Описать типовые дефекты программного обеспечения
Неполная проверка параметров и разброса переменных; нестрогий контроль границ их изменений.
Скрытое использование приоритетных данных.
Асинхронное изменение интервала между временем проверки и временем использования.
Неправильное преобразование в последовательную форму.
Неправильные идентификация, верификация, аутентификация и санкционирование задач.
Отказ предотвращения перехода за установленные в программе пределы доступа и полномочий.
Логические ошибки (например, больше логических выражений или результатов, чем операций перехода).
Незавершённые разработка и описание.
Недокументированные передачи управления.
Обход контроля или неправильные точки контроля.
Неправильное присвоение имен, использование псевдонимов.
Неполная инкапсуляция или неполное скрытие описания реализации объекта.
Подменяемые контрольные журналы.
Передача управления в середине процесса.
Скрытые и недокументированные вызовы из прикладных программ, команд ОС и аппаратных команд.
Не устранение остаточных данных или отсутствие их адекватной защиты.
Неправильное освобождение ресурсов.
Игнорирование отключения внешних приборов.
Неполное прерывание выполнения программ.
