Назад к блогу

Подделка RSA-подписей без факторизации ключа и девятичасовое отключение Kiteworks

Подделка RSA-подписей без факторизации ключа и девятичасовое отключение Kiteworks

Исследователи продемонстрировали, что подделать RSA-подпись можно без факторизации закрытого ключа, что ставит под сомнение привычные оценки стойкости этого алгоритма. Разбор показывает, какие реализации действительно уязвимы, почему массовая миграция пока не требуется и при чём здесь девятичасовое отключение сервисов Kiteworks.

Криптографы показали практическую подделку RSA-подписи без факторизации закрытого ключа. Метод использует классические вычислительные мощности и снижает оценочный уровень безопасности RSA. В тот же период компания Kiteworks провела девятичасовое превентивное отключение сервиса и в ходе него обнаружила ранее неизвестную критическую уязвимость в собственной системе.

Что именно изменилось

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

Атака применима только к реализациям RSA со слепой подписью. В подавляющем большинстве современных систем применяется дополнение по стандартам PKCS или PSS, что предотвращает атаку.

Для подделки подписи 1024-битного ключа понадобилось 2⁶⁵ операций и 1380 ядро-лет. Для сравнения: факторизация того же ключа оценивается примерно в 2⁸⁰ операций и от 500 тысяч до 1 миллиона «ядро-лет». Для ключей 2048 и 4096 бит уровни снижаются до 2⁹⁰ и 2¹¹⁹.

Предыстория

Криптографы полагали, что единственный способ сформировать корректную цифровую подпись RSA — сначала вычислить закрытый ключ путём факторизации, а затем использовать его для создания подписи. Для 1024-битного RSA эта задача считалась очень затратной, хотя и выполнимой при мощностях уровня крупных технологических компаний или АНБ, со стоимостью машинного времени в десятки миллионов долларов на один ключ. Для 2048-битного RSA задача факторизации казалась совершенно невыполнимой.

Новое исследование представило метод, использующий классические вычислительные мощности для снижения текущего уровня безопасности RSA до неприемлемо низкого предела. В нём реализована разновидность алгоритма «решето числового поля», разработанная в 2007 году. Результаты стали неожиданностью для криптографов, поскольку открывают возможность подделки цифровых подписей способом, о котором ранее не было известно.

Почему это сделали и на что ссылаются авторы

Актуальность обосновывается требованиями регуляторов: АНБ, NIST и ENISA требуют, чтобы криптосистема обеспечивала уровень безопасности не ниже 128 бит, то есть требовала выполнения более 2¹²⁸ операций. Атака снижает показатели до 2⁶⁵, 2⁹⁰ и 2¹¹⁹ для ключей 1024, 2048 и 4096 бит соответственно.

Самым известным примером уязвимой системы назван протокол Privacy Pass. Он уязвим потому, что построен на схеме слепой подписи RSA: сервер подписывает данные, не видя их содержимого, и не добавляет к ним дополнение, а именно к таким реализациям и применима атака. Privacy Pass используется Apple и Cloudflare. Для атаки на Privacy Pass злоумышленнику потребовалось бы запросить токены у Cloudflare, Apple или другой организации 2⁴³ раз — по словам Хенингер, это сопоставимо по порядку величины с объёмом сетевого трафика, который Cloudflare обрабатывает примерно за сутки. В большинстве реализаций Privacy Pass ключи регулярно обновляются; эта мера значительно снижает вероятность успеха атаки, хотя и не исключает её полностью.

Что это меняет на практике

Срочная миграция не требуется: авторы работы и другие исследователи подчёркивают, что новая атака практически не представляет реальной угрозы — по крайней мере, на данный момент, а широко распространённые реализации RSA остаются в безопасности. Атака применима только к реализациям со слепой подписью, тогда как в большинстве современных систем применяется дополнение PKCS или PSS.

Тем не менее метод снижает оценочный уровень безопасности RSA ниже требуемого регуляторами уровня 128 бит. Для 1024-битных ключей атака уже практически применима: её применение заняло всего несколько месяцев на академическом кластере процессоров. Авторы называют полный отказ от RSA «ещё более неотложной задачей», но конкретных календарных сроков миграции не приводят. Упоминаемые сроки (вторая половина 2030-х, 2050 или 2100 год) относятся к квантовой атаке на Bitcoin, а не к данной работе.

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

Отдельный инцидент: девятичасовое отключение Kiteworks

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

Во время отключения была обнаружена ранее неизвестная критическая уязвимость, ограниченная возможностью, включённой менее чем у 1% клиентской базы. Kiteworks разработала и развернула исправление в течение этого окна и применила дополнительный защитный слой во всех средах. По словам CISO Фрэнка Балониса, решение отключить продакшн-системы было принято ради защиты данных клиентов: когда приходится выбирать между определённостью и удобством, данными клиентов рисковать нельзя.

Рекомендация об отключении была снята 27 сентября 2026 года, а 29 сентября 2026 года компания сообщила об устранении уязвимости. После прохождения окна угрозы и отсутствия аномалий клиентам рекомендовано вернуть систему Kiteworks в онлайн. Другие продукты Kiteworks не затронуты этой уязвимостью.

Ограничения и открытые вопросы

Результат по RSA ещё не прошёл экспертную оценку. Карстен Ноль, эксперт по криптографии и руководитель отдела инноваций компании Allurity, отметил: если результат подтвердится в ходе экспертной оценки, это действительно станет концептуальным прорывом.

По Kiteworks компания не раскрыла specifics о характере уязвимости и способах её эксплуатации, и на момент публикации у неё нет идентификатора CVE. Нет доказательств того, что уязвимость когда-либо эксплуатировалась злонамеренно. Требования аутентификации и возможность удалённого эксплойта в описании не приводятся. Конкретные версии Kiteworks, затронутые уязвимостью, и релиз с исправлением не названы.

Источники

Похожее