Следующий по очереди, но не по важности, атрибут защиты это резидентная программная часть, способная на 100% идентифицировать метку или характеристику носителя, с которого она была запущена.
Если рассмотреть способ защиты модуля от взлома, то получается такая картина: третья компания разрабатывает программный продукт, скажем, один файл в формате EXE, и передает его создателям защиты. Последние специальным образом встраивают специальный код идентификации в данный EXE модуль, ставят не копируемую метку. Цель хакера на этом этапе: либо полностью удалить защитный модуль, либо найти тот участок в коде защиты, который отвечает за идентификацию, и изменить только его (поменять условие проверки). Цель защиты - противодействовать всем методам взлома, причем продвинутая защита должна защищать не только себя, но и модули того файла, к которому ее присоединили. Последнее возможно в том случае если защита имеет открытый расширенный SDK (Software Development Kit), который позволяет разработчикам приложений встраивать защиту в свой модуль уже на этапе разработки собственного приложения. Такая система может существенно усложнить жизнь хакерам.
Для вскрытия программной защиты хакер может выбрать следующее (развернуто об атаках смотрите во врезке):
Получить код программы любым известным дизассемблером.
Проанализировать ход исполнения программы специальным отладчиком.
Получить слепок программы в памяти, которая исполнилась после проверки защитой диск (дампер).
Поставить набор контрольных точек в заданных местах, чтобы не анализировать весь код, а только его части, с указанных адресов.
Приведенные способы атак показывают, что хакер будет предпринимать, и что должна уметь делать любая защита, чтобы этого не допустить.
С этим сектором все очень плохо. Практически все защиты уже взломаны, невзирая на ухищрения, предпринимаемыми компаниями-защитниками. Тут действуют несколько золотых правил: во-первых, то, что сделал один человек, то другой может завсегда сломать, а, во-вторых, тираж и популярность продукта стимулируют хакеров на очень активные действия. Так что надеяться на 100% надежную защиту от взлома - только находиться в иллюзиях! Зато можно, разработав эффективную систему защиты, максимально усложнить жизнь пиратам, а себе гарантировать возврат инвестиций. Говоря простым языком, если защита вскрывается 4-5 месяцев, то компания может продать достаточное количество копий своего продукта, чтобы покрыть все расходы и получить прибыль. А если новая версия продукта выходит через 7-8 месяцев, то коммерческий успех можно повторять до бесконечности. Но это возможно в тех случаях, когда продукт пользуется большим спросом, а защита постоянно модифицируется.
Обратите внимание на врезки и на таблицу, в которой проводилось сравнение основных систем защит, как иностранных, так и одной отечественной.
Особенно обидно за продукты CD-Cops и TAGES, которые стойко противостоит первой волне взлома (копированию), и совсем не держат натиски отладчиков, дамперов и дизассемблеров. Скорее всего это связано с тем, что компании молодые и у них просто не было времени, чтобы полностью доработать защиту. Думаю, что разработчики учтут недоработки программных модулей в следующих версиях.
В наиболее выгодном свете здесь представлена только защита StarForce, которая использует ряд интересных решений, делающих ее взлом практически невозможной, или, лучше так: трудноосуществимой. Из информации, которую удалось получить из официальных источников, разработчики StarForce применили способ динамического шифрование кода (см. врезку), даже не столько шифрования, в общем понимании этого слова, а в том, что для этих целей разработана специальная виртуальная машина со своим языком программирования.
Этот подход позволяет не просто шифровать блоки кода, а транслировать на другой язык программирования, образуя тем самым виртуальную машину (см. врезку).
Есть еще один способ усиления защиты, это предоставление разработчикам ПО так называемых SDK, при помощи которых, разработчики могут эффективно использовать элементы защиты на этапе разработки ПО. Это жизненно необходимо, так как один из самых эффективных методов защиты, это не просто проверка информации, отдельным модулем, а неявное размазывание самой системы на весь программный продукт. Когда при помощи определенных механизмов нарушается целостность и правильность исполнения программного продукта. Если помните, то еще во времена DOS, был "крякнутый" пакет программы анимации 3-D Studio 4.0, который никак не хотел работать правильно (результат подобной защиты). Достичь подобного эффекта размазывания защиты можно как своими силами, так и силами компании, реализующей защиту. Последнее, более приемлемо и нужно, поскольку только так можно получить комплексный подход в защите. Поэтому услуга предоставления SDK далее рассматривается как особенно важная для построения барьеров на пути хакерам.
Как ужа неверное отметил читатель, то из всех средств защит, вынесенных во врезки, автор упоминает только три: StarForce, CD-Cops и TAGES. Уж не пристрастность ли это? Отвечаю: нет, нет и еще раз нет!!!
Посмотрите на таблицу и на описание продуктов. В моем представлении, внимания заслуживают только лишь те системы, которые не вскрыты вообще (StarForce), либо вскрыты лишь частично. Последнее обстоятельство дает шанс компании со временем построить надежную защиту (CD-Cops). Те же слова хочется сказать в адрес программы TAGES, которая также эффективно борется с копированием, но пока имеет слабую защиту самого кода приложения.
И отрадно смотреть, что уникальные комплексные подходы в защите показывают небольшие компании, лишь недавно вышедшие на рынок защиты ПО. А горестно смотреть на таких монстров как Macrovision и Sony, которые кроме известности ничего не имеют. Хотя, компании подобного размаха очень инерционны, но и они в итоге могут удивить.
Что ж, посмотрим, как будет развиваться рынок далее… Кто победит... информационный "снаряд" или информационная "броня"?
В работе над данной статьей помогли:
Личный опыт автора в написании защит, полученный им в начале 90х, а также следующие сайты в Интернет:
Официальные сайты компаний-производителей защит (см. во врезке).
Сайт http://www.cdmediaworld.com/, на котором рассмотрены все существующие защиты, и не просто рассмотрены, а разобраны!
CD-COPS
Тип защиты: Измерение физических характеристик без нанесения особых меток на носитель(!)
Способ преодоления защиты: "Кряк"
Аппаратная совместимость (cd/dvd разных производителей): Средняя (совместима только с популярными приводами)
Наличие особой аппаратуры для защиты серии: НЕ требуется
Предоставление SDK для производителей: ДА
Защита мелких партий (CD/R/RW): НЕТ
Фирма - производитель: Link Data Security
Сайт производителя: http://www.linkdata.com/
Коммерческие продукты, использующие данный вид защиты:
Interactive English / De Agostini
Nationalencyklopedin
Agostini Atlas 99
Agostini Basetera
BMM
DK Kort
Lademanns'99
Особенности защиты:
Данная программа пользуется самой эффективной системой защитой от копирования, основанной не на нанесении физических меток, а на способе измерения специфических характеристик CD\DVD-ROM. По словам производителя, система анализирует физический угол между прошлым и текущими логическими блоками на компакт-диске.
Слабое место защиты - это сам код, анализирующий углы. Фирме пока не удалось найти эффективного способа противодействия дизассемблерам и отладчикам.
StarForce
Тип защиты: Измерение физических характеристик без нанесения особых меток на носитель(!)
Способ преодоления защиты: Способ не найден
Аппаратная совместимость (cd/dvd разных производителей): Высокая
Наличие особой аппаратуры для защиты серии: НЕ требуется
Предоставление SDK для производителей: ДА
Защита мелких партий (CD/R/RW): ДА
Фирма - производитель: ProtectionTechnology
Сайт производителя: www.star-force.ru
Коммерческие продукты, использующие данный вид защиты:
1С (игры), Нивал, Softmax Co, Q-puncture Inc, Scholastic, Hypnosys World, руссобит-м (игры)
Особенности защиты:
Данная программа так же, как и CD-COPS, пользуется самой эффективной системой защитой от копирования, основанной на способе измерения специфических характеристик CD\DVD-ROM. Поскольку защита не вскрыта, то не известен и способ, которым производителям удается идентифицировать различные диски. Заявленная 100% совместимость с любой аппаратурой и 100% идентификация дисков подтверждается независимыми сайтами.
Увы, слабое место в защите найти не удалось. Защита эффективно противодействует отладчикам и дизассемблерам. Эффективность защиты подтверждает тот факт, что за год существования не нашелся способ ее нейтрализации. Дополнительный лоск защите придает возможность защиты мелких партий дисков (CD-R\RW) и наличие SDK, при помощи которого разработчики игр могут шифровать отдельные сегменты своих детищ.
LaserLock
Тип защиты: Физическое нанесение метки на носитель
Способ преодоления защиты: Копирование (BlindRead), "кряк", эмуляция (D-Tools)
Аппаратная совместимость (cd/dvd разных производителей): Низкая
Наличие особой аппаратуры для защиты серии: ДА, требуется