Алгоритм 379-летней давности помог эксперту взломать RSA-ключи принтеров

Алгоритм 379-летней давности помог эксперту взломать RSA-ключи принтеров

Алгоритм 379-летней давности помог эксперту взломать RSA-ключи принтеров

Ключи RSA, которые генерирует устаревший криптомодуль библиотеки SafeZone, можно легко вычислить, используя алгоритм факторизации Ферма. Благодаря этому открытию исследователь Ханно Бёк (Hanno Böck) смог выявить новую уязвимость в принтерах Canon и Fuji Xerox.

Специалисты по криптографии давно удостоверились, что выбор близких друг к другу простых чисел при создании RSA-ключей (к примеру, представления содержат по 500 одинаковых верхних битов) позволяет без особого труда найти эти множители по методу факторизации, предложенному Пьером Ферма в 1643 году. Если же оба случайных простых числа (их обычно обозначают как p и q) генерируются независимо, велика вероятность, что такой способ взлома окажется провальным.

Что касается решения SafeZone, то оно изначально не обеспечивало большой криптостойкости, и его перестали рекомендовать для использования. Однако с переходом разработчика (Inside Secure) под крыло ИТ-компании Rambus в 2019 году проект получил новую жизнь — в доработанном виде эти криптобиблиотеки сейчас продаются под новым брендом как FIPS Security Toolkit.

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

В частности, применение алгоритма факторизации Ферма позволило обнаружить слабость криптоключей, которые используют для TLS-связи некоторые принтеры Fujifilm (ранее Fuji Xerox) и Canon. Уязвимости, выявленной в ходе исследования, был присвоен идентификатор CVE-2022-26320, Fujifilm уже выпустила обновленные прошивки.

Бёк также нашел на SKS-серверах четыре уязвимых ключа PGP, но они имели пользовательский ID, то есть были созданы явно с целью тестирования.

HTML-экспорт Telegram позволял красть переписку, патч уже доступен

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

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

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

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

Telegram делит крупные экспорты на файлы по тысяче сообщений, поэтому весь аккаунт одним махом не раскрывался. Зато скрипт мог переписать отображаемую историю или показать фальшивую форму проверки Telegram. На сервере переписка при этом не менялась.

Для атаки требовалось совпадение трёх условий: экспорт создали в уязвимой версии Telegram Desktop, вредоносное сообщение попало в файл, а пользователь открыл его в браузере с активным JavaScript. Случаи реальной эксплуатации не зафиксированы.

Уязвимость присутствовала в версиях с 4.15.1 по 6.9.3. Исправление вошло в бету 6.9.4 и стабильную версию 7.0.1, выпущенную 14 июля. Однако обновление не лечит уже сохранённые HTML-файлы.

Исследователи советуют повторно экспортировать старые чаты после обновления либо открывать прежние копии с отключённым JavaScript.

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