Брюс Шнайер - Секреты и ложь. Безопасность данных в цифровом мире
Против квалифицированного пользователя бессильны любые контрмеры. В главе 16 я описывал героический путь, который преодолевают некоторые хакеры, чтобы взломать схемы защиты от копирования. Ранее в этой главе я рассказывал о специально разработанных программах-ботах, которые разрушают интерфейс пользователя в компьютерных играх. Поскольку преодоление контрмер имеет такое большое значение для хакеров, бесполезно пытаться построить систему, которая была бы неуязвима. И что еще хуже, большинство систем нуждаются в защите от наиболее ловкого взломщика. Если один человек взламывает Quake (или «Интердоверие», или «Пропажа Инк.»), он может придумать программное средство «выбрать и щелкнуть», которое затем использует любой желающий. Систему безопасности, которая была неприступна почти для всех, сумеет после этого вскрыть каждый.
Единственно возможное решение состоит в том, чтобы поместить механизм дешифрования в защищенное аппаратное устройство в надежде на то, что это замедлит работу профессионалов на несколько лет. Но как только кому-нибудь понадобится «программный проигрыватель», защита будет взломана в течение считанных недель. Индустрия DVD столкнулась с этим еще в 1999 году. Компания Glassbook приобрела такой опыт в 2000 году, когда незащищенные копии Верхом на ядре Стивена Кинга появились через два дня после того, как была выпущена электронная версия книги (возможно, имевшая защиту от копирования).
Любая разумная политика безопасности исходит из того, что от профессиональных пиратов невозможно защититься с помощью технологий. Профессиональные пираты в цифровом мире не отличаются от людей, которые подделывают сумочки от Шанель, и общество знает способы поимки таких людей (механизмы обнаружения и реагирования в физическом мире). Они могут быть эффективными или нет, но они совершенно бесполезны в случае борьбы с подделками в цифровом мире. Такая политика безопасности признала бы, что Дядюшка Стив – любитель, и что почти любая мера противодействия ему является достаточной до тех пор, пока она не будет взломана окончательно или не окажется заведомо уязвимой.
Обратите внимание, что это исследование показывает, что разумные поставщики продуктов должны найти альтернативные способы получения прибыли. Продажа копий книги в цифровом мире не приносит такого же дохода, как в мире вещественном. Намного выгоднее продавать обновления в реальном времени, подписку, а кроме того, есть дополнительные причины, чтобы люди покупали бумажную копию. Мне нравится покупать компакт-диски, а не копировать их, потому что я получаю вкладыш с пояснениями. Я также покупаю настоящую книгу вместо того, чтобы распечатывать ее электронную копию, потому что книгу в переплете удобно носить с собой. Я готов платить за биржевые сводки, поскольку эта информация ценна тогда, когда поступает своевременно.
Реализацию альтернативных моделей можно видеть в методах общественного финансирования добрых дел: общественное телевидение, общественное искусство и уличные представления. Представления проводятся бесплатно, но индивидуальные пожертвования позволяют им состояться. Вместо того чтобы установить продажную цену в 29,99 доллара на эту книгу, возможно, я должен был поместить на веб-странице предложение о внесении взносов. Я написал бы книгу и поместил бы ее в общедоступном домене, но только после того, как получил бы взносы на 30 000 долларов. (Эта идея использовалась для финансирования некоторых анти-бушевских кампаний в 2000 году. Люди обязуются сделать взносы со своих кредитных карточек, но деньги будут востребованы только в том случае, если соберется необходимая сумма. Заметьте, компания, выпускающая кредитные карточки, действовала как доверенное третье лицо в этой сделке.)
В других отраслях по-разному решают эти вопросы. Наиболее разумные компании, проводящие игры, выходят из положения, в частности, допуская использование ботов в некоторых турнирах, но проводя заключительные раунды в узком кругу, на проверенном компанией компьютере. Самые недоверчивые фирмы, поддерживающие электронную почту, подчеркивают, что при установке системы безопасности скорее происходит умаление ответственности, нежели достигается абсолютная безопасность программного обеспечения. Угрозу представляют не злонамеренные пользователи, копирующие и распространяющие электронную почту, а честные служащие, забывающие удалить почту, и злостные адвокаты, спустя годы использующие эту корреспонденцию в суде. Но попытка ограничить возможности пользователя на персональном компьютере обречена на неудачу. Честные люди остаются честными, но при этом возникает обманчивое чувство безопасности. Впрочем, иногда и этого достаточно.
Банковские автоматыБанкоматы – интересный пример, поскольку модели доверия и безопасности в этом случае переплетены более, чем это кажется на первый взгляд. Банкомат – это сейф, который выдает деньги по команде некоего внешнего устройства. Машина считывает данные пользователя (информацию с магнитной полосы и идентификационный номер), посылает их на центральный сервер и получает ответное сообщение (выдать деньги или отказать, не возвращать карту и т. д.). Банкомат должен быть защищен от мошенников на линиях связи, от взломщиков и от возможности того, что сейф просто увезут. Также необходимы контрольные записи на случай возникновения споров (такой вид учета еще далеко не идеален).
Многие люди должны иметь доступ к банкоматам. Инкассаторы объезжают их на бронированных машинах, чтобы наполнить автоматы наличными деньгами. Обслуживающий персонал должен иметь к ним доступ как в установленное по графику время, так и незамедлительно в случае чрезвычайной ситуации. И если вспомнить, что состав персонала и охраны может меняться, банк должен иметь возможность прекратить доступ для одних работников и ввести доступ для других.
Также примите в расчет простые финансовые калькуляции. Потери от утраты банкомата определяются только стоимостью его замены и суммой наличных денег внутри. Не имеет смысла тратить 10 миллионов долларов на меры безопасности.
Криптография здесь довольно проста. Канал связи не нуждается в шифровании, требуется только аутентификация. Это можно сделать с помощью или МАС-адресов, или цифровой подписи. Контрольные записи, защищенные хэш-функцией, должны сохраняться и в банкомате, и на сервере.
Обеспечение компьютерной безопасности в этом случае очевидно. Машина должна все проверить. В подозрительных случаях она скорее завершит работу, чем необдуманно выдаст деньги. Программное обеспечение должно быть таким, чтобы его было трудно изменить и обслуживающий персонал не смог бы внедрить в систему троянских коней.
Обеспечение физической безопасности – тоже простая задача. Деньги обязаны храниться в сейфе. Здесь должны находиться и контрольные записи всех, кто открывает сейф (возможно, каждый человек будет иметь свою собственную комбинацию или уникальный маркер доступа). Любые долговременные шифровальные ключи должны быть стерты при первых признаках вмешательства.
Интересно заметить, что владельцы банкоматов только недавно получили в свое распоряжение адекватные физические меры противодействия. До недавних пор банкоматы устанавливали в стене банка или другом безопасном месте. В этой книге я упоминал о грабителях, которые увозили автоматы целиком, что причиняло массу беспокойства. Впоследствии кто-то пришел к заключению, что эти нападения единичны и что можно заработать намного больше денег, если установить банкоматы на каждой автостанции, в каждом баре, торговом центре и на каждой бензоколонке. Это были маленькие автономные банкоматы, не столь защищенные, но последнее не имело значения. Если их устанавливать в общественных местах, то появится больше возможностей для обнаружения и реагирования. В них хранится меньше наличности, поэтому и риск меньше. А доходы высоки, так что они достаточно выгодны. Даже если и исчезнет случайно какой-либо банкомат, идея стоит того.
Совсем недавно появилось другое новшество в политике безопасности. Кто-то наконец осознал, что банкомат состоит из двух частей: хранилища денег и сетевого компьютера, который указывает хранилищу, когда и сколько выдать денег. И нет никакой необходимости соединять эти две части в одном месте. В магазинах уже используется защищенное хранилище денег – кассовый аппарат. Теперь некоторые банкоматы представляют собой только компьютер, и они не содержат наличных денег внутри. Компьютер проводит аутентификацию и затем печатает бланк. Клиент относит бланк к кассовому аппарату и получает деньги. Все это хорошо работает только в случае небольших денежных сумм, но система действует. Это – изящный пример правильного подхода к безопасности… до тех пор, пока кто-нибудь не подделает бланк.
Компьютеризированные лотерейные терминалыКомпьютеризированные лотерейные терминалы используются в большинстве лотерей типа «Кено». Организаторы лотереи приобретают защищенный компьютер и принтер, который печатает и заверяет лотерейный билет с выбранными номерами. Один или два раза в неделю проводится розыгрыш. Выигрыши бывают как маленькие, так и очень большие.