Сегодня 28 ноября 2023
18+
MWC 2018 2018 Computex IFA 2018
Теги → avx-512

У чипов Intel обнаружена уязвимость Downfall — она позволяет воровать пароли через инструкции AVX2 и AVX-512

Сотрудник Google Дэниел Могими (Daniel Moghimi) обнаружил уязвимость процессоров Intel, которая позволяет похищать ключи шифрования, пароли, электронные письма и сообщения, а также банковские данные. Проблема затрагивает чипы от Skylake до настольных Alder Lake и серверных Ice Lake, то есть до решений предпоследнего поколения. Уязвимость Downfall (INTEL-SA-00828) эксплуатируется через инструкции AVX2 и AVX-512 посредством атаки, которую Intel назвала Gather Data Sampling (GDS).

 Источник изображения: Christian Wiediger / unsplash.com

Источник изображения: Christian Wiediger / unsplash.com

Уязвимость связана с векторными инструкциями AVX2 и AVX-512 и реализуется в процессе сбора данных. Могими утверждает, что его методы атаки Downfall используют инструкцию gather, которая «сливает содержимое внутреннего файла векторного регистра во время спекулятивного выполнения». Gather является частью оптимизаций памяти в процессорах Intel и используется для ускорения доступа к разрозненным данным в памяти. Однако, как объясняет Могими: «Инструкция gather, по-видимому, использует временной буфер, разделяемый между потоками CPU, и транзитно передает данные более поздним зависимым инструкциям, причем данные принадлежат другому процессу и выполнению gather, работающим на одном ядре».

Могими разработал две техники атаки Downfall: Gather Data Sampling (GDS) и Gather Value Injection (GVI) — объединяющая GDS с техникой Load Value Injection (LVI). Используя технику GDS, Могими смог похитить 128- и 256-разрядные криптографические ключи AES отдельной от контролируемой им виртуальной машины, причем каждая виртуальная машина работала на отдельных потоках одного и того же ядра процессора. Менее чем за 10 секунд, по 8 байт за раз, исследователю удалось похитить ключи AES и объединить их для взлома шифрования.

Как видно, уязвимость легко воспроизводится в лабораторных условиях, но не позволяет целенаправленно похищать определённые данные в памяти, ограничиваясь только тем, что находится в доступном контексте. Downfall будет частично нейтрализована программным методом — сейчас Intel координирует выпуск микрокода с партнёрами по прошивкам и ОС. Уязвимость имеет высокий приоритет, поэтому по умолчанию исправляющий её фрагмент будет активен, но администраторы систем при необходимости смогут его деактивировать — эта опция будет доступна в Windows, Linux и VMM. В облачных инфраструктурах вопрос придётся решать через поставщика услуг.

В большинстве рабочих нагрузок обновленный микрокод на производительность процессора влияния не оказывает, но если речь идёт о нагрузках, связанных с уязвимыми инструкциями AVX2 и AVX-512, то оно может быть ощутимым, признали в Intel — эти инструкции наиболее востребованы в сфере высокопроизводительных вычислений (HPC). Примечательно, что Intel позиционирует набор AVX-512 как важнейшее конкурентное преимущество, но теперь ей пришлось заявить, что в большинстве рабочих нагрузок эта функция интенсивно не используется, и значительной потери производительности не ожидается.

 Источник изображения: Luan Gjokaj / unsplash.com

Уязвимость Downfall эксплуатируется только в том случае, когда на том же ядре целевого процесса находится другой пользователь, добавили в Intel. Таким образом в куда большей опасности находятся облачные системы, а не настольные. В теории при многих рабочих нагрузках HPC отдельным пользователям выделяются отдельные ядра, а значит, устраняющую уязвимость опцию можно будет отключить, чтобы вернуться на полную производительность. В общем случае при наличии значительных рабочих нагрузок AVX2 и AVX-512 рекомендуется произвести замеры производительности с активной и деактивированной опцией, оценить связанные с уязвимостью риски и принять окончательное решение.

В intel перечислили, какие процессоры затронула уязвимость Downfall:

  • семейство Skylake (Skylake, Cascade Lake, Cooper Lake, Amber Lake, Kaby Lake, Coffee Lake, Whiskey Lake, Comet Lake);
  • семейство Tiger Lake;
  • семейство Ice Lake (Ice Lake, Rocket Lake).

Речь идёт о настольных и серверных процессорах. Производитель подчеркнул, что чипы последнего поколения Sapphire Rapids уязвимость не затронула. Raptor Lake, по всей видимости, тоже не пострадали.

Intel заменит AVX-512 на AVX10 — набор инструкций, который сможет работать везде

Вместе с расширениями архитектуры APX, компания Intel представила сегодня новый набор команд AVX10 (Advanced Vector Extensions 10). Он является дальнейшим развитием AVX-512 и будет поддерживаться в перспективных гибридных процессорах не только производительными, но и энергоэффективными ядрами.

Основная цель внедрения AVX10 — подведение векторных инструкций, которые могут выполняться разными типами ядер Intel, под единый стандарт. Актуальный набор векторных инструкций AVX-512 позволяет работать с 512-битными операндами, однако поддерживается исключительно большими P-ядрами. Маленькие E-ядра имеют лишь 256-битные регистры, поэтому AVX-512 в них не работает. Это приводит к тому, что в гибридных процессорах вроде Alder Lake или Raptor Lake поддержку AVX-512 приходится отключать.

Набор AVX10 должен решить эту проблему, однако несколько своеобразным способом. Регистры шириной 512 бит в E-ядрах не появятся, но он позволит выполнять одни и те же векторные инструкции набора AVX-512 как P-, так и E-ядрами, но применительно к регистрам разной размерности: в первом случае – 512, а во втором — 256 бит. Вопрос совместимости результатов операций Intel собирается решить добавлением в AVX10 флага размерности AVX512VL и специальных 256-битных инструкций со встроенным округлением.

По утверждению Intel, все имеющиеся программы с поддержкой AVX-512 сохранят работоспособность и тот же уровень производительности при исполнении на ядрах с поддержкой 512-битных регистров и инструкций AVX10. Однако перекомпиляция под AVX10 программ, использующих набор AVX2, позволит получить прирост производительности за счёт задействования более эффективных команд и дополнительных 16 регистров. Кроме того, общая производительность программ, использующих AVX10, при их исполнении на гибридных процессорах, будет выше за счёт того, что часть нагрузки сможет перенаправляться на E-ядра.

Первая версия AVX10, обозначенная в документации Intel как AVX10.1, появится в серверных процессорах Granite Rapids, которые должны выйти в 2024 году. Однако в них работа с 256-битными регистрами реализована пока не будет, а совместимость с AVX10 будет обеспечиваться лишь на уровне P-ядер. Иными словами, речь идёт лишь о первом переходном этапе к внедрению нового набора. Полноценная же реализация AVX10 в виде версии AVX10.2, работающей как с 512-, так и с 256-битными регистрами, намечена на более поздний срок.

С переходом на AVX10 дальнейшее развитие AVX-512 замораживается, а все вызовы 512-инструкций в перспективных процессорах будут происходить через AVX10. Что же касается ещё одного продвигаемого Intel набора команд, AMX (Advanced Matrix Extensions), то он сохранит свою актуальность и после перехода к AVX10.

Intel на аппаратном уровне уберёт поддержку инструкций AVX-512 в процессорах Alder Lake

Компания Intel решила на аппаратном уровне избавиться от поддержки инструкций AVX-512 у процессоров Alder Lake. Об этом сообщает портал Tom’s Hardware, ссылающийся на анонимный источник. Отмечается, что все новые партии процессоров Core 12-го поколения будут лишены поддержки набора инструкций AVX-512 на физическом уровне.

 Источник изображения: Intel

Источник изображений: Intel

Журналисты обратились за комментариями в Intel, где ответили следующее: «Поддержка инструкций AVX-512 не отключена на физическом уровне у десктопных процессоров Alder Lake, которые уже были поставлены на рынок. Однако компания планирует исключить физическую поддержку AVX-512 в будущих партиях чипов Alder Lake».

Таким образом, производитель ставит точку в продолжительной истории наборе команд AVX-512 на своих новейших потребительских процессорах. Напомним, что эти инструкции используется для повышения производительности в определённых профессиональных программных приложениях, например, связанных с ИИ.

Изначально Intel заявила, что AVX-512 не будут поддерживаться процессорами Alder Lake, поскольку чипы используют две разные микроархитектуры, одна из которых может работать с этим набором команд, а другая — нет. Однако спустя некоторое время производитель опубликовал информацию об оптимизации платформы Alder Lake. В этих документах указывалось, что поддержка AVX-512 в новых процессорах всё-таки планировалась, но официально Intel опять заявила, что чипы Core 12-го поколения не будут работать с этим набором команд. Следом компания выпустила новые советы по оптимизации платформы, в которых уже отсутствовало упоминание AVX-512 для Alder Lake.

С запуском процессоров Core 12-го поколения обнаружилось, что работу вышеуказанного набора команд можно активировать через BIOS некоторых моделей материнских плат. Первое время Intel ничего не говорила по этому поводу, а затем сообщила, что будет рассматривать работу AVX-512 на Alder Lake в качестве разгона без официальной поддержки. Компания добавила, что использовать функцию можно лишь на собственный страх и риск.

 Источник изображения: Intel

В январе этого года появились информация, что Intel собирается отключить поддержку инструкций в новой версии микрокода процессоров через обновления прошивки BIOS. Компания вскоре так и поступила. Были выпущены новые версии BIOS для материнских плат, в которых отсутствовала функция включения инструкций AVX-512. Для тех, кто желал продолжить использовать этот набор команд, предлагалось не обновлять прошивки материнских плат до более свежих версий.

Казалось, что проблема решена. Однако компания MSI нашла способ, как обойти это ограничения. Для этого был предложен специальный механизм, позволяющий переключаться между старой и новой версией прошивки BIOS, не требующий от пользователя каких-то профессиональных навыков. Метод оказался простым и рабочим.

Судя по всему, Intel была возмущена подобным «бунтом на корабле» и теперь компания решила окончательно избавиться от поддержки инструкций AVX-512 — просто убрав из процессора блоки, которые отвечают за их работу. После этого никакие модификации BIOS и другие уловки не позволят вернуть поддержку этого набора команд на всех последующих партиях процессоров Alder Lake. Таким образом, если пользователь захочет использовать инструкции AVX-512, то ему придётся искать процессоры более старых партий, а также использовать более старые версии BIOS.

Своими действиями Intel явно даёт понять, что пользователям, желающим использовать инструкции AVX-512 на её новейших архитектурах, придётся обратить внимание на более дорогие процессоры серии Xeon, где такая поддержка обеспечивается. В то же время ходят слухи, что AMD планирует включить поддержку инструкций AVX-512 в свои грядущие процессоры на архитектуре Zen 4.

Intel сейчас также занимается вопросом с поставщиками материнских плат, которые «разрешили» разгонять официально неразгоняемые процессоры Alder Lake на своих продуктах. Компании недовольна этими обходными путями, поэтому можно ожидать, что в ближайшем будущем Intel тоже может найти решение для этой «проблемы».

Intel полностью заблокирует AVX-512-инструкции в производительных ядрах Alder Lake

По сообщениям сетевых источников, компания Intel намерена запретить пользователям включать набор команд AVX-512 в производительных ядрах процессоров семейства Alder Lake (12-е поколение). «Неподдерживаемая» функция будет отключена производителями материнских плат в предстоящих обновлениях BIOS с новым микрокодом. По данным источника это произойдёт в ближайшие недели, когда производители выпустят соответствующие обновления для материнских плат Z690.

 Источник изображения: igorslab.de

Источник изображения: igorslab.de

Согласно спецификации, AVX-512-инструкции в процессорах Alder Lake не поддерживаются. Но соответствующие аппаратные блоки присутствуют в производительных ядрах Golden Cove, поэтому пользователи имеют возможность включить поддержку AVX-512 при условии отключения в процессорах энергоэффективных ядер Gracemont. Однако сообщается, что эта возможность будет заблокирована в будущих версиях микрокода. Данное решение Intel связано с предстоящим выходом процессоров Core i5 и Core i3 без энергоэффективных ядер, которые могли бы поддерживать AVX-512 «из коробки», но ввиду своего позиционирования не должны превосходить по возможностям уже представленные старшие Alder Lake.

Однако этим дело не ограничится. Согласно имеющимся данным, Intel также ограничит множитель для набора инструкций AVX2 значением 51. Из-за этого рабочая частота процессора при выполнении инструкций AVX2 составит не более 5,1 ГГц, независимо от выбранного множителя. При этом не имеет значения, насколько сильно процессор нагревается, сколько энергии потребляет и какое приложение используется. По какой причине вводится это ограничение также неизвестно.

Источник отмечает, что для энтузиастов существуют возможности обхода упомянутых ограничений. Одним из них является специальный патч ASUS для микропрограммного обеспечения материнских плат серии ROG Maximus, который попросту отключает регулирование AVX2. Для продолжения использования инструкций AVX-512 требуется более экзотический подход, но он также вполне реален. Для этого энтузиасты интегрировали старую версию микрокода в новые версии BIOS, фактически создав модифицированный BIOS с поддержкой набора инструкций AVX-512.

window-new
Soft
Hard
Тренды 🔥
Evernote ограничит бесплатных пользователей 50 заметками — для большего придётся оформить платную подписку 38 мин.
Paint в Windows 11 обзавёлся ИИ-генератором изображений на базе DALL-E 3 45 мин.
Дата выхода, системные требования и поддержка русского языка: Capcom раньше времени обновила страницу Dragon’s Dogma II в Steam 2 ч.
Надёжный инсайдер раскрыл окончательную дату выхода Skull and Bones — официальный анонс на горизонте 3 ч.
Поглощение Figma компанией Adobe несёт угрозу инновациям, посчитали в Великобритании 3 ч.
Полиция Украины арестовала руководство хакерской группировки, атаковавшей компании в 71 стране 5 ч.
The Callisto Protocol получила бесплатную русскую озвучку, но не от разработчиков — где скачать и как установить 5 ч.
AWS и Kyndril помогут предприятиям во внедрении решений на основе генеративного ИИ 5 ч.
Windows 10 теперь может автоматически получать дополнительные обновления 5 ч.
Распространение ИИ больше угрожает уровню зарплат, а не количеству рабочих мест 6 ч.