Защита программ

Пятый этап - оценка стойкости


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

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

  • если он планирует самостоятельно использовать продукт, возможно, будет достаточно вручную изменять системную дату или переустанавливать программный продукт по истечении разрешённого срока его использования, стирая скрытые файлы и/или записи в системных файлах, сделанные системой защиты;
  • при желании в дальнейшем распространять средство снятия защиты с продукта злоумышленнику потребуется исследовать алгоритмы системы защиты и разработать программное средство её статического или динамического преодоления;
  • если же планируется "пиратская" реализация программного продукта, злоумышленник должен будет либо распространять его вместе со средством снятия защиты либо произвести полное статическое отключение системы защиты в программном продукте.

    В зависимости от выбранного способа преодоления защиты изменяется и дальнейшее её исследование.



    Содержание раздела