Современная электронная библиотека ModernLib.Net

Секреты и ложь. Безопасность данных в цифровом мире

ModernLib.Net / Компьютеры / Шнайер Брюс / Секреты и ложь. Безопасность данных в цифровом мире - Чтение (стр. 21)
Автор: Шнайер Брюс
Жанры: Компьютеры,
Интернет

 

 


Первый – механизм, внешний по отношению к первичной системе, посредством которого третья сторона может получить секретный доступ к открытому тексту, который был зашифрован. И второй – существование высокочувствительного метода секретного восстановления ключа (или коллекции ключей), который должен сохраняться в тайне в течение продолжительного времени. С точки зрения полиции, GAK-системы необходимы, чтобы предоставлять полиции своевременный доступ к открытому тексту, не сообщая об этом пользователям. Системы такого типа, по мнению администрации Клинтона и ФБР, решают проблему использования шифрования преступниками, делая доказательства их преступлений очевидными.

К несчастью, решение хуже самой проблемы. Восстановление данных производится с легкостью, поскольку это делается в высших интересах пользователя. Действия пользователей подобны автоматическому созданию резервной копии; они не должны помнить, что сделали копию. (Подождите, пока я не сделаю копию этого манускрипта.) Но GAK также связан с коммуникациями – телефонными разговорами и почтой, – которые не имеют отношения к копированию данных. Хранимые данные имеют огромную ценность: если вы теряете их, то нет способа их восстановить. Данные, передаваемые при соединении, не имеют ценности: если вы потеряли их, вы можете повторить передачу.

Способы осуществления GAK различны и достаточно сложны, поскольку он должен работать, несмотря на враждебность пользователей. Требования, предъявляемые ФБР к доступу, – скорость, секретность, полнота – вынуждают пользователей усиливать меры безопасности. Если я шифрую сообщение электронной почты, я должен доверять шифрованию – как на своей стороне, так и на стороне получателя. Наличие GAK означает, что я должен быть уверен в целой инфраструктуре, предназначенной для хранения ключей: шифрование, базы данных, полиция, народ. Цена построения такой инфраструктуры может быть огромной, в соответствии с уровнем возможного риска.

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

Рассматривая различные варианты GAK, вы можете выбирать между более высокой ценой и более высоким риском. Хотя это может оказаться возможным – использовать отдельную GAK-систему относительно безопасным образом, для достижения этого результата пользователь заплатит неимоверную цену. С другой стороны, простые и недорогие GAK-системы могут создать угрозу для безопасности. Например, плохо реализованная система для восстановления ключей, обслуживаемая малоквалифицированным и низкооплачиваемым персоналом, с низким уровнем физической секретности и без надежного страхования, скорее всего, будет дешевле хорошо организованного центра. Но она также будет менее аккуратно обращаться с ключами.

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

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

Безопасность баз данных

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

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

Намного более сложно иметь дело с ситуацией, когда у Алисы есть право делать запросы и смотреть статистические данные, но нет права на просмотр информации по каждому отдельному случаю. Это одна из проблем «вывода»; Алиса может вывести информацию об отдельных случаях, но делая запросы относительно групп.

Пример: Алиса запрашивает у базы данных итоговую информацию по определенным группам. Если она сможет получить ответ на запрос такого сорта – сообщить обо всех наркоманках, в возрасте от 35 до 45 лет, у которых один из родителей диабетик, имеющих определенный почтовый адрес, – скорее всего, она получит возможность выделить отдельные случаи.

Возможное решение этой проблемы – вычищать данные, прежде чем они попадут в чьи-нибудь руки. Данные о переписи населения США 1960 года, например, засекречены подобным образом. Для статистического анализа можно получить только одну запись на тысячу, и в этих записях удалены поля, содержащие имена, адреса и другая важная информация. Бюро переписи также применяет ряд других трюков: данные, имеющие экстремальное значение, подавляются, в систему добавляется шум. Эти методы защиты сложны, и, несмотря на это, достаточно тонкие атаки все же могут быть проведены. Если вы хотите получить сведения об одной богатой семье, живущей по соседству, может оказаться возможным вывести эти данные, если вы сделаете некоторые разумные предположения.

Другое допустимое решение – наложить ограничение на типы запросов, которые пользователь может делать к базе данных. Это также трудно сделать правильно. В одной известной исследовательской работе автор, вычисляя жалованье своего босса, основывался на вполне законных запросах к базе данных переписи 1970 года, несмотря на контроль, введенный специально для того, чтобы предупреждать подобные вещи. Информационная система Национального здравоохранения Новой Зеландии пыталась разрушить подобные виды атак, не выдавая информацию по группам, состоящим менее чем из 6 человек.

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

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

Стеганография

Стеганография[42] – это наука скрывать сообщения внутри сообщений. Геродот рассказывает о практике древних греков, когда секретное сообщение записывали с помощью татуировки, нанесенной на бритую голову посланца, а потом он снова отращивал волосы, перед тем как переправить это сообщение через вражескую территорию. (Длительность этой связи измерялась месяцами.) Использование невидимых чернил – более современная технология. Микрофотоснимки были изобретены немцами во время Первой мировой войны и оставались в моде в течение многих лет. Шпионы делали негативное изображение достаточно маленьким, чтобы можно было вырезать его и поместить между строчек книги. Шпион мог пронести такую книгу везде, не опасаясь, что кто-либо обнаружит микрофотографии, скрытые на одной из ее многочисленных страниц.

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

Стеганография обеспечивает степень секретности более высокую, чем криптография. Если Алиса захочет послать Бобу секретное сообщение, она может использовать одну из популярных программ шифрования для электронной почты. Однако заинтересованное лицо может перехватить сообщение, и хотя оно не сумеет прочитать его, но будет знать о самом факте отправки сообщения. Стеганография позволяет Алисе сообщаться с Бобом секретно; она может скрыть свое письмо в GIF-файле, содержащем изображение пары жирафов. Перехватчица не поймет, что Алиса послала Бобу секретное сообщение. Для обеспечения еще более надежной защиты Алиса может зашифровать сообщение, прежде чем скрыть его.

Чем дальше, тем лучше. Но в действительности системы работают не так. Наша перехватчица не глупа; как только она увидит картинку с жирафами, у нее могут возникнуть подозрения. Почему бы это Алисе посылать Бобу картинку с двумя жирафами? Боб коллекционирует жирафов? Или он художник-график? Посылали ли Алиса и Боб одно и то же изображение жирафов друг другу в течение последних недель? Упоминали ли об этой картинке в другой корреспонденции?

Самого по себе применения стеганографии недостаточно. Алиса и Боб должны скрыть факт, что они передавали что-либо, кроме безвредных фотографий. Это будет работать только в том случае, если стеганография станет использовать существующие образцы связи (communications patterns). Я в жизни не посылал и не получал GIF-изображений. Если кто-то неожиданно пошлет мне одно, это может навести дотошного исследователя на мысль, что в нем скрыто стеганографическое сообщение. Если Алиса и Боб регулярно обмениваются подобными файлами, перехватчик не сможет узнать, какое сообщение содержит в себе – если какое-либо содержит – скрытую информацию. Если Алиса и Боб изменят свои образцы связи для скрытых сообщений, система перестанет работать. Перехватчица их «вычислит».

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

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

Скрытые каналы

Одна из проблем, связанных с применением стеганографии, – ширина полосы пропускания. Легко скрыть несколько битов информации; спрятать целое сообщение электронной почты намного труднее. Рассмотрим пример совершенно разумного использования стеганографического канала передачи данных: Алиса и Боб должны обсудить, является ли некое отдельное действие «безопасным» или «угрожающим». Это один бит информации. Они регулярно обмениваются рецептами по электронной почте и договорились, что ключевая фраза «продублируй рецепт» будет индикатором сообщения. Если в послании сказано, что рецепт может быть продублирован, действие безопасно. Если же в нем говорится, что рецепт не может быть продублирован, соответствующее действие опасно. Любой рецепт без ключевой фразы не содержит скрытого сообщения.

Этот вид систем работает, поскольку секретное послание много-много меньше, чем скрывающее его сообщение, и в общем случае называется скрытым каналом (subliminalchannel) (похоже на тайный канал, описанный в главе 8). Скрытые каналы так же стары, как компьютеры, и всегда использовались недобросовестными программистами для «скачивания» информации без согласия пользователей. Представьте, что вы программист и делаете отчет по клиентам банка, и вы хотите запустить свои руки в картотеку индивидуальных номеров (PINs). Вас не уполномочили проверять реальные данные, но доверили вам написать код для получения отчета по базе, содержащей PINs. И вы можете посмотреть отчеты, которые были сделаны раньше. Программа создания отчета добавляет пробелы после данных каждого клиента, от 0 до 9, в соответствии с одной цифрой его PIN. Пусть теперь построитель отчета использует первую цифру в первый день, вторую цифру во второй день, и так далее, пока цикл не будет завершен и мы не возвратимся к первой цифре. Вот именно. Если программист сможет приложить руку к созданию электронного отчета в течение четырех дней, он справится с восстановлением всех индивидуальных номеров. (Действительно, он имеет четыре возможных варианта для каждого номера, в зависимости от того, какая цифра использовалась построителем отчета. Легко понять, что к чему.) Ни один из тех, кто будет смотреть отчеты, не увидит в них ничего злонамеренного, и пока они не проверят код, используемый для создания отчета (а как часто это случается?), никто не узнает, что индивидуальные номера раскрыты.

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

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

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

Скрытые каналы, внедренные недобросовестными программистами, обнаруживались во всех видах программного обеспечения спустя какое-то время. Разведывательные организации, подобные NSA, долгое время подозревались во внедрении скрытых каналов, по которым идет утечка информации о ключах криптографического оборудования, проданного иностранным правительствам. Недавний скандал, в котором фигурировала шведская компания Crypto AG, подтверждает это. Побочные каналы, обсуждавшиеся в контексте главы 14, где речь шла об аппаратных средствах сопротивления вторжению, могут рассматриваться как действующие скрытые каналы.

Заметим, что для скрытых каналов существует та же проблема, что и для стеганографии – каждый, кто удосужится проверить программное обеспечение, может обнаружить скрытый канал. Но внедренные в сложное программное обеспечение, а еще лучше в аппаратное обеспечение, они могут оставаться незамеченными в течение долгого времени.

Цифровые водяные знаки

Мы говорили об интеллектуальной собственности в главе 3. К слову сказать, компании, подобные компании Диснея, собираются торговать «в розницу» своей интеллектуальной собственностью – музыкой, видеоклипами, фотоснимками, чем угодно – в цифровой форме. Они не хотели бы, чтобы люди копировали Русалочку (The Little Mermaid) и свободно распространяли ее через Интернет. Они не хотели бы, чтобы люди крали части различных изображений – даже простейшего изображения Микки-Мауса – и использовали их без уплаты определенного вознаграждения автору. Они хотят осуществлять контроль над своей собственностью.

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

В действительности есть два различных термина. Создание водяных знаков (watermarking) позволяет идентифицировать неизменяемую информацию, а использование отпечатков пальцев (fingerprinting) дает возможность идентифицировать конкретного покупателя.

Например, водяной знак Русалочки будет говорить нам нечто вроде: «Собственность Диснея», тогда как цифровой отпечаток пальца на этом фильме скажет нам следующее: «Куплено Алисой 1 января 2001 года».

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

Таким образом, в зависимости от того, какие данные вы заложили в водяные знаки, вам предоставлена одна из двух возможностей. Во-первых, можно определить, кто обладает авторскими правами. Во-вторых, если каждая проданная копия Русалочки будет снабжена водяными знаками, указывающими на имя и адрес того, кто ее купил, станет возможным установить также и покупателя: тогда, если копия появится в Интернете, компания Диснея сможет найти виновного.

Замечательная идея, только не работает.

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

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

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

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

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

Защита от копирования

Эту проблему легко описать, но гораздо труднее решить. Компании, производящие программное обеспечение, хотят, чтобы люди покупали их продукцию; их приводит в бешенство, когда кто-нибудь делает копии коммерческой программы, которая стоит сотни долларов, и раздает ее своим друзьям. (Правда, теперь им это даже нравится в каком-то смысле. Они понимают, что если некто, вовсе не собиравшийся приобрести законную копию, получит возможность попользоваться программой и придет от этого в восторг, всяко он или его босс в итоге приобретут эту программу, а не продукт конкурентов. При распространении программы WordPerfect большую роль сыграла эта схема, которая во многом способствовала росту ее популярности.) Сказанное в первую очередь относится к распространению компьютерных игр и к распространению программ в тех странах, где слабо обеспечивается защита авторских прав: в этих случаях большинство пользователей скорее предпочтут приобретение пиратской копии покупке программы законным образом. (С подобной проблемой сталкиваются продавцы книг, кинофильмов, видео и т. д. – им не выгодно, чтобы их продукцию копировали.)

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

Если мы имеем дело с компьютерным пользователем Джо Середнячком, то любая система защиты от копирования работает. Он сможет скопировать обычные файлы, следуя указаниям, но ему не придет в голову взломать сложную схему зашиты от копирования. Если же мы имеем дело с Джейн Хакер, никакая система защиты от копирования не сработает.

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

Существует множество таких Джейн, которые выбрали своим хобби взломы подобных систем. Они «болтаются» по Сети, продавая нелегальное программное обеспечение. Другие делают это для получения прибыли. Они работают в Китае, Тайване и еще где угодно, взламывая системы защиты от копирования и перепродавая программное обеспечение в десять раз дешевле розничной цены. Они способны разрушить даже самый сложный механизм защиты. Урок, который мы должны вынести из того, что эти люди существуют, – это понимание, что любая схема защиты от копирования может быть взломана.

Защитная заглушка – это последнее слово техники в искусстве создания систем защиты от копирования. Она представляет собой аппаратное средство, подсоединенное к компьютеру, обычно к параллельному порту. (Конфликты с другими механизмами, подсоединенными к параллельному порту, или с другими заглушками проявляются лишь в редких случаях.) В процессе выполнения программ часто используется обращение к заглушкам; например, через каждую тысячу нажатий на клавиатуру или щелчков кнопкой мыши; или когда пользователь пытается сохранить данные; или каждый раз, когда он выбирает вид оружия в компьютерной игре. Если заглушка не отвечает на запрос или отвечает некорректно, программное обеспечение прерывает свою работу. Или, что более эффективно, продолжает работать, но при этом выдает неправильные результаты. (В версии Autodesk's 3D Studio 1992 года заглушка использовалась для создания в памяти таблицы, которая требуется для правильного отображения трехмерной геометрии. Удаление заглушки приводило к тому, что программа работала неправильно в течение нескольких часов: сначала это происходило почти незаметно, но чем дальше, тем хуже. Autodesk был вынужден в спешном порядке давать ответы на множество запросов незарегистрированных пользователей, жалующихся на странную ошибку в этой версии.)

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

Как это происходит? Хакеры вне зависимости от того, устояла заглушка или нет, внедряются в код и удаляют из него все обращения к ней. Это кропотливая работа: хакеры должны просмотреть весь код строку за строкой, функцию за функцией, вызов за вызовом. Им необходимо подключить логический анализатор к заглушке и проследить адреса обращений к ней. Сложная программа может содержать десятки мегабайтов кода. Но вспомним, что было сказано в главе 2, и мои рассуждения о том, чем Интернет отличается от реального мира: лишь первый взломщик должен добиться успеха, взломанной версией программы смогут пользоваться все остальные.

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

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

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

Двоякая природа рисков в этом случае точно такая же, как и рассматривавшаяся в связи с проблемой водяных знаков. Посмотрите, что происходит в видеоиндустрии: пиратство было гораздо менее распространено, когда видеомагнитофоны были еще в диковинку. Тому есть две причины. Во-первых, изящная защита от копирования не позволяла Джо Середнячку использовать для этих целей ни один из существовавших видеомагнитофонов. Во-вторых, розничная цена видеозаписей была настолько низка, что все ухищрения Джейн Хакер были экономически не оправданны.

Что действительно интересно в связи с проблемой защиты от копирования и пиратства, так это идея о том, что проблема на самом деле не существует.


  • Страницы:
    1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35