Слабость случайных чисел раскрывает устройства


Отчет, анализирующий сертификаты RSA, выявил слабое место, которое означает, что они могут быть легко взломаны, что открывает доступ к сетевым и IoT-устройствам, которые полагаются на цифровые сертификаты на основе сертификатов RSA.

Исследователи из KeyFactor просмотрели 75 миллионов сертификатов RSA из Интернета и обнаружили, что 1 из 172 сертификатов имеет ключи, которые имеют общий фактор с другим. Напротив, только 5 из 100 миллионов сертификатов, найденных в образце из журналов прозрачности сертификатов, скомпрометированы тем же методом. KeyFactor – поставщик безопасных решений для управления цифровой идентификацией, которые можно использовать для проверки подлинности и обеспечения правильного взаимодействия устройств.

RSA используется в процессе шифрования данных для отправки по сети. Сервер передает свой открытый ключ RSA клиенту как часть рукопожатия SSL или TLS. Часть открытого ключа RSA содержит модуль n = p * q, где p и q – два случайно выбранных простых числа одинакового размера. Простые числа хранятся в секрете, и их нужно выбирать с достаточной случайностью, чтобы их было трудно угадать. Если ключи генерируются с плохой случайностью, это может привести к тому, что два общих ключа будут иметь общий фактор, как только будет сгенерировано достаточное количество ключей. Если два имеют общий простой множитель, то вычисление наибольшего общего делителя (НОД) этих двух покажет значение общего простого числа. Это вычисление может быть легко выполнено на практике, и после того, как будут найдены другие факторы ключей, можно будет легко найти.

Исследователи использовали эту технику для собранных данных. Он был проанализирован на одной виртуальной машине в облаке Microsoft Azure с использованием масштабируемого алгоритма GCD для общих факторов. Анализ показал, что по крайней мере 435 000 слабых сертификатов – 1 из 172 сертификатов, найденных в Интернете – уязвимы для этой атаки.

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

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

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

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


Добавить комментарий