Код Kyber, скомпилированный Clang, может слить секретный ключ шифрования

Код Kyber, скомпилированный Clang, может слить секретный ключ шифрования

Код Kyber, скомпилированный Clang, может слить секретный ключ шифрования

В эталонной реализации механизма инкапсуляции ключей (KEM) обнаружена уязвимость, позволяющая получить секретные данные через атаку по стороннему каналу. Опасная проблема Kyber, виновником которой оказался компилятор, уже устранена.

Американский институт стандартов и технологий (NIST) собирается стандартизировать Kyber как ML-KEM, пригодный для квантово-устойчивого шифрования. Однако даже самый криптостойкий алгоритм может оказаться неэффективным, если его реализация содержит уязвимости, и такой подводный камень обнаружили в PQShield.

Выявленная уязвимость может проявиться, когда компилятор — в данном случае Clang — оптимизирует код. Как оказалось, он при этом порождает в функции poly_frommsg переход, зависящий от обрабатываемого секрета.

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

Для этого, по словам экспертов, достаточно просто измерить время, за которое совершается декапсуляция. PoC-код, созданный в PQShield для машин с архитектурой x86, успешно эксплойтит тайминг-уязвимость и позволяет получить ключ ML-KEM 512 менее чем за 10 минут.

Исследователям удалось найти противоядие, объединив усилия с командой Kyber. Ненадежное условное перемещение было реализовано как функция в отдельном файле, и Clang, встретив флаг условия, переставал модифицировать код.

Об опасной находке были извещены авторы проектов на базе Kyber, в частности, liboqs, aws-lc, pq-code-package, WolfSS, PQClean и rustpq/pqcrypto. Исследователи не исключают, что уязвимыми могут оказаться даже библиотеки, не использующие функцию poly_frommsg.

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

Apple срочно закрыла 0-day в iOS после шпионской атаки

Apple вчера вечером выпустила обновления своих ОС. Среди них стоит отметить патчи для устройств iPhone и iPad, закрывающие критическую уязвимость нулевого дня, которая уже используется в реальных атаках. Речь идёт о баге с идентификатором CVE-2026-20700.

По словам Apple, эксплойт применялся в «очень сложной атаке» против конкретных людей.

Такая формулировка у Apple появляется нечасто; как правило, она подразумевает целевые кибератаки уровня коммерческого шпионского софта. Обнаружили проблему специалисты Google Threat Analysis Group (TAG) — команды, которая как раз охотится за правительственными кибергруппами.

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

Уязвимость находится в dyld — это динамический загрузчик библиотек, один из базовых компонентов iOS и iPadOS. Он отвечает за то, чтобы при запуске приложения система корректно подгружала нужные библиотеки и фреймворки.

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

Apple прямо указывает, что CVE-2026-20700, вероятно, использовалась в составе более широкой цепочки эксплуатации. Одновременно были закрыты ещё две уязвимости — CVE-2025-14174 и CVE-2025-43529. Судя по всему, атакующие комбинировали несколько багов, чтобы обойти современные механизмы защиты.

Патч уже доступен в составе iOS 26.3 и iPadOS 26.3. Обновление касается широкого списка устройств:

  • iPhone 11 и новее;
  • iPad Pro 12,9″ (3-го поколения и новее);
  • iPad Pro 11″ (1-го поколения и новее);
  • iPad Air 3-го поколения и новее;
  • iPad 8-го поколения и новее;
  • iPad mini 5-го поколения и новее.

С учётом подтверждённой эксплуатации откладывать обновление точно не стоит. Чтобы установить патч, достаточно зайти в «Настройки» → «Основные» → «Обновление ПО» и установить iOS 26.3 или iPadOS 26.3.

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

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