Исследователи из компании NCC Group раскрыли (https://www.nccgroup.trust/us/our-research/private-key-extra... детали (https://www.nccgroup.trust/globalassets/our-research/us/whit... уязвимости (CVE-2018-11976 (https://www.qualcomm.com/company/product-security/bulletins#... в чипах Qualcomm, позволяющей определить содержимое закрытых ключей шифрования, размещённых в изолированном анклаве Qualcomm QSEE, основанном на технологии ARM TrustZone. Проблема проявляется в большинстве
SoC Snapdragon, получивших распространение в смартфонах на базе платформы Android. Исправления, устраняющие проблему, уже включены (https://source.android.com/security/bulletin/2019-04-01) в апрельское обновление Android и в новые выпуски прошивок для чипов Qualcomm. На подготовку исправления компании Qualcomm потребовалось больше года - изначально сведения об уязвимости были направлены в Qualcomm ещё 19 марта 2018 года.Напомним, что технология ARM TrustZone позволяет создавать аппаратно изолированные защищённые окружения, которые полностью отделены от основной системы и выполняются на отдельном виртуальном процессоре c использованием отдельной специализированной операционной системы. Основным предназначением TrustZone является обеспечение изолированного выполнения обработчиков ключей шифрования, биометрической аутентификации, платёжных данных и другой конфиденциальной информации. Взаимодействие с основной ОС осуществляется косвенно через интерфейс диспетчеризации. Закрытые ключи шифрования размещаются внутри аппаратно изолированного хранилища ключей, что при надлежащей реализации позволяет предотвратить их утечку в случае компрометации основной системы.
Уязвимость связана с недоработкой в реализации алгоритмов обработки эллиптических кривых. Исследователи разработали технику атаки по сторонним каналам, позволяющую по имеющимся косвенным утечкам восстановить содержимое закрытых ключей, размещённых в аппаратно изолированном Android Keystore (https://developer.android.com/training/articles/keystore.html). Утечки определяются на основе анализа активности блока предсказания переходов и изменения времени доступа к данным в памяти. В ходе эксперимента исследователи успешно продемонстрировали восстановление 224- и 256-разрядных ключей ECDSA из аппаратно изолированного хранилища ключей, применяемого в смартфоне Nexus 5X. Для восстановления ключа потребовалась генерация около 12 тысяч цифровых подписей, на которую ушло более 14 часов.
Основной причиной возникновения проблемы является совместное использование общих аппаратных компонентов и кэша для вычислений в TrustZone и в основной системе - изоляция выполнена на уровне логического разделения, но с использованием общих вычислительных блоков и с оседанием следов вычислений и информации об адресах переходов в общем процессорном кэше. При помощи метода Prime+Probe, основанном на оценке изменения времени доступа к прокэшированной информации, можно через проверку наличия определённых шаблонов в кэше с достаточно высокой точностью отслеживать потоки данных и признаки выполнения кода, связанного с вычислениями цифровых подписей в TrustZone.Большая часть времени формирования цифровой подписи с использованием ключей ECDSA в чипах Qualcomm тратится на выполнение операций умножения в цикле с использованием неизменного для каждой подписи вектора инициализации (nonce (https://ru.wikipedia.org/wiki/Nonce)). Если атакующий сможет восстановить хотя бы несколько бит с информацией о данном векторе, появляется возможность совершения атаки по последовательному восстановлению всего закрытого ключа.
В случае с Qualcomm выявлено два места утечки подобной информации в алгоритме умножения: при выполнении операций поиска в таблицах и в коде условного извлечения данных на основе значения последнего бита в векторе "nonce". Несмотря на наличие в коде Qualcomm мер по противодействию утечкам сведений по сторонним каналам, разработанный метод атаки позволяет обойти эти меры и определить несколько бит значения "nonce", которых достаточно для восстановления 256-разрядных ключей ECDSA.
URL: https://news.ycombinator.com/item?id=19738394
Новость: https://www.opennet.dev/opennews/art.shtml?num=50572
>уязвимость в изолированном анклавеникогда такого не было - и вот опять!
причём:
> *аппаратно* изолированные
Удивлён отсутствию термина TrustZond.
Так у "Qualcomm" - синоним зонд, чего тут удивляться...
>> *аппаратно* изолированные
> выполняются на отдельном *виртуальном* процессоревот такая "аппаратность"..
Насяльника, шукча вама новая шифрования на элиптических кривых написала, для хорошего защитама.
А что за шифрование на эллиптических кривых? Или имелось в виду "криптография на эллиптических кривых"?
Может стоило бы кривые выпрямить в прямые. И всё заработает...;)
блин, да когда уже прекратится эта "забота о моей безопасности"
Фраза классно подходит разработчикам всяких тор-браузеров.
А это и не забота о твоей безопасности. Это забота о безопасности разработчиков тех же банковских приложений от твоих исков, чтобы они случайно не "пролюбили" твои платежные данные.
И ещё DRM, чтобы обезопасить стриминговые службы от... их пользователей.
Когда все крупные корпорации прекратят своё существование и их место займёт либо государство либо мелкие предприятия.
мечтать не вредно...
#>>прекратится эта "забота о моей безопасности"
> Когда все крупные корпорации прекратят своё существованиеНе. Они найдут что другое, чтоб
продавать, размахивать и тыкать в харю с "заботой о"....не остановиь, будет только хуже.
>и их место займёт либо
> государство либо мелкие предприятия.
Вечная забота государство не идёт в сравнение ни с одной частной структурой
> Когда все крупные корпорации прекратят своё существование и их место займёт либо государство либо мелкие предприятия.Корпорация и гос-во - похожие по устройтву и механизму штуки нередко.
> уязвимости, позволяющей определить содержимое закрытых ключей шифрования, размещённых в изолированном анклаве Qualcomm QSEE
> на подготовку исправления компании Qualcomm потребовалось больше года - изначально сведения об уязвимости были направлены в Qualcomm ещё 19 марта 2018 года.Целый год, эпик фейл галактического масштаба.
АНБ отсрочку закрытия доступа запросило.
для активации новой дырки на аппаратном уровне потребовались трехсторонние согласования АНБ-Гугль-Квальком?
Не только.
Ещё два-три раунда переговоров с китайскими коллегами об уступках и с европейскими подчинёнными об оптовых закупках.
>Целый годНа фоне того, когда и в каком проценте устройств эту уязвимость закроют - это мимолетное мгновение.
Зачем - "закроют"? Бегом в магазин покупать новые!
Не торопись, а то купишь "старые" :)
Красиво все звучит, но никогда нихрена не работает! :)
У кого надо — работает.
Уязвимость удаленная?
Стоило бы озаботиться очисткой кэша после выполнения вычислений.
Круто. А там есть ключи, которые позволят в этот TrustZone засунуть свою прошивку и потом не пускать туда левых обновлений от производителя?
Аппаратная изоляция выполняемая на тех же транзисторах.
Вообще то это явное введение в заблуждение и в общем то мошенничество.
Т.е. если мы берем два проца и оба заявляют аппаратную изоляцию, но первый стоит на 5 баксов дешевле выбор очевиден в пользу первого, но оказывается что изоляция программная. Тут надо не патчи выпускать, а к суду за мошенничество привлекать.
> Аппаратная изоляция выполняемая на тех же транзисторах.
> Вообще то это явное введение в заблуждение и в общем то мошенничество.
> Т.е. если мы берем два проца и оба заявляют аппаратную изоляцию, но
> первый стоит на 5 баксов дешевле выбор очевиден в пользу первого,
> но оказывается что изоляция программная. Тут надо не патчи выпускать, а
> к суду за мошенничество привлекать.она не программная, проц и регистры отдельно, там область памяти видимо даже отдельно, но кеш, похоже, общий на всю память
надеюсь меня поправят более информированные товарищи
Cachegrab - прочитал как кочерга
Trusted Computing.
Доверие основывается на взаимности.
TC основано на недоверии. На недоверии к хозяину устройства, сервиса, данных.
Должен ли пользователь доверять TC?..
Непонятно: если для вскрытия ключа достаточно узнать несколько битов значения "nonce", почему нельзя эти биты угадать перебором ("brute force").