Guardant Armor
-
Загрузить
Guardant Armor — это современное средство для защиты программного обеспечения от модификации и анализа. Решение оптимально подходит для программных продуктов, к которым предъявляются особые требования по устойчивости к взлому, надежности и безопасности.
- Описание
- Технологии
- Характеристики
Любое приложение, разработанное без использования эффективных технологий защиты, легко может быть проанализировано и впоследствии изменено под нужды злоумышленника. Современные средства реверс-инжиниринга значительно упрощают и ускоряют этот процесс. С их помощью не составит труда реконструировать ценные алгоритмы и понять принцип работы приложения, в результате чего авторы программы могут понести финансовые потери. Guardant Armor позволяет защитить приложение от модификации и анализа и в результате сохранить интеллектуальную собственность авторов.
Использование протектора обеспечит высокий уровень надежности при минимальных затратах ресурсов и времени. Процесс защиты проходит в автоматическом режиме и не требует никаких знаний в области информационной безопасности.
Ключевые возможности:
- Виртуализация кода;
- Защита от дампа;
- Контроль целостности;
- Упаковка и шифрование исходного кода программы;
- Автоматическое профилирование;
- Поддержка гибких условий лицензирования;
- Интеграция с программными ключами Guardant SP.
Виртуализации кода затрудняет реверс-инжиниринг защищенного приложения и обеспечивает высокий уровень защиты от копирования. Выбранные участки кода преобразуются в систему команд (байт-код) уникальной виртуальной машины, которая обеспечивает их выполнение в нужный момент. Полученный байт-код разбивается на блоки и надежно шифруется. В процессе выполнения в памяти компьютера хранится только необходимый для выполнения блок байт-кода, тем самым обеспечивается защита приложения от дампа.
Возможность одновременной защиты нескольких исполняемых файлов позволяет еще больше запутать логику выполнения приложения. Все вызовы направляются в одну динамическую библиотеку, которая хранит общий для всех файлов байт-код и виртуальную машину. При этом каждый защищаемый файл упаковывается и шифруется (накрывается конвертом).
Условия лицензирования могут быть заданы индивидуально для каждого защищаемого файла. Такой подход позволяет применять различные схемы монетизации как для всего приложения целиком, так и для отдельных его компонентов. Поддерживаемые модели лицензирования: ограничение количества запусков, создание триального приложения, монетизацию фич, ограничение времени работы и другие.
При создании Guardant Armor мы учли многолетний опыт разработки продуктов защиты и использовали весь потенциал электронных ключей. Протектор поддерживает работу со всеми моделями программных и аппаратных ключей Guardant. При этом максимальная степень защиты достигается при использовании продуктов семейства Guardant Sign и Guardant Code.
Защита программы от модификаций — это применение разнообразных технологий, которые позволяют видоизменить исходный код приложения с целью максимально усложнить его анализ и последующее копирование и модификацию.
Обфускация
Обфускация — это комплекс технологий запутывания кода защищаемого приложения. В результате его применения программа сохраняет свою функциональность в полном объеме, однако программный код становится настолько сложным, что его практически невозможно проанализировать.
Мутация кода
Мутация кода — это метод обфускации, при котором исходный граф потока управления дополняется мусорными инструкциями, ветвлениями, циклами и даже дополнительной логикой. В результате такого смешения становится сложно определить, чем является анализируемый участок кода — оригинальной программой или пустышкой.
Виртуализация кода
Виртуализация кода — это метод обфускации, при котором исходный машинный код приложения транслируется в инструкции уникальной виртуальной машины, сгенерированной в процессе защиты приложения. Эти инструкции интерпретируются непосредственно в момент выполнения программы.
Особенностью данной технологии является то, что при защите одного и того же приложения каждый раз генерируются новые инструкции с разной логикой и набором команд. И выполнены они могут быть только на той виртуальной машине, для которой были сгенерированы.
Виртуализация обеспечивает отсутствие постоянных сигнатур в программном коде, противодействие попыткам внедрения, контроль целостности и т. д.
Конверт
Конверт — это упаковка и шифрование секций защищаемого файла. В процессе запуска защищенного приложения специальный загрузчик распаковывает и расшифровывает файл, прежде чем управление будет передано оригинальной точке входа. Приложение шифруется симметричным криптографическим алгоритмом, ключ к которому, как правило, хранится во внешнем компоненте защиты (аппаратном или программном ключе).
Профилирование
Если применять технологии обфускации к каждому участку кода, то работа приложения может ощутимо замедлиться. При этом будут защищены секции, которые не представляют абсолютно никакой ценности для злоумышленника. Для того чтобы сохранить скорость выполнения программы и при этом защитить важные участки кода, применяется технология профилирования. Защищаемое приложение проходит тщательный статический и динамический анализ, в результате которого определяется оптимальный перечень защищаемых функций.
- Поддерживаемые операционные системы
- x86 и x64-версии MS Windows 10 / 8.1 / 8 / 7 / Vista / XP.
- GNU/Linux.
- Язык программирования защищаемой программы
- Любой язык программирования, компилируемый в машинный код (C, C++, Pascal и др.).
- Защищаемые файлы
- Исполняемые файлы и динамические библиотеки Windows x86/x64 (.exe, .dll и др., формат PE);
- Исполняемые файлы и динамические библиотеки Linux x86/x86_64 (.so, формат ELF_EXEC);
- Драйверы Windows x86/x64 (.sys, формат PE);
- Объектные файлы Windows x86/x64 (.obj, формат OMF/COFF);
- Объектные файлы Linux (.o, формат ELF).
- Дополнительно
- Поддержка технологии защиты от ложных срабатываний антивируса (IEEE Software Taggant System).