4.2. Оценка средств за щиты | Телекоммуникации вчера, сегодня, завтра

Последовательность действий при создании объекта радиосвязи

Бланк формы №1 ТАКТИКО-ТЕХНИЧЕСКИЕ ДАННЫЕ РЭС

Поставка оборудования обеспеченного радиочастотами

Витрина



4.2. Оценка средств за щиты

Теперь рассмотрим, что изменится при использовании таких критериев, как качество, надежность и эффективность в приложении к средствам защиты.

4.2.1. Качество защиты

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

Удивительная программа eBookPro
Разработчики программы eBook Pro во всю рекламируют свое детище как "единственный программный продукт во вселенной, способный обеспечить Вашей информации практически 100% защиту от взлома". Поверить рекламе, которая обещает именно то, что хочется получить, очень легко. Правда, вскоре неминуемо выяснится, что, нажав комбинацию клавиш <Ctrl>+<A>, можно выделить весь видимый текст, а затем скопировать его в буфер обмена. Кроме того, незащищенные копии HTML-страниц и картинок остаются после просмотра в директории, хранящей кэшированные файлы Internet Explorer. И наконец, выполнив анализ работы программы, можно будет узнать, что защита заключается в наложении при помощи операции XOR на каждый байт защищаемых данных последовательно всех байтов строки "encrypted" (зашифровано), что эквивалентно наложению однобайтовой константы. При этом не обеспечивается никакой секретности и реальной защиты, т. к. остается возможность извлечения защищенной информации без подбора ключа или иных длительных операций. Скорее всего разработчики программы просто не знали, что любое число последовательных вычислений XOR С константой может быть сведено к одному вычислению ХОР.

Дополнительную информацию о свойствах продукта можно получить от других пользователей или самостоятельно разбираясь в особенностях функционирования интересующей программы. Но при оценке качества работы средств защиты далеко не все аспекты можно увидеть невооруженным глазом. Так, например, в случае с программой eBook Pro обнаружить некоторые недостатки внутреннего устройства, такие как возможность выделения текста и копирования его в буфер обмена, а также незащищенные копии просмотренных страниц па диске, может любой пользователь. Но для того чтобы разобраться непосредственно в функционировании защиты (что за алгоритмы применяются и как именно), у обычного пользователя не хватит знаний. Просто взглянув на защищенный документ и работающую с ним программу, почти никогда нельзя с уверенностью сказать, насколько правильно с точки зрения безопасности организована защита. Единственный способ получить достоверную информацию о качестве защитных механизмов — заказать и оплатить проведение независимой экспертизы. Однако стоимость экспертных услуг с большой вероятностью окажется очень высокой по сравнению со стоимостью программного продукта, и редко какой пользователь станет тратить средства на экспертизу. В результате, оценка качества средств защиты почти всегда основывается на сравнении заявленных разработчиком характеристик и интерфейса, хотя ни то ни другое не отражает реальных свойств защиты.

Результаты официального  тестирования ключей HASP
Аппаратные ключи для защиты программного обеспечения от несанкционированного тиражирования HASP (Hardware Against Software Piracy), производимые компанией Aladdin Knowledge Systems, Ltd., наверное, являются наиболее распространенными ключами в России. По результатам тестирования, проведенного Национальной Тестовой Лабораторией США (National Software Testing Labs, NSTL), ключи HASP были названы лучшими 2 раза подряд. Согласно отчету NSTL, датированному январем 1999 года, сравнительное тестирование ключей разных производителей велось по пяти категориям: безопасность, простота использования, совместимость, возможности сетевых ключей и универсальность. Ключи HASP оказались лидерами во всех пяти категориях и, следовательно, стали безусловными победителями.
Казалось бы, такой серьезной организации, как NSTL, можно доверять. Но есть несколько нюансов, ставящих под сомнение истинность вердикта, вынесенного NSTL.
Прежде всего, при тестировании сравнивались ключи только двух семейств: HASP от компании Aladdin и Sentinel от компании Rainbow Technologies Inc. He исключено, что ключи Rainbow Sentinel являются наиболее значимым конкурентом для Aladdin HASP, но на момент тестирования на рынке были представлены ключи и других производителей, сравнение с которыми не проводилось.
Но, самое главное, на момент опубликования отчета NSTL в Интернете можно было найти достаточное количество статей, руководств и даже исходных текстов программ, в деталях описывающих внутреннее устройство ключей HASP, включая алгоритм вычисления секретной функции HaspCode и быстрого поиска пароля для доступа к ключу. Грубо говоря, существовал хорошо документированный инструментарий, позволяющий при наличии физического доступа к ключу HASP за пару минут получить всю информацию, необходимую для построения полного эмулятора, способного на любой корректный запрос к ключу вычислить ответ, совпадающий с ответом реального ключа.
Эмуляции поддаются и другие ключи, но, например, у ключей SenttnelSuperPro секретная функция RNBOsproQuery может эмулироваться только таблично (см. гл. 9), а самая трудная для эмуляции часть ключей HASP — секретная функция HaspCode — оказалась скомпрометирована. По одной версии раскрытие алгоритма HaspCode было произведено исследователем программ, писавшим статьи под псевдонимом "bajunny", по другой — произошла утечка секретной информации из компании Aladdin.
Ключи HASP можно было признать сколь угодно простыми и удобными в использовании, универсальными и совместимыми с существующим оборудованием. Но возможность построения полного эмулятора снижает уровень обеспечиваемой безопасности практически до нуля, и такие ключи можно считать лучшими для чего угодно, но только не для защиты программ.
Стоит отметить, что с появлением ключей семейства HASP4 в арсенал разработчика добавились две секретных функции: HaspEncodeData и HaspDecodeData. Это привело к невозможности полной эмуляции ключей HASP4.

4.2.2. Надежность защиты

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

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

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

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

WinZip
Одним из самых популярных форматов сжатия данных среди пользователей операционных систем семейства Windows был и остается ZIP, разработанный компанией PKWARE, Inc. Столь широкое распространение этот формат получил совсем не из-за технических особенностей, таких как очень быстрое сжатие или высокая степень упаковки, существуют архивные форматы и поддерживающие их программы, превосходящие ZIP практически по всем характеристикам. Скорее всего, ZIP обязан своей популярностью условно бесплатной программе WinZip. Согласно пресс-релизу от 21 ноября 2000 года, на тот момент только с интернет-сайта Download.com, принадлежащего компании CNET Networks, Inc., WinZip скачали более 27 миллионов раз, а июль 2003 года число скачанных копий превысило 100 миллионов.
WinZip является условно бесплатным (shareware) продуктом. Любой пользователь имеет право установить WinZip себе на компьютер и использовать его бесплатно в течение 30 дней с тестовыми и ознакомительными целями. При этом программа является полностью функциональной, но иногда появляется окно-напоминание с предложением купить WinZip, По истечении тестового периода необходимо либо приобрести лицензию на использование WinZip, либо удалить программу с компьютера. После оплаты стоимости лицензии пользователь получает регистрационный код, соответствующий его имени. После ввода правильного кода в соответствующем окне WinZip программа считается зарегистрированной и перестает беспокоить пользователя предложением совершить покупку.
Алгоритм, используемый в WinZip для проверки соответствия регистрационного кода имени пользователя, много лет назад был раскрыт, и в Интернете можно без труда найти исходные тексты и готовые программы, позволяющие вычислить правильный регистрационный код для произвольного имени. Маловероятно, что в WinZip Computing не знают о существовании генераторов кодов к их программе, но на протяжении многих версии схема регистрации не менялась и, похоже, меняться не будет. Несмотря на сравнительную простоту получения полностью работоспособной копии WinZip без оплаты стоимости лицензии, ужесточение схемы регистрации вряд ли вызовет резкое увеличение объемов продаж. А вот затраты на обновление регистрационных номеров у всех существующих легальных пользователей могут оказаться совсем не маленькими.

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

Регистрация npoдуктов Microsoft
Долгие годы продукты компании Microsoft (операционные системы, офисные продукты) не использовали сколько-нибудь стойкой защиты от несанкционированного тиражирования. Имея оригинальный дистрибутив, можно было при желании установить его на любое число компьютеров. И не считалось большим преступлением, хотя и являлось нарушением лицензии, когда купленный какой-нибудь компанией программный продукт устанавливался работником не только на офисный, но и на домашний компьютер, чтобы иметь больше возможностей для изучения и освоения новых функций. Похоже, такая ситуация вполне устраивала Microsoft - популяризация собственного программного обеспечения явно шла на пользу компании. А когда пользователь принимал решение о покупке программного обеспечения для домашнего компьютера, выбор чаще падал на продукты Microsoft, ведь с ними он уже был хорошо знаком.
Когда на рынке операционных систем для персональных компьютеров с процессорами семейства х86 компания Microsoft стала безусловным лидером, она приняла решение об изменении правил игры и ввела активацию программных продуктов. Теперь устанавливать дополнительные копии стало довольно трудно. Но если бы активация была заложена в продукты Microsoft с самого начала, не известно, как сложилась бы судьба Microsoft.

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



Поиск по сайту


Смотрите также