TLS 1.3 в OpenSSL теперь поддерживает российские стандарты шифрования

TLS 1.3 в OpenSSL теперь поддерживает российские стандарты шифрования

TLS 1.3 в OpenSSL теперь поддерживает российские стандарты шифрования

Специалисты компаний «Криптонит» и «Криптоком» завершили разработку открытой реализации протокола TLS версии 1.3, обеспечивающего защиту данных с использованием российских криптографических алгоритмов. Она доступна как расширение для OpenSSL 1.1.1.

Протокол TLS используется в браузерах, мессенджерах, клиентах электронной почты, IP-телефонии и другими приложениями для обеспечения конфиденциальности данных, передаваемых через интернет. Версия 1.3 этого протокола определена в международном стандарте RFC8446 и является достаточно «революционной». Благодаря ей внесены существенные модификации в протокол, обеспечивающие одновременно усиление безопасности и улучшение его пользовательских характеристик.

TLS 1.3 позволяет использовать различные алгоритмы шифрования, распределения ключей и цифровой подписи. Конкретный набор криптографических алгоритмов (cipher suites), поддерживаемый обеими сторонами, задаётся на этапе «рукопожатия» (Handshake) — согласования параметров соединения.

Стандарт RFC8446 предусматривает использование в протоколе только зарубежных криптоалгоритмов. В России принято расширение RFC8446 — стандарт Р 1323565.1.030-2020. Его основным отличием является использование российских криптографических алгоритмов и поддержка других режимов работы протокола. Отечественный стандарт определяет 4 криптонабора, каждый из которых использует режим MGM (описан в Р 1323565.1.026) со своими уникальными параметрами.

Режим MGM относится к группе алгоритмов AEAD (аутентифицированного шифрования со связанными данными). В нём используется мультилинейный режим с аутентификацией Галуа, позволяющий одновременно обрабатывать конфиденциальные данные (содержимое сетевых пакетов) и вспомогательные технические (заголовки пакетов). Последние не нужно шифровать, но им требуется обеспечить защиту от модификации (целостность) и проверяемое соответствие зашифрованным фрагментам. Иными словами, MGM защищает от несанкционированных изменений метаданных, передаваемых открытым текстом.

Ранее научно-производственная компания «Криптонит» сообщала о создании на базе OpenSSL 1.1.1 реализации с открытым исходным кодом всех актуальных российских алгоритмов шифрования и режимов их использования, включая режим MGM. Следующим шагом стало обеспечение возможности использования этих алгоритмов в протоколе TLS 1.3.

Основным механизмом расширения функциональности библиотеки OpenSSL в версии 1.1.1 и более ранних является механизм «движка» (engine). Значительный объём российских криптографических алгоритмов доступен в OpenSSL через расширение Gost Engine.

Специалистами компаний «Криптонит» и «Криптоком» были выполнены следующие доработки Gost Engine, а также исходного кода самой библиотеки OpenSSL:

  • добавлен алгоритм кодировки открытого эфемерного ключа в расширении key_share (на этапе Handshake);
  • добавлен алгоритм выработки общего секретного значения ECDHE, при использовании протокола Диффи-Хеллмана;
  • реализован алгоритм TLSTREE, используемый для порождения ключей защиты записей из корневого ключа;
  • доработан механизм согласования алгоритма в расширении signature_algorithms (потребовало правки кода OpenSSL);
  • доработана встроенная система тестов.

«За относительно короткое время после выхода официального стандарта мы сделали open-source реализацию протокола TLS 1.3 с отечественной криптографией. Мне кажется, это хорошая работа и отличный задел на будущее для научного сообщества, разработчиков, а также пользователей, которые должным образом относятся к безопасности своих коммуникаций», — поясняет Александр Спиридонов, руководитель лаборатории информационной и сетевой безопасности НПК «Криптонит».

«Наша компания всегда понимала важность открытых реализаций наряду с сертифицированными, мы считаем, что такой подход способствует расширению рынка для всех его участников», — прокомментировал Дмитрий Кабелев, генеральный директор ООО «Криптоком».

На заключительном этапе согласно методическим рекомендациям ТК26 была проведена проверка полученной реализации протокола TLS 1.3 на контрольных примерах. Дополнительно выполнено её тестирование с использованием формального языка первичных спецификаций криптографических протоколов. Разработанную реализацию протокола TLS 1.3 планируется использовать на стенде тестирования совместимости криптографических средств, также разработанного в НПК «Криптонит».

Параллельно для текущей ветки OpenSSL 3.0 уже ведётся аналогичная работа по внедрению российских стандартов шифрования.

Android запретит доступ к экрану «лишним» приложениям

Google, похоже, готовит ещё одно нововведение по части безопасности Android. В тестовой сборке Android Canary 2602 обнаружена новая функция для Advanced Protection Mode — режима «максимальной защиты», который компания представила в Android 16.

Теперь Advanced Protection Mode может ограничивать работу приложений, использующих AccessibilityService API, если они не классифицированы как инструменты для доступности.

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

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

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

По данным аналитиков, в новой версии Android Canary  при включении Advanced Protection Mode система:

  • запрещает выдавать разрешение Accessibility Service приложениям, не признанным Accessibility Tools;
  • автоматически отзывает уже выданные разрешения у таких приложений.

Если приложение сильно зависит от этого API, оно просто перестанет работать.

В тестах, например, приложение dynamicSpot (эмулирующее Dynamic Island на Android) становилось недоступным: пункт был с пометкой «Restricted by Advanced Protection». Причина простая: оно использует AccessibilityService для чтения уведомлений и отображения поверх других приложений.

Инструменты, официально классифицированные как средства доступности, под ограничения не попадают.

RSS: Новости на портале Anti-Malware.ru