У SSLv2 были проблемы с атаками MITM, которые могли привести к согласованию шифров низкого качества. В те дни это, как правило, включало в себя список шифров «экспортного качества», которые были преднамеренно слабыми и могли быть реально взломаны только с помощью грубой силы.
SSLv3 / TLSv1 эффективно решил проблему согласования, и вскоре после этого многие из шифров более низкого качества были сняты с производства, поскольку ограничения на экспорт в США были сняты и появилось множество сканеров соответствия.
Генерация PRF в SSL использует как MD5, так и SHA1 в качестве ставки, чтобы предотвратить взлом системы, если один из алгоритмов хеширования был скомпрометирован в достаточной степени. Одним из способов атаки на SSL является достаточная компрометация обоих алгоритмов, используемых в функции PRF. IIRC - это просто своего рода XOR ввода, проходящего через оба.
Шифры шифрования доступны динамически и обговариваются, поэтому при любом анализе качества самих зашифрованных сеансов необходимо учитывать выбор шифра или сосредоточиться на механизмах, ведущих к созданию начального ключа шифрования сеанса.
(Вы можете взломать шифр (RSA, AES и т. Д.), Но это не обязательно приводит к нарушению самого SSL)
На мой взгляд, наиболее практичными крипто-атаками на SSL являются атаки по побочным каналам против определенных шифров. В частности, известно, что AES уязвим от временных атак. Для этого обычно требуются высококачественные сети с низкой задержкой (локальная сеть Ethernet). Во многих системах существуют «слепые» средства, которые просто добавляют искусственную задержку в процесс, чтобы уменьшить вероятность успешности атак по времени. (В основном время, которое требуется для выполнения определенных последовательностей кода, может быть использовано для восстановления достаточного количества информации, чтобы поставить под угрозу систему)
И, наконец, моя любимая слабость SSL - это атаки на «надежность» системы. Независимо от используемых алгоритмов / шифров шифрование бесполезно без доверия.
Конечно, вы можете установить безопасный зашифрованный сеанс, но если вы не знаете, превращает ли ваш разговор с законным человеком или злоумышленником всю эту безопасность в бесполезный пресс-папье.
В наши дни мы имеем ситуацию, когда десятки центров сертификации перечислены практически в каждом браузере на планете. Под каждым из них находятся несколько промежуточных подписывающих органов, управляемых каждым из CA / нижестоящих.
Были случаи, когда системные ошибки или просто ленивые центры сертификации и посредники вызывали широкую открытость системы, что позволяло подписывать запросы сертификатов для доменов, которые не должны были быть авторизованы.
Требуется только компромисс любого ЦС, посредника, посредника и т. Д., Чтобы эффективно скомпрометировать весь якорь доверия (фактически, планету Земля). Это можно и было сделано: иногда случайно, иногда намеренно. Если вы используете IE, убедитесь сами:
Сервис-Свойства обозревателя-Сертификаты-Ненадежные издатели ..
К сожалению ...
Существуют смягчающие факторы: даты истечения срока действия сертификата, списки отзыва ... и т. Д., Но, на мой взгляд, проблема доверия остается главной уязвимостью всей системы.
Определенный человек или группа с хорошими навыками социальной инженерии или автоматическим оружием, я думаю, с большей вероятностью, чем не получат сертификат, который они хотят подписать.