Рейтинговые книги
Читем онлайн Секреты и ложь. Безопасность данных в цифровом мире - Брюс Шнайер

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 58 59 60 61 62 63 64 65 66 ... 117

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

В качестве примера системы, которая эффективно использует средства сопротивления вторжению как часть общего механизма управления, приведу систему контроля за ядерными вооружениями в США. Риск реален: какой-нибудь недобросовестный командир может осуществить запуск оружия без разрешения, или случится, что тактическое ядерное оружие будет украдено или (если оно находится на заокеанской базе) попадет в руки союзников во время кризиса. Необходимо быть уверенным, что запуск ядерного оружия произойдет только при наличии соответствующей директивы из Вашингтона. Для решения этой проблемы используется система, называемая PAL (permissive active link, разрешающая активная связь), детали которой до сих пор являются секретом. Мы знаем только, что PAL может действительно быть полезной, если она запрятана глубоко внутри большой и сложной системы вооружений. Более простые виды вооружений хранятся в специальных контейнерах – это защитные системы предписанного действия (prescribed action protective systems, PAPS), которые наилучшим образом обеспечивают сопротивление вторжению.

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

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

И есть фундаментальное различие в системе управления. Ядерные вооружения находятся под экстремальным физическим контролем; это делает меры по сопротивлению вторжению более эффективными.

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

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

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

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

Нападения через побочные каналы

В последние годы в литературе стали появляться описания новых видов крипто-аналитических атак: атаки, целью которых являются определенные детали выполнения. Тайминг-атака (timingattack, атака, основанная на сравнительных измере ниях времени) вызвала большой шум в прессе в 1995 году: закрытые ключи RSA могли быть восстановлены с помощью измерения относительных интервалов времени операций шифрования. Такие атаки были успешно проведены против смарт-карт и других опознавательных знаков доступа, а также против серверов электронной коммерции в Интернете.

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

Допустим, нападающий хочет узнать секретные ключи, находящиеся внутри модуля, защищенного от вторжения: смарт-карты, карты PCMCIA или чего-нибудь подобного. Он не может осуществить криптографический анализ алгоритмов или протоколов (они слишком хороши) и не способен взломать систему сопротивления вторжению. Но атакующий умен; вместо того чтобы анализировать только входные и выходные данные, он обращает внимание также на скорость, с которой модуль проводит операции. Критическое рассмотрение атаки измерения времени показывает, что выполнение многих операций шифрования происходит с различной скоростью для различных ключей. Знание скорости, с которой происходит определенная операция, дает информацию о ключе. Знание множества различных скоростей для различных операций помогает получить полную информацию о ключе.

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

Рассмотрим тайминг-атаку против устройства проверки пароля. Берем случайный пароль и варьируем только первый символ. Так как всего букв 26, можно использовать строчные и прописные, еще 10 цифр, несколько знаков пунктуации, итого около 70 паролей. Возможно, один из них устройство будет проверять дольше, чем остальные, прежде чем отклонить. Возможно, это пароль с правильным первым символом. Повторим то же самое с остальными символами. Если вы предпринимаете попытку атаковать пароль из 8 символов, вам нужно проверить всего 560 паролей и измерить соответствующие задержки.

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

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

1 ... 58 59 60 61 62 63 64 65 66 ... 117
На этой странице вы можете бесплатно читать книгу Секреты и ложь. Безопасность данных в цифровом мире - Брюс Шнайер бесплатно.
Похожие на Секреты и ложь. Безопасность данных в цифровом мире - Брюс Шнайер книги

Оставить комментарий