13.05 // Предсказуемый ГСЧ и небезопасные ключи в Debian/Ubuntu


Два года назад разработчики Debian[link1] "исправили" "ошибку"[link2] (как они считали) в пакете OpenSSL. Перечислять все сферы применения этого пакета, думаю, не стоит, ибо он используется повсеместно и, прежде всего, для выработки ключевого материала SSL, SSH и OpenVPN.

"Ошибка", которая была "исправлена", заключалась в использовании неинициализированной памяти. В большинстве случаев такое исправление было бы разумным, если бы не затрагивало пул и генератор случайных чисел (ГСЧ) OpenSSL. В итоге генератор был лишён возможности добавлять новую энтропию в пул, что делает крайне предсказуемыми все получаемые из него данные и, как следствие, генерируемые шифроключи: пространство ключей всех длин было сокращено примерно до 260 тысяч, делая совершенно тривиальным их полный перебор. (Такой проблемы бы не произошло, поступи разработчики Debian, как дОлжно: вместо патченья пакета в собственном депозитарии, им следовало передать патч апстриму — разработчикам OpenSSL, которых подобная вольность с кодом ГСЧ могла бы весьма насторожить.)

Все пользователи Debian и Ubuntu должны исходить из того, что все шифровальные ключи для SSL, SSH и OpenVPN, сгенерированные ими в последние два года, скомпрометированы! Действуйте исходя из этого.

Источник: http://lists.debian.org/debian.....e/2008/msg00152.html[link3]

Ссылки
[link1] http://www.debian.org

[link2] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=363516

[link3] http://lists.debian.org/debian-security-announce/2008/msg00152.html