Пластиковый сейф: исследование уязвимости в системах цифровой сертификации Андрей Васильков
Пластиковый сейф: исследование уязвимости в системах цифровой сертификации
Андрей Васильков
Опубликовано 17 сентября 2013
Многие смарт-карты обладают низкой криптографической защитой либо не имеют её вовсе. Это утверждение справедливо даже для тех карт, которые признаны соответствующими жёстким критериям FIPS 140-2 Level 2 и надёжность которых подтверждена двумя международными сертификатами. К такому выводу пришла группа из семи независимых криптографов.
Полный отчёт об исследовании, компрометирующем существующую систему сертификации, будет представлен на конференции Asiacrypt 2013. Часть любопытных деталей стала известна уже сейчас.
Серьёзная уязвимость была выявлена в тайваньской программе цифровой сертификации с использованием персональных смарт-карт. С учётом её характера можно предположить, что она затрагивает другие страны и области применения. Основная проблема заключается в генераторе псевдослучайных чисел (ГПСЧ), применяемом в широко распространённом варианте криптосистемы RSA.
Пример ненадёжного персонального цифрового сертификата на смарт-карте (фото: Dan Goodin).
Приставка «псевдо» используется потому, что получение истинно случайных значений трудно реализовать на уровне математических алгоритмов. Создаваемые генераторами цифровые последовательности всегда немного отклоняются от закона равномерного распределения. Однако эти отличия от идеальной схемы обычно не слишком принципиальны и нивелируются по мере увеличения множества сгенерированных чисел, а каждый генератор проходит ряд проверок, прежде чем стать основой серьёзного программного продукта.
В рассматриваемом случае генератор для системы цифровой сертификации оказался настолько посредственным, что среди собранных ключей RSA длиной 1 024 бита группе аналитиков под руководством Кеннета Дж. Патерсона удалось взломать 184 штуки в течение нескольких часов на рядовом персональном компьютере.
Распределение этих простых чисел не выглядит случайным даже с оговорками (изображение: Daniel J. Bernstein et al.).
При использовании корректного ГПСЧ стойкость криптографической системы RSA (как и всех алгоритмов асимметричного шифрования) базируется на том, что при наличии открытого ключа сложно вычислить парный ему секретный.
Ключи создаются на основе произведения пар больших простых чисел (натуральных чисел, которые делятся без остатка только на единицу и сами на себя). Эти числа генерируются псевдослучайным образом. В теории ключу длиной 1 024 бита соответствует множество из 2502 простых чисел. Для атакующей стороны они все равновероятны.
На практике это означает неприемлемо долгое время атаки (годы, века) даже с использованием суперкомпьютера или сети распределённых вычислений, так как она в конечном счёте сводится к решению задачи факторизации — представления (больших) целых чисел в виде произведения простых.
Эксперт по вопросам криптографии Марк Бернетт поясняет в своём микроблоге, что число атомов во Вселенной гораздо меньше множества этих пар. Поэтому при реальном соблюдении всех требований FIPS 140-2 Level 2 шанс найти два идентичных произведения простых чисел или сотню слабых ключей RSA даже из миллионов образцов должен быть очень близок к нулевому.
Случайна ли ошибка в генераторе случайных чисел?
На первый взгляд, такая грубая ошибка, как дефектный генератор псевдослучайных чисел, в международной платёжной системе просто не могла пройти мимо десятков специалистов сертификационных центров и остаться незамеченной. Складывается впечатление, что их попросту заставили проигнорировать её, а сложившаяся ситуация возникла по причине закрытости деталей конкретной криптографической системы.
Распространено мнение, что открытый исходный код криптографических программ гарантирует их надёжность. Однако на практике получается, что открытость — необходимое, но не достаточное условие.
К примеру, подобная ошибка в генераторе случайных чисел криптографического пакета OpenSSL (применяемого в том числе и для создания ключей RSA) в ОС Debian не замечалась сообществом более полутора лет, хотя его исходный код был общедоступен. Всё это время серверами генерировались слабые OpenSSL-ключи. Они были настолько предсказуемы, что вскрывались в течение нескольких часов ещё пять лет назад. При быстрой проверке среди владельцев цифровых сертификатов на основе слабых ключей обнаружилось свыше двадцати тысяч сайтов коммерческих и правительственных организаций, одним из которых был сайт Белого дома.
Оценка надёжности
Критерии надёжности криптографических систем пересматриваются каждый год. Происходит это даже не столько в связи с увеличением мощности компьютеров, сколько из-за развития математики. Продолжается поиск всё больших простых чисел, открываются их новые свойства, создаются более эффективные алгоритмы и реализующие их ценой минимальных затрат узкоспециализированные чипы.
В этом году перуанским математиком Харальдом Хельфготтом (Harald Andres Helfgott Seier) была решена одна из старейших математических проблем — доказана гипотеза Гольдбаха. Она гласит, что любое нечётное число больше пяти можно представить в виде суммы трёх простых чисел.
Определить общее количество простых чисел в заданном диапазоне гораздо проще, чем вычислить их ряд до этого предела. Существуют (и разрабатываются новые) также способы эффективного поиска простых чисел отдельных типов и алгоритмы проверки произвольного числа на соответствие критериям простоты.
При помощи проекта добровольных распределённых вычислений было найдено самое большое (среди известных на сегодня) простое число. Им оказалось число Мерсенна: 2 57885161 — 1. Его запись в десятичном виде в формате текстового файла выглядит так: [Осторожно! Браузер может зависнуть при попытке загрузить эту страницу в память.].
Гладко было на бумаге…
Помимо очевидного упрощения задачи взлома систем шифрования с течением времени (в силу развития математики и закона Мура), существует гораздо более серьёзная проблема — снижение стойкости применяемых на практике криптографических средств из-за ошибок в их реализации или намеренного ослабления.
Именно в последнем заключается политика правительства США, Канады, Великобритании и, возможно, других стран в отношении как экспортируемых, так и свободно доступных криптографических продуктов. К примеру, эффективная длина ключа намеренно уменьшалась в системах с блочным алгоритмом DES и поточным алгоритмом шифрования A5.
До недавнего времени считалось, что наиболее популярные варианты реализации RSA сегодня лишены такого явного огрубления, но их стойкость оказалась снижена на другом уровне.
После двух с половиной лет распределённых вычислений группе криптографов под руководством Торстена Клейнюнга (Thorsten Kleinjung) в декабре 2009 года удалось выполнить факторизацию ключа RSA длиной 768 бит методом решета числового поля. После этой работы оценка вычислительной сложности взлома криптосистемы RSA была понижена на несколько порядков.
Последующие работы этого же коллектива выявили другие проблемы с практической реализацией криптосистем на базе RSA. Как и в рассмотренных выше случаях, её корнем стал ненадёжный ГПСЧ. Совпадающие произведения простых чисел были обнаружены у одного процента всех проанализированных ключей с длиной 1 024 бита. Это кажется не столь большим, пока не осознаёшь, что в таком огромном массиве идентичных пар не должно встречаться вовсе. Разложив модуль на произведение двух простых чисел, атакующий может вычислить недостающий секретный компонент и взломать RSA.
Главный специалист подразделения безопасности корпорации EMC и директор лаборатории RSA Ари Джулс (Ari Juels) ознакомился с исследованиями группы Торстена и опубликовал официальный комментарий. На страницах блога он в очередной раз подчёркивает, что теоретическая стойкость алгоритма не эквивалентна надёжности конкретных криптографических систем на его основе. Указанные недостатки касаются не самого алгоритма RSA, а проблем его применения.
Криптографическое общество любителей слабых ключей (основные члены клуба по версии cryptome.org).
Что получается в сухом остатке? На протяжении как минимум последних пяти лет разные группы криптографов указывали на однотипные проблемы в самых распространённых системах, использующих алгоритм RSA. Проанализировав эти отчёты и фактические темпы вскрытия ключей разной длины в конкурсе RSA Challenge, Национальный институт стандартов и технологий США (NIST) рекомендовал устранить выявленные ошибки, а также прекратить использование ключей длиной 1 024 бита и менее не позже начала 2010 года. Однако проблема остаётся актуальной и для ключей длиной 2 048 бит, поскольку ненадёжные генераторы псевдослучайных чисел продолжают применяться до сих пор в самых ответственных областях.
К оглавлению
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Десять лет Facebook: всё только начинается! Андрей Васильков
Десять лет Facebook: всё только начинается! Андрей Васильков Опубликовано 04 февраля 2014 Сегодня крупнейшая в мире социальная сеть Facebook отмечает свой десятилетний юбилей. Она прошла сложный путь от локального сетевого сервиса для студентов
Гиперзвуковой SR-72: скорость как залог неуязвимости Андрей Васильков
Гиперзвуковой SR-72: скорость как залог неуязвимости Андрей Васильков Опубликовано 05 ноября 2013 После долгого периода разработок в атмосфере повышенной секретности в компании Lockheed Martin официально представили программу создания нового
Десять смартфонов с поддержкой USB-OTG Андрей Васильков
Десять смартфонов с поддержкой USB-OTG Андрей Васильков Опубликовано 08 мая 2013 По итогам апреля аналитики отмечают, что на фоне общего подъёма рынка мобильных устройств доля ноутбуков и нетбуков продолжает падать. Во многом это происходит потому, что
Onyx выпускает смартфон с E Ink дисплеем Андрей Васильков
Onyx выпускает смартфон с E Ink дисплеем Андрей Васильков Опубликовано 16 мая 2013 Фирма Onyx, известная своими читалками серии Boox, решила воплотить идею смартфона с E Ink дисплеем. На официальном сайте компании недавно появилось описание новой модели E43,
Это приложение превратит смартфон в телохранителя Андрей Васильков
Это приложение превратит смартфон в телохранителя Андрей Васильков Опубликовано 26 февраля 2014 Многочисленным датчикам смартфона и даже простому микрофону находится всё больше неожиданных применений. Молодая американская компания One Llama
Восемь секретов Windows 8 Андрей Васильков
Восемь секретов Windows 8 Андрей Васильков Опубликовано 04 апреля 2013Президент подразделения по производству чипов памяти Samsung Чун Тон Су недавно выступил с резкой критикой Windows 8. В своём заявлении он утверждает, что в целом отмечается слабый интерес к новой ОС, а её судьба
А. Самсонов о троичной логике и цифровой археологии Андрей Письменный
А. Самсонов о троичной логике и цифровой археологии Андрей Письменный Опубликовано 29 декабря 2011 года В шестидесятые годы прошлого столетия в СССР разрабатывали уникальные вычислительные машины «Сетунь». В отличие от обычных компьютеров, они
Как Dropbox распознаёт пиратские файлы Андрей Васильков
Как Dropbox распознаёт пиратские файлы Андрей Васильков Опубликовано 01 апреля 2014 На прошедших выходных в интернете поднялся шум из-за того, что пользователь платной подписки на облачный сервис Dropbox не смог передать друзьям ссылку на фильм,
Гуманоидные роботы по гуманной цене Андрей Васильков
Гуманоидные роботы по гуманной цене Андрей Васильков Опубликовано 04 апреля 2014 Прошлый год завершился для Google покупкой семи компаний, занимающихся проектированием роботов. Главным приобретением стала фирма Boston Dynamics, об успехах которой
NEX: индивидуальность и апгрейд носимой электроники Андрей Васильков
NEX: индивидуальность и апгрейд носимой электроники Андрей Васильков Опубликовано 17 марта 2014 Гибкая электроника и носимые компьютеры стали активно развивающимся направлением. Уже доступны десятки умных часов, электронных браслетов для спорта,
Google Glass как спутник жизни Андрей Васильков
Google Glass как спутник жизни Андрей Васильков Опубликовано 19 августа 2013 Один из первых обладателей Google Glass — веб-дизайнер Гомер Гейнс (Homer Gaines) — поделился свежим опытом практического применения очков. Он утверждает, что сегодня это единственное
Тестовые приложения для смартфонов с ОС Android Андрей Васильков
Тестовые приложения для смартфонов с ОС Android Андрей Васильков Опубликовано 20 августа 2013 Среди множества бесплатных программ для смартфонов с ОС Android особое место занимают тестовые и диагностические утилиты. Помимо удобного способа проверки
Как выглядит пользователь для Microsoft Kinect 2.0 Андрей Васильков
Как выглядит пользователь для Microsoft Kinect 2.0 Андрей Васильков Опубликовано 04 октября 2013 Контроллер Kinect версии 2.0 появится в игровой приставке восьмого поколения Microsoft Xbox One, официальные продажи которой начнутся в конце ноября. Как выглядит мир
Миллиардные ставки Facebook на виртуальность Андрей Васильков
Миллиардные ставки Facebook на виртуальность Андрей Васильков Опубликовано 06 мая 2014 Ещё недавно коллектив молодой компании Oculus VR стоял на Kickstarter «с протянутой рукой», а сейчас создатели шлема виртуальной реальности (ВР) становятся законодателями
Выбираем фотоаппарат для летнего отдыха Андрей Васильков
Выбираем фотоаппарат для летнего отдыха Андрей Васильков Опубликовано 06 июля 2013 Съёмка во время летнего отпуска – своеобразный и довольно специфический жанр фотографии. Для него требуется техника, которая не обременяет отдыхающих, но вместе с
IBM представила первые серверы OpenPOWER Андрей Васильков
IBM представила первые серверы OpenPOWER Андрей Васильков Опубликовано 24 апреля 2014 На этой неделе IBM представила первые серверы OpenPOWER, созданные по инициативе одноимённого отраслевого альянса. Кроме самой IBM, в него вошли Google, Nvidia и другие компании,