The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



Индекс форумов
Составление сообщения

Исходное сообщение
"Дэниел Бернштейн выступил с критикой позиции ФБР о шифровани..."
Отправлено opennews, 20-Окт-14 23:54 
Недавно директор ФБР Джеймс Коми выступил с докладом (http://www.fbi.gov/news/speeches/going-dark-are-technology-p... на котором выразил (http://habrahabr.ru/post/240865/) неудовольствие массовым внедрением шифрования в смартфоны и прочие средства коммуникаций, выразив надежду на принятие законов, требующих предоставлять ФБР ключи шифрования. Так, Коми выразил недовольство тем, что все постоянно подключаются к разным точкам Wi-Fi, а все больше сервисов и программ использует шифрование на стороне клиента. Это в свою очередь вызвало бурную ответную реакцию в среде специалистов по безопасности. Наиболее интересным можно посчитать выступление (http://cr.yp.to/talks/2014.10.18/slides-djb-20141018-a4.pdf) известного специалиста по безопасности и шифрованию Дэниеля Бернштейна (Daniel J. Bernstein (http://en.wikipedia.org/wiki/Daniel_J._Bernstein)).


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

Долговременные стратегии по взаимодействию с коммерческими структурами:

-  Внедрение уязвимостей в коммерческие средства шифрования, компьютерные системы и устройства, используемые потенциальными мишенями.
-  Сбор данных и метаданных о цели за счет задействования дружественных провайдеров и усиление контроля над магистральными (core) частями сети.
-  Усиление использования коммерческих методов доставки и получения информации, касающейся мишени.
-  Изучение возможностей взлома и эксплуатации иностранных вариантов технологий, наподобие trusted computing.
-  Оказание влияния на стандарты, политики и спецификации для коммерческих технологий на основе криптографии по открытым ключам.
-  Агрессивное инвестирование в изучение способов взлома беспроводных сетей нового поколения.

Прочие стратегии:

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

Далее Бернштейн проводит мысленный эксперимент: как может выглядеть влияние на экосистему программного обеспечения для насаждения небезопасных алгоритмов в программном обеспечении в данный момент времени?

Атаки основанные на изучении времени выполнения алгоритмов.

-  Например, AES в большинстве реализаций используется доступ к таблице (lookup table). Доступ к элементам таблицы зависит от используемого ключа. Это вызывает изменение состояния кэша процессора. Все это может позволить восстановить ключ, проделав всего лишь серию измерений времен, нацеленных на изучение использования кэша процессора. Исследователи Osvik, Shamir и Tromer показали еще в 2005 году, как за 65 миллисекунд можно получить ключ шифрования AES из ядра Linux. Все что для этого требуется - возможность запуска процесса без каких либо специальных привилегий на том же процессорном ядре.
-  В 2011 году Brumley и Tuveri смогли восстановить приватный ключ ECDSA в случае OpenSSL за считанные минуты, используя тот факт, что условные переходы зависят от секретного ключа.
-  Существует множество иных подвидов этой атаки. Например, в случае IPSec при проверке целостности сообщения (MAC) - как правило используется функция memcmp, завершающаяся за различное время для различных случаев. А в 2014 году исследователи van de Pol, Smart и Yarom смогли восстановить приватный ключ, используемый в кошельке Bitcoin за всего 25 подписей, сформированных этим ключом.

В этом направлении Бернштейн выделяет явно неверный отчет от NIST 2001 года. В нем правильно констатируется, что криптографиечские операции шифрования и расшифровки должны завершаться за постоянное время, независимо от ключа и входных данных, однако этот же отчет почему-то утверждает, что доступ к значениям таблиц является операцией занимающей постоянное время, что не соответствует действительности. Или например RFC 5246 утверждает, что утечки информации о времени операций - "незначительные", что похоже на попытку принизить значимость этого фактора. А в 2013 году исследователи AlFardan и Paterson смогли в результате взломать TLS 1.2 и DTLS и получить нешифрованный вариант текста.


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


Бернштейн иронизирует: "а что если кто-то сделает простой и быстрый алгоритм, отрабатывающий за постоянное время?! В этом случае - ни в коем разе не дайте его принять как стандарт! Протолкайте лучше AES, с его проблемами с разным временем доступа, ни в коем случае не принимайте как стандарт более безопасный Serpent, где таких проблем нет. Всячески пытайтесь показать, что именно стандартизация - ключ к надежности, а нестандартные алгоритмы, дескать, могут иметь неизвестные уязвимости".

Атаки на добавочное заполнение (padding oracle)

Вредный совет от Бернштейна, который понравится ФБР: прогоняйте поддельные сообщения от атакующего через максимально возможное количество стадий обработки до того, как принять решение о некорректности этого сообщения. Например, расшифруйте сообщение и проверьте добавочное заполнение (padding) ДО того как проверять целостность (MAC) сообщения по серьезной криптографической функции. Это позволит утечь достаточному объему информации о корректности "добавки" сообщения и в конечном итоге атакующий сможет успешно угадать зашифрованный текст сделав несколько запросов к "ораклу", которым как правило выступает сервер (актуально в основном для блочных шифров шифров в режиме CBC). Результат? Атаки BEAST и PUDDLE на SSL. Аналогичные по смыслам атаки с задействованием "encrypt-only" опций IPSec. И "неожиданная" публикация атак на реализацию IPSec в Linux в 2006 году и на реализацию IPSec из RFC в 2007.

Неслучайная случасность.

-  В 1995 году как-то совершенно случайно оказалось, что приватные ключи, сгенерированные Netscape, содержат всего 50 битов энтропии и, соответственно, любой ключ можно угадать за обозримое время.
-  А в 2008 году оказалось, что секретные ключи в Debian/Ubuntu содержат лишь 20 битов энтропии и составить исчерпывающий список всех возможных ключей - легко реализуемая с практической точки зрения задача.
-  В 2012 году ряд исследователей смогли получить секретные ключи для 0.5% всех SSL-серверов. Простые числа были настолько неслучайными, что в 0.5% случаев просто произошли коллизии и у исследователей оказались приватные ключи парные к публичным ключам этих серверов.


Вредные советы? Сделайте код генерации случайных чисел максимально сложным, чтобы в нем никто никогда не разобрался. Пусть каждое приложение таскает свою реализацию генератора случайных чисел, "для скорости". А для упрощения жизни программиста неплохо бы схалтурить в реализации генератора случайных чисел, чего-нибудь необдуманно упростив. Доплачивайте тем, кто использует пробэкдоренные RNG, например как Dual EC (реализация PRNG от NIST в которой недавно был обнаружен бэкдор) и козыряйте "проверенной" безопасностью "стандартных" решений. Не в коем случае не вздумайте смешивать источники энтропии в большой пул. А то чего доброго у вас может получится проверяемый процесс смешивания и достаточно большой пул, переживающий множество генераций случайных чисел с сохранением достаточного качества энтропии.


Активно дискредитируйте идею центральных пулов энтропии. Утверждайте, что это "тормозит". Сдел...

URL: http://cr.yp.to/talks/2014.10.18/slides-djb-20141018-a4.pdf
Новость: https://www.opennet.ru/opennews/art.shtml?num=40877

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру