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 уже ведётся аналогичная работа по внедрению российских стандартов шифрования.

ИИ-кодер может запустить вредоносную команду из чистого GitHub-репозитория

Доверять ИИ написание кода — удобно. Но, как выяснили исследователи из Mozilla Zero Day Investigative Network (0DIN), иногда ИИ может стать идеальным помощником для киберпреступников. Эксперты продемонстрировали новую технику атаки на разработчиков, использующих ИИ-ассистентов вроде Claude Code.

Вся схема строится вокруг обычного на вид GitHub-репозитория, в котором нет ни вредоносного кода, ни подозрительных команд, ни других очевидных признаков компрометации.

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

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

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

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

Если атака проходит успешно, злоумышленник получает интерактивную оболочку с правами пользователя. Этого достаточно, чтобы похитить API-ключи, токены, переменные окружения, локальные конфигурации и другие секреты разработчика.

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

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

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