Расширения защиты программного обеспечения
Расширения Intel Software Guard Extensions ( SGX ) — это набор кодов инструкций, реализующих доверенную среду выполнения , которые встроены в некоторые (ЦП) Intel центральные процессоры . Они позволяют на уровне пользователя и коду операционной системы определять защищенные частные области памяти, называемые анклавами . [ 1 ] [ 2 ] SGX предназначен для реализации безопасных удаленных вычислений , безопасного просмотра веб-страниц и управления цифровыми правами (DRM). [ 3 ] Другие приложения включают сокрытие собственных алгоритмов и ключей шифрования . [ 4 ]
SGX предполагает шифрование ЦП части памяти ( анклава ). Данные и код, поступающие из анклава, расшифровываются на лету внутри ЦП. [ 4 ] защищая их от проверки или чтения другим кодом, [ 4 ] включая код, работающий на более высоких уровнях привилегий, таких как операционная система и любые базовые гипервизоры . [ 1 ] [ 4 ] [ 2 ] Хотя это может смягчить многие виды атак, оно не защищает от атак по побочным каналам . [ 5 ]
Разворот Intel в 2021 году привел к прекращению поддержки SGX в процессорах Intel Core 11-го и 12-го поколений , но разработка Intel Xeon для облачного и корпоративного использования продолжается. [ 6 ] [ 7 ]
Подробности
[ редактировать ]В этой статье отсутствует информация об интересной реализации в виде XuCode — реальных ELF-файлов (см. microcodeDecryptor ), исполняемых для реализации инструкций SGX. ( июль 2022 г. ) |
шестого поколения SGX был впервые представлен в 2015 году с микропроцессорами Intel Core на базе Skylake микроархитектуры .
Поддержка SGX в ЦП указана в CPUID «Структурированный лист расширенной функции», бит EBX 02, [ 8 ] но его доступность для приложений требует поддержки BIOS / UEFI и включения, которое не отражается в битах CPUID. Это усложняет логику обнаружения функций для приложений. [ 9 ]
Эмуляция SGX была добавлена в экспериментальную версию эмулятора системы QEMU в 2014 году. [ 10 ] В 2015 году исследователи из Технологического института Джорджии выпустили симулятор с открытым исходным кодом под названием OpenSGX. [ 11 ]
Одним из примеров использования SGX в сфере безопасности было демонстрационное приложение от wolfSSL. [ 12 ] используя его для алгоритмов криптографии.
Микроархитектура Intel Goldmont Plus (Gemini Lake) также содержит поддержку Intel SGX. [ 13 ]
И в 11-м , и в 12-м поколениях процессоров Intel Core SGX указан как «Устаревший» и поэтому не поддерживается на процессорах «клиентской платформы». [ 6 ] [ 14 ] [ 15 ] Это удалило поддержку воспроизведения дисков Ultra HD Blu-ray в официально лицензированном программном обеспечении, таком как PowerDVD . [ 16 ] [ 17 ] [ 18 ]
Список уязвимостей SGX
[ редактировать ]Прайм+Зондовая атака
[ редактировать ]27 марта 2017 года исследователи из австрийского Технологического университета Граца разработали доказательство концепции, которая позволяет получать ключи RSA из анклавов SGX, работающих в той же системе, в течение пяти минут, используя определенные инструкции ЦП вместо детального таймера для использования кэша. DRAM . Боковые каналы [ 19 ] [ 20 ] Одна из мер противодействия этому типу атак была представлена и опубликована Дэниелом Груссом и др. на симпозиуме USENIX по безопасности в 2017 году. [ 21 ] Среди других опубликованных мер противодействия 28 сентября 2017 г. была опубликована одна мера противодействия этому типу атак — инструмент на основе компилятора DR.SGX. [ 22 ] который утверждает, что имеет превосходную производительность при устранении сложности реализации других предлагаемых решений.
Призрачная атака
[ редактировать ]Группа LSDS в Имперском колледже Лондона продемонстрировала концепцию, согласно которой уязвимость безопасности Spectre , связанная со спекулятивным исполнением, может быть адаптирована для атаки на защищенный анклав. [ 23 ] Атака Foreshadow , раскрытая в августе 2018 года, сочетает в себе спекулятивное выполнение и переполнение буфера для обхода SGX. [ 24 ] Рекомендации по безопасности и способам смягчения последствий этой атаки, также называемой «неисправность терминала L1», были первоначально выпущены 14 августа 2018 г. и обновлены 11 мая 2021 г. [ 25 ]
Атака анклава
[ редактировать ]8 февраля 2019 года исследователи из австрийского Технологического университета Граца опубликовали результаты, которые показали, что в некоторых случаях можно запустить вредоносный код изнутри самого анклава. [ 26 ] Эксплойт включает в себя сканирование памяти процесса с целью восстановления полезной нагрузки, которая затем может запустить код в системе. В документе утверждается, что из-за конфиденциального и защищенного характера анклава антивирусное программное обеспечение не может обнаружить и удалить вредоносное ПО, находящееся внутри него. Intel опубликовала заявление, в котором заявила, что эта атака выходит за рамки модели угроз SGX, что они не могут гарантировать, что код, запускаемый пользователем, поступает из надежных источников, и призвала потребителей запускать только доверенный код. [ 27 ]
Атака воспроизведения MicroScope
[ редактировать ]Сегодня наблюдается рост атак по побочным каналам, от которых страдают современные компьютерные архитектуры. Многие из этих атак измеряют небольшие, недетерминированные изменения в выполнении кода, поэтому злоумышленнику требуется множество, возможно, десятки тысяч измерений, чтобы узнать секреты. Однако атака MicroScope позволяет вредоносной ОС воспроизводить код произвольное количество раз независимо от фактической структуры программы, что позволяет проводить десятки атак по побочным каналам. [ 28 ] В июле 2022 года Intel представила патч для Linux под названием AEX-Notify, позволяющий программисту анклава SGX написать обработчик для событий такого типа. [ 29 ]
Грабежвольт
[ редактировать ]Исследователи безопасности смогли внести определенные временные ошибки в выполнение внутри анклава, что привело к утечке информации. Атака может быть выполнена удаленно, но требует доступ к привилегированному управлению напряжением и частотой процессора. [ 30 ] Рекомендации по безопасности и способам предотвращения этой атаки были первоначально выпущены 14 августа 2018 г. и обновлены 20 марта 2020 г. [ 31 ]
ЛВИ
[ редактировать ]Введение значения нагрузки [ 32 ] [ 33 ] вводит данные в программу с целью заменить значение, загруженное из памяти, которое затем используется в течение короткого времени, прежде чем ошибка будет обнаружена и отменена, в течение которого LVI контролирует данные и поток управления. Рекомендации по безопасности и способам смягчения этой атаки были первоначально выпущены 10 марта 2020 г. и обновлены 11 мая 2021 г. [ 34 ]
SGAxe
[ редактировать ]СГАкс, [ 35 ] уязвимость SGX, опубликованная в 2020 году, расширяет возможности спекулятивной атаки на кэш, [ 36 ] утечка содержимого анклава. Это позволяет злоумышленнику получить доступ к частным ключам ЦП, используемым для удаленной аттестации. [ 37 ] Другими словами, злоумышленник может обойти контрмеры Intel и нарушить конфиденциальность анклавов SGX. Атака SGAxe осуществляется путем извлечения ключей аттестации из частного анклава цитирования SGX, подписанных Intel. Затем злоумышленник может замаскироваться под законные машины Intel, подписав произвольные кавычки аттестации SGX. [ 38 ] Рекомендации по безопасности и меры по смягчению последствий этой атаки, также называемой «Утечка данных процессора» или «Вытеснение кэша», были первоначально выпущены 27 января 2020 г. и обновлены 11 мая 2021 г. [ 39 ]
Утечка ÆPIC
[ редактировать ]В 2022 году исследователи безопасности обнаружили уязвимость в усовершенствованном программируемом контроллере прерываний (APIC), которая позволяет злоумышленнику с правами root/admin получить доступ к ключам шифрования через APIC, проверяя передачу данных из кэша L1 и L2 . [ 40 ] Эта уязвимость является первой архитектурной атакой, обнаруженной на процессорах x86 . Это отличается от Spectre и Meltdown, которые используют шумный побочный канал . В настоящее время этот эксплойт затрагивает микропроцессоры Intel Core 10, 11 и 12 поколений и Xeon Ice Lake. [ 41 ] [ 42 ]
Аргументы о вредоносном ПО SGX
[ редактировать ]Велись долгие споры о том, позволяет ли SGX создавать более качественные вредоносные программы. Исследователи Оксфордского университета опубликовали статью в октябре 2022 года. [ 43 ] рассмотрение потенциальных преимуществ и недостатков злоумышленников при использовании SGX для разработки вредоносного ПО. Исследователи приходят к выводу, что, хотя в экосистеме SGX могут существовать временные уязвимости нулевого дня для злоупотреблений, основные принципы и конструктивные особенности доверенных сред выполнения (TEE) делают вредоносное ПО более слабым, чем вредоносное ПО в дикой природе, TEE не вносят существенного вклада в в противном случае вредоносное ПО.
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Перейти обратно: а б «Intel SGX для чайников (цели проектирования Intel SGX)» . intel.com . 26 сентября 2013 г.
- ^ Перейти обратно: а б Джонм (08 августа 2017 г.). «Правильное обнаружение расширений Intel® Software Guard Extensions (Intel® SGX) в ваших приложениях» . программное обеспечение.intel.com . Проверено 15 февраля 2019 г.
- ^ «Подробности Intel SGX» . intel.com . 05.07.2017.
- ^ Перейти обратно: а б с д «Исследователи используют Intel SGX, чтобы сделать вредоносное ПО недоступным для антивирусного программного обеспечения — Slashdot» . it.slashdot.org . 12 февраля 2019 г.
- ^ «Intel SGX и побочные каналы» . intel.com . 2020-02-28.
- ^ Перейти обратно: а б «Новые чипы Intel не будут воспроизводить диски Blu-ray из-за прекращения поддержки SGX» . Проверено 17 января 2022 г.
- ^ анрилр (20 января 2022 г.). «Принимая вызов: безопасность данных с помощью конфиденциальных вычислений Intel» . сообщество.intel.com . Проверено 20 апреля 2022 г.
- ^ Справочник по программированию расширений набора команд архитектуры Intel , Intel, АВГУСТ 2015 г., стр. 36 «Структурированный лист расширенных функций EAX=07h, бит EBX 02: SGX»
- ^ «Правильное обнаружение расширений Intel Software Guard в ваших приложениях» . intel.com . 13 мая 2016 г.
- ^ «Эмуляция Intel SGX с использованием QEMU» (PDF) . tc.gtisc.gatech.edu . Проверено 2 ноября 2018 г.
- ^ "sslab-gatech/opensgx" . Гитхаб . Проверено 15 августа 2016 г.
- ^ «wolfSSL в ЦАХАЛе» . вольфссл . 11 августа 2016 г.
- ^ «Процессор Intel® Pentium® Silver J5005» . Проверено 10 июля 2020 г.
- ^ «Технические данные процессора Intel Core 11-го поколения» . Проверено 15 января 2022 г.
- ^ «Техническое описание процессоров Intel Core 12-го поколения» . Проверено 15 января 2022 г.
- ^ Мэри Стоун (21 января 2022 г.). «Intel прекращает поддержку дисков UHD Blu-ray в своих новейших чипах для ПК» . что-нибудь .
- ^ «Центр поддержки КиберЛинк» .
- ^ https://www.cyberlink.com/stat/help/powerdvd/22/pc-mode/enu/98_01_14_how_to_play_uhdbd.html
- ^ Чиргвин, Ричард (7 марта 2017 г.). «Боффинс показывает, что Intel SGX может утечь криптоключи» . Регистр . Проверено 1 мая 2017 г.
- ^ Шварц, Майкл; Вайзер, Сэмюэл; Грусс, Дэниел; Морис, Клементина; Мангард, Стефан (2017). «Расширение Malware Guard: использование SGX для сокрытия атак на кэш». arXiv : 1702.08719 [ cs.CR ].
- ^ «Надежная и эффективная защита побочных каналов кэша с использованием аппаратной транзакционной памяти» (PDF) . УСЕНИКС . 16 августа 2017 г.
- ^ Брассер, Фердинанд; Капкун, Срджан; Дмитриенко Александра; Фрассетто, Томмазо; Костиайнен, Кари; Мюллер, Урс; Садеги, Ахмад-Реза (28 сентября 2017 г.). DR.SGX: Усиление защиты анклавов SGX от атак на кэш с помощью рандомизации местоположения данных . ACSAC '19: Материалы 35-й ежегодной конференции по приложениям компьютерной безопасности, декабрь 2019 г., стр. 788–800. arXiv : 1709.09917 . дои : 10.1145/3359789.3359809 . S2CID 19364841 .
- ^ Пример кода, демонстрирующий атаку типа Spectre на анклав Intel SGX. , 19 декабря 2021 г.
- ^ Питер Брайт — 10 июля 2018 г., 21:00 по всемирному координированному времени (10 июля 2018 г.). «Новая атака, подобная Spectre, использует спекулятивное выполнение для переполнения буферов» . Арс Техника . Проверено 2 ноября 2018 г.
{{cite web}}
: CS1 maint: числовые имена: список авторов ( ссылка ) - ^ «CVE-CVE-2018-3615» . cve.mitre.org . Проверено 17 октября 2022 г.
- ^ Шварц, Майкл; Вайзер, Сэмюэл; Грусс, Дэниел (08 февраля 2019 г.). «Практическое вредоносное ПО для анклава с Intel SGX». arXiv : 1902.03256 [ cs.CR ].
- ^ Брайт, Питер (12 февраля 2019 г.). «Исследователи используют Intel SGX, чтобы сделать вредоносное ПО недоступным для антивирусного программного обеспечения» . Арс Техника . Проверено 15 февраля 2019 г.
- ^ Скарлатос, Димитриос; Ян, Мэнцзя; Гопиредди, Бхаргава; Спраберы, Читать; Торреллас, Хосеп; Флетчер, Кристофер В. (2019). «Микроскоп». Материалы 46-го Международного симпозиума по компьютерной архитектуре . Иска '19. Финикс, Аризона: ACM Press. стр. 318–331. дои : 10.1145/3307650.3322228 . ISBN 978-1-4503-6669-4 .
- ^ «[ИСПРАВЛЕНИЕ] x86/sgx: разрешить анклавам использовать асинхронное уведомление о выходе» . lore.kernel.org . Проверено 17 октября 2022 г.
- ^ «Плундервольт крадет ключи от криптографических алгоритмов» . Блог Рамбус . 11 декабря 2019 г. Проверено 20 марта 2020 г.
- ^ «CVE-CVE-2019-11157» . cve.mitre.org . Проверено 17 октября 2022 г.
- ^ «LVI: перехват временного выполнения с помощью внедрения значения нагрузки» . lviattack.eu . Проверено 12 марта 2020 г.
- ^ «Введение значения нагрузки» . программное обеспечение.intel.com . Проверено 12 марта 2020 г.
- ^ «CVE-CVE-2020-0551» . cve.mitre.org . Проверено 17 октября 2022 г.
- ^ "СГАкс" . sgaxe.com .
- ^ «Кэшаут» . cacheoutattack.com .
- ^ «На пути к формализации удаленной аттестации на основе расширенного идентификатора конфиденциальности (EPID) в Intel SGX» .
- ^ «Атаки SGAxe и CrossTalk: утечка данных об новой уязвимости Intel SGX» . Отчеты о взломах . 12.06.2020 . Проверено 12 июня 2020 г.
- ^ «CVE-CVE-2020-0549» . cve.mitre.org . Проверено 17 октября 2022 г.
- ^ «Intel SGX: все-таки не так безопасно, утечка ÆPIC» . Новый стек . 16 августа 2022 г. Проверено 29 августа 2022 г.
- ^ Уилсон, Джейсон Р. (11 августа 2022 г.). «Утечка ÆPIC — это архитектурная ошибка ЦП, затрагивающая процессоры Intel Core 10-го, 11-го и 12-го поколений» . Wccftech . Проверено 29 августа 2022 г.
- ^ «Утечка ÆPIC» . aepicleak.com . Проверено 29 августа 2022 г.
- ^ Кучук, Кубилай Ахмет; и др. (октябрь 2022 г.). «SoK: как «не» разрабатывать вредоносное ПО TEE следующего поколения» . Аппаратная и архитектурная поддержка безопасности и конфиденциальности (HASP) 2022 . Проверено 17 апреля 2023 г.
Внешние ссылки
[ редактировать ]- Расширения Intel Software Guard (Intel SGX) /расширения ISA, Intel
- Справочник по программированию Intel Software Guard Extensions (Intel SGX) , Intel, октябрь 2014 г.
- IDF 2015 – Технический чат: введение в расширения Intel Software Guard Extensions , Intel (плакат)
- Слайды учебного пособия ISCA 2015 для Intel SGX , Intel, июнь 2015 г.
- Маккин, Фрэнк и др. (Intel), Инновационные инструкции и модель программного обеспечения для изолированного выполнения // Материалы 2-го международного семинара по аппаратной и архитектурной поддержке безопасности и конфиденциальности. АКМ, 2013.
- Джексон, Алон (докторская диссертация). Доверие — в ключах смотрящего: расширение автономии и анонимности SGX , май 2017 г.
- Джоанна Рутковска , Мысли о предстоящих расширениях Software Guard Extensions от Intel (часть 1) , август 2013 г.
- SGX: хороший, плохой и совершенно уродливый / Шон Дэвенпорт, Ричард Форд (Флоридский технологический институт) / Virus Bulletin, 7 января 2014 г.
- Виктор Костан и Шринивас Девадас, Объяснение Intel SGX , январь 2016 г.
- wolfSSL , октябрь 2016 г.
- Безопасность Intel SGX для приложений защиты ключей и конфиденциальности данных / Профессор Иегуда Линделл (Университет Бар-Илан и Unbound Tech), январь 2018 г.
- Технология Intel SGX и влияние атак по побочным каналам процессора , март 2020 г.
- Как конфиденциальные вычисления обеспечивают персонализированный опыт покупок , январь 2021 г.
- Реализация потенциала данных при сохранении конфиденциальности с помощью EyA и Conclave начиная с R3 , декабрь 2021 г.
- Знакомство с расширениями Intel Software Guard Extensions , июнь 2020 г.