The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Новая техника атаки по сторонним каналам, позволяющая восстановить ключи ECDSA

03.10.2019 11:27

Исследователи из университета им. Масарика раскрыли сведения о уязвимостях в различных реализациях алгоритма создания цифровой подписи ECDSA/EdDSA, позволяющих восстановить значение приватного ключа на основе анализа утечек сведений об отдельных битах, всплывающих при применении методов анализа по сторонним каналам. Уязвимости получили кодовое имя Minerva.

Наиболее известными проектами, которые затрагивает предложенный метод атаки, являются OpenJDK/OracleJDK (CVE-2019-2894) и библиотека Libgcrypt (CVE-2019-13627), применяемая в GnuPG. Проблеме также подвержены MatrixSSL, Crypto++, wolfCrypt, elliptic, jsrsasign, python-ecdsa, ruby_ecdsa, fastecdsa, easy-ecc и смарт-карты Athena IDProtect. Не протестированы, но как потенциально уязвимые также заявлены карты Valid S/A IDflex V, SafeNet eToken 4300 и TecSec Armored Card, которые используют типовой модуль ECDSA.

Проблема уже устранена в выпусках libgcrypt 1.8.5 и wolfCrypt 4.1.0, остальные проекты пока не сформировали обновления. Проследить за исправлением уязвимости в пакете libgcrypt в дистрибутивах можно на данных страницах: Debian, Ubuntu, RHEL, Fedora, openSUSE/SUSE, FreeBSD, Arch. Уязвимости не подвержены OpenSSL, Botan, mbedTLS и BoringSSL. Ещё не протестированы Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL в режиме FIPS, Microsoft .NET crypto, libkcapi из ядра Linux, Sodium и GnuTLS.

Проблема вызвана возможностью определения значений отдельных битов во время выполнения умножения на скаляр при операциях с эллиптической кривой. Для выделения информации о битах используются косвенные методы, такие как оценка задержки при выполнении вычислений. Для атаки необходимо наличие непривилегированного доступа к хосту, на котором выполняется генерация цифровой подписи (не исключается и удалённая атака, но она сильно усложнена и требует большого объёма данных для анализа, поэтому может рассматриваться как маловероятная). Для загрузки доступен используемый для атаки инструментарий.

Несмотря на незначительный размер утечки, для ECDSA определения даже нескольких битов с информацией о векторе инициализации (nonce) достаточно для совершения атаки по последовательному восстановлению всего закрытого ключа. По заявлению авторов метода, для успешного восстановления ключа достаточно анализа от нескольких сотен до нескольких тысяч цифровых подписей, сгенерированных для известных атакующему сообщений. Например, для определения закрытого ключа, используемого на смарт-карте Athena IDProtect на базе чипа Inside Secure AT90SC, при использовании эллиптической кривой secp256r1 было проанализировано 11 тысяч цифровых подписей. Общее время атаки составило 30 минут.

  1. Главная ссылка к новости (https://seclists.org/oss-sec/2...)
  2. OpenNews: Уязвимость в чипах Qualcomm, позволяющая извлечь закрытые ключи из хранилища TrustZone
  3. OpenNews: Представлена техника атаки для определения ключей ECDSA и DSA
  4. OpenNews: В Libgcrypt/GnuPG выявлена уязвимость, позволяющая воссоздать RSA-ключи
  5. OpenNews: Атака по подбору RSA-ключей
  6. OpenNews: Уязвимость в AMD SEV, позволяющая определить ключи шифрования (ECDH)
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/51609-ecdsa
Ключевые слова: ecdsa, crypt, libgcrypt, gpg
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (32) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 11:52, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –9 +/
    А может ну их, эти эллиптические курвы?
     
     
  • 2.2, бублички (?), 11:59, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    взамен предлагаешь пользоваться таблицей умножения?
     
     
  • 3.7, Корец (?), 13:03, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Нет, таблицами Брадиса :D
     
     
  • 4.8, Аноим (?), 13:49, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Объясни школоте сразу, что это такое. Не знают, ведь!
     
     
  • 5.10, Аноним (10), 14:26, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • –3 +/
    Сами да объяснили, чего вы?
     
  • 3.21, Anonin (?), 20:20, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Взамен переходить на NTRUEncrypt)
     
     
  • 4.29, бублички (?), 21:52, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    дожить бы. скорее утоноем в горах мусора
     
  • 2.18, InuYasha (?), 18:35, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • –4 +/
    Сами аэнбэшники от них отказались ещё где-то лет 10 назад, кстати.
     
     
  • 3.20, Аноним (20), 20:07, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ага. Ассиметричная криптография у них на технологиях с нибиру
     
  • 3.22, Anonin (?), 20:21, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    И что же они используют?)
     
     
  • 4.27, бублички (?), 21:47, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    как что? конечно же базу комментариев анонимусов с OpenNET, которая вдобавок меняется с завидным постоянством
     
  • 4.31, x3who (?), 23:01, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Киви писал, что старый добрый RSA
     
     
  • 5.32, x3who (?), 23:31, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну, в смысле, что курвы под подозрением. Вот нашел ссылку: https://3dnews.ru/940050
     

  • 1.3, Аноним (3), 12:16, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Это проблема дизайна или реализации?
     
     
  • 2.4, theDolphin (ok), 12:27, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема наличия и доступа по сторонним каналам
     
  • 2.6, userd (ok), 12:45, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Это проблема реализации.
    Но можно предположить, что это - типичная проблема реализации.
    Т.е. другие реализации тоже нужно исследовать.
     

  • 1.9, Аноним (-), 14:11, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    Плохо. GPG и Matrix юзаю каждый день.
     
     
  • 2.12, Аноним (12), 14:43, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Follow the white rabbit.
     

  • 1.11, Ivan_83 (ok), 14:41, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Любимое разевлечение - задрачивать железо запросами и смотреть профиль потребления/нагрузки.
    В реальности это скорее проблема вот этих производителей смарткарт.
     
  • 1.13, Аноним (13), 14:53, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +4 +/
    Может у них эллиптические кривые просто?
     
     
  • 2.15, Аноним (15), 16:13, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Самые эллиптические кривые
     
  • 2.26, Аноним (26), 21:45, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Так ровных и нет, все какие-то кривые...
     
  • 2.28, Ordu (ok), 21:51, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, эллиптические у них сложно кривые, но вот карты у них прямые.
     

  • 1.14, бублички (?), 16:06, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    статья о том, что secp256r1 и всё что ниже (secp224r1:secp192r1) уже относительно давно не рекомендуется (NSA) использовать. обычно я в настройках OpenSSL пишу secp384r1:secp521r1:X448
     
     
  • 2.16, Ivan_83 (ok), 16:28, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я бы чес говоря обратно на RSA откатился, и юзал 16к ключи на нём.
     
     
  • 3.17, бублички (?), 16:45, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    а загрузить такой длины ключ куда-то в устройство? помню столкнулся с тем что к примеру D-Link не понимает RSA длиной даже 4096 bit
     
     
  • 4.30, анончик (?), 22:36, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • –1 +/
    не, ну d-link -- это конечно топовое железо
     
  • 4.34, Ivan_83 (ok), 03:12, 04/10/2019 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не возникало никогда такой потребности.
    Зато боты брутящие пароли со слабых железок очень страдают пока такой 16к RSA ключ переварят :)
    Правда если оставлять только ECDSA то ещё пару лет назад боты его не поддерживали совсем.
     

  • 1.25, Андрей (??), 21:24, 03/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > Уязвимости не подвержены OpenSSL,

    Приятно слышать.

    > Ещё не протестированы Mozilla NSS, LibreSSL, Nettle, BearSSL, cryptlib, OpenSSL в режиме FIPS, Microsoft .NET crypto, libkcapi из ядра Linux, Sodium и GnuTLS.

    Странно, что Mozilla NSS, Nettle, GnuTLS не вошли в первую очередь.

     
     
  • 2.33, Аноним (33), 23:51, 03/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Тут как раз ничего странного — этими либами пользуются сущие единицы пользователей.
     
     
  • 3.37, Аноним (37), 17:50, 04/10/2019 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, особенно мозилловским NSS. Всего лишь firefox и chrome.
     

  • 1.36, . (?), 13:32, 04/10/2019 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Где бы готовый алгоритм под карточку ( как раз похожая ), что-бы вытащить из неё приватный ключ и больше не таскать громоздкий ридер в придачу к ноутбуку...
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру