Атаки на TLS: BEAST, POODLE и понижение версии
Изучите исторические атаки на TLS и меры защиты в TLS 1.3
«Атаки на TLS: BEAST, POODLE и понижение версии» — бесплатный урок Cryptology Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Cryptology Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Cryptology Academy содержит 4 уроков всего.
Классификация атак
Атаки на TLS делятся на атаки уровня протокола (BEAST, POODLE, DROWN), криптографические атаки (смещения RC4, Lucky13) и атаки на реализацию (Heartbleed, BERserk). TLS 1.3 устраняет атаки уровня протокола, удаляя уязвимые алгоритмы.
BEAST (2011)
Атака браузера на SSL/TLS: эксплуатирует режим CBC в TLS 1.0, где вектор инициализации каждой записи является последним блоком шифротекста предыдущей записи (предсказуемый вектор инициализации). Злоумышленник внедряет выбранные блоки открытого текста, чтобы восстановить файлы cookie сеанса с помощью атаки с выбранной границей.
Защита от BEAST
Исправление: используйте TLS 1.1 или более новую версию (случайные векторы инициализации для каждой записи) либо RC4 вместо CBC (плохой компромисс). Современное исправление: TLS 1.3 использует только AEAD — без CBC. До широкого распространения TLS 1.1 браузеры предотвращали BEAST с помощью разбиения записей 1/n-1.
POODLE (2014)
Атака с оракулом заполнения при переходе на устаревшее шифрование: атакует режим CBC в SSL 3.0. Заполнение в SSL 3.0 не защищено проверкой целостности, что позволяет создать оракул заполнения. Злоумышленник заставляет соединение перейти на SSL 3.0 с помощью сбоев соединения, а затем расшифровывает по 1 байту примерно за 256 запросов.
Защита от POODLE
Полностью отключите SSL 3.0 (расширение TLS_FALLBACK_SCSV сообщает о намеренном переходе на более старую версию и предотвращает вредоносное понижение версии). POODLE также применима к реализациям TLS, которые некорректно игнорируют структуру заполнения CBC.
DROWN (2016)
Расшифровка RSA с помощью устаревшего и ослабленного eNcryption: если сервер использует один ключ RSA с любым сервером, принимающим SSLv2, атаки на оракул заполнения в стиле Bleichenbacher против SSLv2 могут расшифровать сеансы TLS 1.2. Уязвимыми были 33% серверов HTTPS.
Атаки с понижением версии
Активный злоумышленник может удалять или повреждать пакеты, заставляя обе конечные точки согласовать более слабый протокол или шифр. TLS_FALLBACK_SCSV (RFC 7507) сообщает максимальную версию протокола, поддерживаемую клиентом, и предотвращает вредоносное понижение версии.
Lucky13 (2013)
Временной побочный канал в TLS с режимом CBC: время проверки MAC меняется в зависимости от длины заполнения. Злоумышленник измеряет время ответа, чтобы отличить допустимое заполнение от недопустимого, создавая оракул заполнения через сеть. Требуется примерно 2^23 запросов к оракулу на каждый байт.
Смещения RC4
RC4 выдаёт байты с определёнными смещениями — второй байт чаще равен 0. В сеансах TLS, где заголовки повторяются в фиксированных позициях (например, файлы cookie), статистическое восстановление открытого текста возможно примерно по 2^24 образцам. RC4 запрещён в TLS начиная с RFC 7465 (2015).
Heartbleed (CVE-2014-0160)
Это не ошибка протокола TLS, а ошибка реализации OpenSSL: расширение Heartbeat читало до 64 KB за пределами предназначенного буфера, раскрывая закрытые ключи, токены сеансов и пароли из памяти сервера. Уязвимыми были 17% защищённых веб-серверов.
Предотвращение атак в TLS 1.3
TLS 1.3 удаляет шифры CBC, RC4, SSL 2.0/3.0, статический обмен ключами RSA и сжатие. Обязательное использование ECDHE обеспечивает прямую секретность. Суженный список наборов шифров устраняет поверхность атаки для всех известных атак уровня протокола.
Быстрая проверка
Какая атака использовала предсказуемые векторы инициализации в режиме CBC TLS 1.0?
Итоги
Вы изучили атаки BEAST, POODLE, DROWN, Lucky13 и атаки на смещения RC4. TLS 1.3 устраняет условия, сделавшие эти атаки возможными. Далее: структура JWT, подписание и уязвимости.
Изучай Cryptology Academy с ИИ-репетитором — бесплатно
Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.
- Курсы
- 67
- Уроки
- 261
Часто задаваемые вопросы
Урок «Атаки на TLS: BEAST, POODLE и понижение версии» бесплатный?
Да — полный текст урока «Атаки на TLS: BEAST, POODLE и понижение версии» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Cryptology Academy, подпишись на CoddyKit PRO. Курс Cryptology Academy содержит 4 уроков всего.
Чему я научусь в уроке «Атаки на TLS: BEAST, POODLE и понижение версии»?
Изучите исторические атаки на TLS и меры защиты в TLS 1.3 Ты практикуешь Cryptology Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Cryptology Academy?
Предыдущий опыт не требуется. Cryptology Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.
Сколько времени занимает урок «Атаки на TLS: BEAST, POODLE и понижение версии»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Cryptology Academy?
Да. Каждый урок Cryptology Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Рукопожатие TLS 1.3 шаг за шагом
- Уровень записей TLS и наборы шифров
- Проверка сертификатов в TLS
- Атаки на TLS: BEAST, POODLE и понижение версии