LT   EN   RU  
2021 г. май 17 д., понедельник Straipsniai.lt - Информационный портал
  
  Компьютеры > Компьютерные технологии > Безопасность > Криптография
Lankomumo reitingas Версия для печати Версия для печати
Анализ рынка средств защиты программного обеспечения от несанкционированного копирования. Часть 2. StarForce
…Использование программ для ЭВМ или базы данных третьими лицами (пользователями) осуществляется на основании договора с правообладателем…

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

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

Кроме того, система защиты не должна существенно влиять на стоимость конечного продукта.

Взлом и защита: противоборство брони и снаряда в электронном мире…

Во времена MS-DOS была наработана множество способов, позволяющих более или менее надежно определить легальность запуска того или иного приложения. Существует масса уловок, позволяющих обманывать отладчики и дизассемблеры, сводя на нет логику защищаемого приложения. С появлением на сцене Windows в силу специфики системы жизнь хакеров упростилась, а защитников - усложнилась. Появились умные отладчики (один SoftIce чего стоит!), интеллектуальные дизассемблеры и прочее, и прочее… Становится труднее находить новые приемы привязки защиты к различным физическим меткам и электронным ключам. Обе воюющие стороны давно изучили всевозможные приемы, помогающие ставить некопируемые метки и противодействовать отладчикам.

Давайте попробуем понять, как собственно работают средства защит ПО. Защита состоит из двух подсистем:

  • способ постановки метки на носителе, которую невозможно или весьма затруднительно перенести (скопировать) или воспроизвести программными методами (эмулировать);
  • встраиваемый в защищаемое приложение модуль, который проверяет наличие заранее установленной метки.

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

Если защите удалось найти способ получения некопируемых дисков (StarForce, CD-Cops, TAGES), далее следует обезопасить себя от очередной напасти - от эмуляторов устройств. Многие пираты прибегают к тактике эмуляции характеристик диска, создавая виртуальные драйверы устройств, позволяющих обманывать систему защиты. К сожалению, практически все средства защиты от копирования, рассматриваемые в данной статье, уже взломаны.

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

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

Еще один атрибут защиты - это резидентная программная часть, способная на 100% идентифицировать метку или характеристику носителя, с которого она была запущена.

Если рассмотреть способ защиты модуля от взлома, то вырисовывается такая картина: третья компания разрабатывает программный продукт, скажем, один ехе-файл и передает его создателям защиты. Последние встраивают специальный код идентификации в данный ехе-модуль и ставят некопируемую метку. Цель хакера на этом этапе: либо полностью удалить защитный модуль, либо найти в коде защиты участок, отвечающий за идентификацию, и изменить его (поменять условие проверки). Цель защиты - противодействовать всем существующим методам взлома, причем продвинутая защита должна защищать не только себя, но и модули того файла, к которому ее присоединили. Последнее возможно в том случае если защита имеет открытый расширенный SDK (Software Development Kit).

Для вскрытия программной защиты хакер может выбрать следующее:

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

Практически все защиты уже взломаны, невзирая на ухищрения, предпринимаемые компаниями-защитниками. Тут действуют несколько золотых правил: во-первых, то, что сделал один человек, другой может завсегда сломать, а во-вторых, тираж и популярность продукта стимулируют хакеров на очень активные действия. Если защита вскрывается в течение 4-5 месяцев, то компания может продать достаточное количество копий своего продукта, чтобы покрыть все расходы и получить прибыль. А если новая версия продукта выходит через 7-8 месяцев, то коммерческий успех можно повторять до бесконечности.

Особенно обидно за продукты CD-Cops и TAGES, которые стойко противостоят первой волне взлома (копированию), и совсем не держат натиски отладчиков, дамперов и дизассемблеров. В наиболее выгодном свете здесь представлена только защита StarForce, которая использует ряд интересных решений, делающих ее взлом практически невозможным, или о-о-очень трудноосуществимым. По данным официальных источников, разработчики StarForce применили способ динамического шифрования кода, даже не столько шифрования - для этих целей разработана специальная виртуальная машина со своим языком программирования. Этот подход позволяет не просто шифровать блоки кода, а транслировать на другой язык программирования, образуя тем самым виртуальную машину.

Есть еще один способ усиления защиты: предоставление разработчикам ПО так называемых SDK, при помощи которых разработчики могут эффективно использовать элементы защиты на этапе разработки ПО. Это один из самых действенных методов защиты, обеспечивающий не просто проверку информации отдельным модулем, а неявное «размазывание» самой системы на весь программный продукт (т.е. нарушение целостности и правильности исполнения программного продукта при помощи определенных механизмов). (Еще во времена DOS существовал «крякнутый» пакет программы анимации 3-D Studio 4.0, который никак не хотел работать правильно именно из-за подобной «защиты»). Достичь эффекта «размазывания» можно как своими силами, так и силами компании, реализующей защиту. Последнее предпочтительней, поскольку позволяет осуществить комплексный подход в защите.

На мой взгляд, внимания заслуживают лишь те системы, которые не вскрыты вообще (StarForce) или вскрыты лишь частично (во втором случае у компании есть шанс усовершенствовать защиту (CD-Cops)). Достойна похвалы и программа TAGES, которая эффективно борется с копированием, но пока имеет слабую защиту самого кода приложения. За кем же останется последнее слово? За информационным «снарядом» или информационной «броней»?

В работе над данной статьей автор опирался на личный опыт в написании защит, официальные сайты компаний-производителей защит (см. во врезке) и сайт www.cdmediaworld.com, где рассмотрены все существующие защиты, и не просто рассмотрены, а разобраны!

            

Lankomumo reitingas

Oбсудить на форуме - Oбсудить на форуме

Версия для печати - Версия для печати

Назад
Случайные теги:    Процессоры (7)    Люди (94)    Садоводство (12)    Психология (27)    Безопасность (43)    Развлечения (26)    Страны (22)    Пиво (29)    Мотоциклы (2)    Прогр. обеспечение (15)    Бизнес и финансы (20)    Наука (90)    Образование (101)    Сельское хозяйство (19)    Хакеры (116)    Археология (3)    Любовь (32)    Политика (3)    Компьютеры (290)    Спорт (40)    Путешествия (2)    Татуировки (5)    Английский язык (2)    Египет (5)    Комплектующие (18)    Анна Ахматова (3)    Йога (9)    Стиль (5)    Вирусы (25)    Музыка (26)    Накопители (2)    Алкохольные напитки (29)    Психиатрия (13)    Операционные системы (8)    Биология (34)    Аквариумы (10)    Филателия (15)    Казино (9)    Память (2)    Звуковые системы (8)    Помощ и превенция (2)    Архитектура (3)    Буддизм (3)    Скейборды (2)    Открытый код (2)    Авиация (2)    Воспитания (3)    Право человека (8)    Кормление грудью (5)    Здаровья ребёнка (2)
1. Криптография: зачем это нужно
2. Криптография с открытым ключом: от теории к стандарту
3. Алгоритм шифрования данных с открытым ключом RSA
4. Будем шифроваться? или Практикум по домашней криптографии
5. Часто задаваемые вопросы и ответы по парольной защите документов Microsoft Office (FAQ)
6. Надежна ли цифоровая подпись?
7. IBM Выпустил новый алгоритм Signcryption
8. Анализ рынка средств защиты программного обеспечения от несанкционированного копирования. Часть I. StarForce.
9. Как обеспечить подлинность электронных документов?
10. Практическая криптография: алгоритмы и их программирование
1. Часто задаваемые вопросы и ответы по парольной защите документов Microsoft Office (FAQ)
2. Курс по криптоанализу блочный шифров Брюса Шнаера
3. Криптография: зачем это нужно
4. Криптография с открытым ключом: от теории к стандарту
5. Практическая криптография: алгоритмы и их программирование
6. Алгоритм шифрования данных с открытым ключом RSA
7. Будем шифроваться? или Практикум по домашней криптографии
8. Надежна ли цифоровая подпись?
9. Как обеспечить подлинность электронных документов?
10. Анализ рынка средств защиты программного обеспечения от несанкционированного копирования. Часть I. StarForce.
Map