Поддержка для Intel® Trusted Execution Technology (Intel® TXT)
Информация по поддержке для Intel® Trusted Execution Technology (Intel® TXT)
Рекомендуемые статьи
Поиск и устранение неисправностей
Intel® Management Engine важное обновление микропрограммного обеспечения (Intel-SA-00086)
Информация о продукции и документация
Intel® Converged Security and Management Engine (Intel® CSME) (SA-00125)
Информация о продукции и документация
Intel® Platform Trust Technology (Intel® PTT) в системах, использующих Intel® CSME и Intel® TXE (Intel-SA-00142)
Сообщения об ошибке
Определить мой продукт
Установка и настройка
Коды продукции и запасные части
Информация о продукции и документация
Поиск и устранение неисправностей
Гарантия и программа гарантийной замены
Обслуживание и производительность
Поиск не дал результатов для запроса
Все категории статей
Информация о продукции и документация
Поиск и устранение неисправностей
Просмотреть параметры загрузки
Поиск не дал результатов для запроса
Новейшие драйверы и ПО
Действие
Получить спецификацию продукции для данного продукта
Вам нужна дополнительная помощь?
Оставьте отзыв
Содержание данной страницы представляет собой сочетание выполненного человеком и компьютерного перевода оригинального содержания на английском языке. Данная информация предоставляется для вашего удобства и в ознакомительных целях и не должна расцениваться как исключительная, либо безошибочная. При обнаружении каких-либо противоречий между версией данной страницы на английском языке и переводом, версия на английском языке будет иметь приоритет и контроль. Посмотреть английскую версию этой страницы.
Для работы технологий Intel может потребоваться специальное оборудование, ПО или активация услуг. // Ни один продукт или компонент не может обеспечить абсолютную защиту. // Ваши расходы и результаты могут отличаться. // Производительность зависит от вида использования, конфигурации и других факторов. // См. наши юридические уведомления и отказ от ответственности. // Корпорация Intel выступает за соблюдение прав человека и избегает причастности к их нарушению. См. Глобальные принципы защиты прав человека в корпорации Intel. Продукция и программное обеспечение Intel предназначены только для использования в приложениях, которые не приводят или не способствуют нарушению всемирно признанных прав человека.
Intel TXT
Пожалуйста, помогите. Заранее спасибо.
для секурности накати gentoo hardened или в таком духе
Не в том дело, я сейчас хочу именно понять, что ЭТО такое.
Я правильно понимаю, что эта сущность фиксирует хардварный/софтварный состав системы и впредь позволяет грузить только такой набор, для изменения требуется перенастройка?
Представляет собой скорее не средство доверенной загрузки, а защиту ресурсов любых отдельных приложений на аппаратном уровне в целом.
Тут скорее оно не дает одному процессу залезть в адресное пространство другого. У меня тоже есть оно (Core i5-2500), полезная штука, включил поддержку в ядре. Может защитить от некоторых сплойтов.
Троян от АНБ, естественно.
Для внедрения зонда.
Грепнул конфиг ядра на предмет TXT:
На счет «доверенной» загрузки не знаю, но эта штука вроде изолирует процессы друг от друга.
Насколько я понимаю, Intel Trusted Execution Technology изолирует отдельные процессы в полностью обособленной среде исполнения (Trusted Platform Module). Это может применяться для DRM, защиты данных пользователя (от других обывателей, но не от АНБ) и т.п.
не дает одному процессу залезть в адресное пространство другого
ядро так работает и без этой фигни. зачем она нужна?
Сплойты же есть. А тут защита на аппаратном уровне.
Trusted Execution Environment на примере Intel SGX. Основные принципы простыми словами. «Hello World!»
Данная статья направлена, прежде всего, на начинающего специалиста, который только
приступил к исследованию методов и способов обеспечения информационной безопасности исполняемого программного кода. С такой задачей рано или поздно сталкиваются все разработчики ПО и системные инженеры, что и произошло на одном из проектов компании Альтирикс системс, в рамках которого необходимо было реализовать защищенное исполнение программного кода в условно не защищенной среде. Для чего, помимо, уже известных и хорошо описанных методов и средств защиты информации, была выбрана, достаточно редко применяемая в российских проектах технология Trusted Execution Environment (TEE) или, говоря по-русски, технология доверенных сред исполнения. Конкретно в этой статье мы решили описать практический пример использования анклавов процессора Intel для доверенной среды исполнения кода (Intel Software Guard Extensions или SGX).
Доверенные среды исполнения поддерживаются далеко не только процессорами данного производителя. Также, TEE поддерживается рядом процессоров AMD (Secure Execution Environment, Secure Technology), процессорами с архитектурой ARM (TrustZone), процессорами с архитектурой RISC-V. Кроме того, TEE поддерживается современными мейнфреймами IBM Z. Мы же выбрали Intel SGX для своего примера поскольку считаем, что на момент написания статьи (лето 2020г.) процессоры Intel наиболее популярны и доступны для начинающих специалистов на постсоветском пространстве. С полным перечнем моделей процессоров Intel с поддержкой Intel SGX можно ознакомиться на сайте Intel в разделе Intel product specifications (ARK), выбрав для поиска соответствующую технологию. И да, возможно, воспользоваться эмуляциями Intel SGX для учебных или исследовательских целей. Работа с несколькими из таких эмуляций выявила ряд сложностей в их настройке. Также нужно понимать, что для реальных “боевых” проектов никакая эмуляция технологии основанной на аппаратом функционале, естественно, недопустима.
Любой ваш отзыв, особенно, с замечаниями и дополнениями от специалистов уже имеющих опыт применения TEE в своих проектах, или же с вопросами от тех, кто точно так же только начинает погружаться в эту технологию, поспособствуют более детальному раскрытию данной темы в следующих статьях. Заранее спасибо!
Введение
Основной вопрос, который мы задаем в начале пути изучения доверенных сред исполнения: можем ли мы доверять компонентам системы компьютера? А если можем, то каким? Разработчики, а в частности инженеры Intel, дают на этот вопрос однозначный ответ: никому, кроме самого Intel. Что под этим подразумевается? Предлагаю поподробнее в этом разобраться.
Кольца привилегий
В целях безопасности, компоненты системы любого компьютера разделены по уровням привилегий. Во всех современных системах, базирующихся на процессорах Intel и не только, реализована кольцевая система уровней привилегий. От внешнего к внутреннему идет расширение полномочий для кода, который обрабатывается в данный момент процессором.
Кольцо №3. На внешнем кольце располагаются все пользовательские приложения, которые мы используем на компьютере в повседневной жизни, они имеют низший уровень доступа.
Кольцо №2 и №1. На данных уровнях располагаются операционные системы и драйвера устройств.
Кольцо №0. Режим супервизора. Здесь расположено ядро операционной системы (управление периферий, распределение ресурсов между процессами), а также системные драйвера.
Кольцо №-1. Гипервизор. Отвечает за распределение ресурсов в случае, если на компьютере одновременно запущены несколько операционных систем, а также отвечает за их изоляцию.
Кольцо №-2. Режим системного управления (SMM – System Management Mode). Управляет энергообеспечением системы, управляет платами расширения.
Мы можем формировать всё новые и новые кольца для ограничения полномочий компонентов иерархии, создавая всё более сложную и нагруженную систему. Однако, таким образом работа для злоумышленника только облегчится: чем сложнее система, тем проще найти в ней уязвимость. Но каким же образом обеспечить дополнительный уровень безопасности там, где это требуется? Ответ состоит из одного слова.
Анклавы
Основной задачей злоумышленника является получение уровня привилегий, который обеспечил бы ему доступ к необходимым ресурсам системы. Если это секрет приложения-жертвы, то злонамеренному приложению необходим именно тот уровень доступа, который отвечает за хранение секретов в системе. Отсюда напрашивается вывод, что управление секретами приложений стоит доверить самому внутреннему кольцу, ведь доступ туда получить сложнее всего. Однако, данный подход был несколько переосмыслен. Теперь все секреты хранятся на одном уровне с пользовательскими приложениями, как и код, который этими секретами управляет за одним условием: никто, абсолютно никто, кроме процессора, не может получить туда доступ. Программа и данные как бы упакованы в хранилище, в данном случае это хранилище называется анклавом (Enclave – закрытый, запертый), ключ от которого есть только у процессора.
Приложения, работающие с доверенной средой
Доверенная часть представляет из себя набор функций и процедур, называемых ECALL (Enclave Call). Сигнатура таких функций должна быть прописана в специальном header-файле, а их реализация в файле с исходным кодом. В целом, подход схож с тем, что мы используем при обычном прописывании хедеров, однако, в данном контексте используется специальный C-подобный язык EDL (Enclave Definition Language). Также необходимо прописать прототипы тех функций, которые можно будет вызвать изнутри анклава, такие функции называются OCALL (Outside Call). Прототипы прописываются в том же хедере, где и ECALL-функции, а реализация, в отличие от ECALL, прописывается соответственно в недоверенной части приложения.
Доверенный и недоверенный код жестко связываются между собой сертификацией с использованием протокола Диффи-Хеллмана. За процедуру подписи отвечает процессор, где и хранится ключ обмена информации, обновляющийся каждый раз при перезагрузке системы. Содержимое анклавов хранится в общей памяти, используемой пользовательскими приложениями, однако хранение происходит в зашифрованном виде. Расшифровать содержимое может только процессор. В идеализированном мире, где код анклавов прописан без единого бага, а все железо работает точно так, как это задумал производитель и никак иначе, мы бы получили универсальную, полностью защищенную систему. Основным достоинством данной системы является исполнение секретной части на том же процессоре, где исполняются все остальные программы, в том числе и пользовательские.
Однако, в последние несколько лет перед широкой аудиторий предстало большое количество микроархитектурных уязвимостей современных процессоров, позволяющих получить доступ внутрь анклава: Foreshadow (уязвимость класса Spectre), SGAxe, Zombieload, CacheOut и многие другие. Нет никакой гарантии того, что это список не пополнится очередной серьезной аппаратной уязвимостью, программное исправление которой не иначе как программной «заплаткой» назвать будет нельзя. Возможно, мы доживем до того времени, когда миру будет представлена абсолютно новая архитектура процессоров, в которой будут исправлены все недостатки, а пока, стоит говорить о том, что у нас есть под рукой. А под рукой у нас есть универсальный, мощный инструмент, серьезно повышающий безопасность современных систем. Повышающий настолько, что он реализован в той или иной интерпретации в миллиардах устройств по всему миру: от умных часов, смартфонов до огромных вычислительных кластеров.
Hello world!
Перейдем от теории к практике. Напишем небольшую программу, которая реализует ставшую уже каноничной задачу: вывести строку «Hello world!». В данной интерпретации укажем ещё и место, откуда будет отправлено послание.
Для начала необходимо скачать и установить SDK для работы с SGX с официального сайта. Для скачивания необходимо пройти простую процедуру регистрации. На этапе установки будет предложено интегрировать пакет разработки в имеющуюся на компьютере версию VS, сделайте это. Всё готово для успешной реализации первого проекта с использованием SGX.
Запускаем VS и создаем проект Intel SGX.
Выбираем имя для проекта и для решения и ждем «далее».
Далее будет предложено выбрать конфигурацию проекта, ничего не меняйте, оставьте те значения, которые предложены изначально.
Затем добавьте к созданному решение ещё один проект: обычное консольное приложение C++.
В результате в диалоговом окне проектов должна получиться следующая картина:
Затем необходимо связать анклав с недоверенной частью. Жмем правой кнопкой на проект «Untrusted part».
Далее необходимо изменить некоторые свойства проектов.
Это необходимо проделать для корректной работы программы. Повторяем действия для обоих проектов.
Также необходимо обозначить в свойствах решения главный проект.
Всё, наша программа готова к реализации.
В данной программе будет 3 файла, с которыми мы будем работать: Enclave.edl (тот самый хедер), Enclave.cpp (прописана реализация ECALL’ов), Untrusted Part.cpp (главный файл проекта – недоверенная часть).
Поместим в файлы следующий код:
Жмем f7 – собираем решение, а затем ctrl+f5 для запуска.
Если у вас выдало ошибку следующего содержания:
убедитесь, что в BIOS активирован Intel SGX: Bios: Security/IntelSGX/Enabled.
В случае, если никаких ошибок не последовало, а перед экраном на консоли вы увидели следующие строки:
Trusted eXecution Technology
(TXT)
Это абсолютно новая концепция безопасности. В ее основе лежит эксклюзивное использование части ресурсов компьютера каждым конкретным приложением. Она охватывает практически все подсистемы компьютера: выделение памяти, мониторинг системных событий, связь чипсета и памяти, хранение данных, устройства ввода (клавиатура и мышь), вывод графической информации.
Каждой защищенной программе процессор выделяет свой изолированный раздел оперативной памяти и другие необходимые ей ресурсы. В эту закрытую среду не может вмешаться никакое другое приложение.
Обеспечивается шифрование данных, сохраняемых приложением на носителе. С носителя они могут быть извлечены только при помощи того же модуля, который осуществлял шифрование.
Защите подлежит и ввод данных, включая передачу данных по USB и даже «кликанье» мышкой. У вредоносной программы не остается возможности отследить поток данных c устройств ввода. Программы-кейлогеры вместо данных с клавиатуры получат набор случайных символов.
Шифруются также графические данные, передаваемые в кадровый буфер видеокарты. Вредоносные программы не могут сделать скриншот и послать его хакеру.
Защитить можно и ядро операционной системы, загружая его в специальную изолированную область памяти. Кроме того, TXT имеет встроенную систему самоконтроля (аттестацию), предусматривающую проверку компонентов TXT на целостность. В случае провала аттестации компьютер не загрузится.
Таким образом, в сфере компьютерной безопасности технология TXT является значительным шагом вперед. Однако для практического использования всех ее преимуществ требуется ее поддержка системной логикой материнской платы, а также соответствующее программное обеспечение.
Люди обычно оценивают процессор по количеству ядер, тактовой частоте, объему кэша и других показателях, редко обращая внимание на поддерживаемые им технологии.
Отдельные из этих технологий нужны только для решения специфических заданий и в «домашнем» компьютере вряд ли когда-нибудь понадобятся. Наличие же других является непременным условием работы программ, необходимых для повседневного использования.
Так, полюбившийся многим браузер Google Chrome не работает без поддержки процессором SSE2. Инструкции AVX могут в разы ускорить обработку фото- и видеоконтента. А недавно один мой знакомый на достаточно быстром Phenom II (6 ядер) не смог запустить игру Mafia 3, поскольку его процессор не поддерживает инструкции SSE4.2.
Если аббревиатуры SSE, MMX, AVX, SIMD вам ни о чем не говорят и вы хотели бы разобраться в этом вопросе, изложенная здесь информация станет неплохим подспорьем.
Одной из особенностей компьютеров на базе процессоров AMD, которой они выгодно отличаются от платформ Intel, является высокий уровень совместимости процессоров и материнских плат. У владельцев относительно не старых настольных систем на базе AMD есть высокие шансы безболезненно «прокачать» компьютер путем простой замены процессора на «камень» из более новой линейки или же флагман из предыдущей.
Если вы принадлежите к их числу и задались вопросом «апгрейда», эта небольшая табличка вам в помощь.
В таблицу можно одновременно добавить до 6 процессоров, выбрав их из списка (кнопка «Добавить процессор»). Всего доступно больше 2,5 тыс. процессоров Intel и AMD.
Пользователю предоставляется возможность в удобной форме сравнивать производительность процессоров в синтетических тестах, количество ядер, частоту, структуру и объем кэша, поддерживаемые типы оперативной памяти, скорость шины, а также другие их характеристики.
Дополнительные рекомендации по использованию таблицы можно найти внизу страницы.
В этой базе собраны подробные характеристики процессоров Intel и AMD. Она содержит спецификации около 2,7 тысяч десктопных, мобильных и серверных процессоров, начиная с первых Пентиумов и Атлонов и заканчивая последними моделями.
Информация систематизирована в алфавитном порядке и будет полезна всем, кто интересуется компьютерной техникой.
Таблица содержит информацию о почти 2 тыс. процессоров и будет весьма полезной людям, интересующимся компьютерным «железом». Положение каждого процессора в таблице определяется уровнем его быстродействия в синтетических тестах (расположены по убыванию).
Есть фильтр, отбирающий процессоры по производителю, модели, сокету, количеству ядер, наличию встроенного видеоядра и другим параметрам.
Для получения подробной информации о любом процессоре достаточно нажать на его название.
Проверка стабильности работы центрального процессора требуется не часто. Как правило, такая необходимость возникает при приобретении компьютера, разгоне процессора (оверлокинге), при возникновении сбоев в работе компьютера, а также в некоторых других случаях.
В статье описан порядок проверки процессора при помощи программы Prime95, которая, по мнению многих экспертов и оверлокеров, является лучшим средством для этих целей.
ПОКАЗАТЬ ЕЩЕ
Технология TXT состоит из последовательно защищённых этапов обработки информации и основана на улучшенном модуле TPM (подробнее о нём модно прочесть в нашем обзоре ноутбука с использованием TPM). В основе системы лежит безопасное исполнение программного кода. Каждое приложение, работающее в защищённом режиме, имеет эксклюзивный доступ к ресурсам компьютера, и в его изолированную среду не сможет вмешаться никакое другое приложение. Ресурсы для работы в защищённом режиме физически выделяются процессором и набором системной логики. Безопасное хранение данных означает их шифрование при помощи всё того же TPM. Любые зашифрованные TPM данные могут быть извлечены с носителя только при помощи того же модуля, что осуществлял шифрование.
Intel также разработала систему безопасного ввода данных. У вредоносной программы не будет возможности отследить поток данных на входе компьютера, а кейлоггер получит только бессмысленный набор символов, поскольку все процедуры ввода (включая передачу данных по USB и даже мышиные клики) будут зашифрованы. Защищённый режим приложения позволяет передавать любые графические данные в кадровый буфер видеокарты только в зашифрованном виде, таким образом, вредоносный код не сможет сделать скриншот и послать его хакеру. Кроме того, зашифрована может быть лишь часть информации – например, какое-то определённое окно с сообщением, которое останется для всех других приложений просто невидимым. Защита предусмотрена и для ядра ОС, загружаемого в специальную изолированную область памяти.
Защита безопасности на аппаратном уровне – огромный шаг вперёд. Даже если вирусы не будут побеждены окончательно, конфиденциальность информации сохранять станет намного проще. TXT имеет встроенную систему самоконтроля, так называемую аттестацию, проходя которую компоненты TXT проверяются на целостность, а в случае провала одного из тестов компьютер просто не загрузится. Работа с памятью в TXT чем-то похожа на работу пользователя с разделами жёсткого диска: каждому приложению процессор во время запуска будет выделять свой изолированный раздел оперативной памяти. Возможны в системе и общие, незащищённые разделы памяти. Таким образом, TXT охватывает практически все подсистемы компьютера
* Выделение памяти;
* мониторинг системных событий;
* связь чипсета и памяти;
* подсистемы хранения данных;
* устройства ввода (клавиатура и мышь) ;
* вывод графической информации.
Разработка технологии TXT сейчас находится на финишной прямой. Впервые она будет применена на практике в 2007 году на компьютерах, поддерживающих платформу vPro. В потребительский сектор TXT попадёт только после того, как прочно обоснуется среди профессиональных систем.
технология защиты информации,
системный антивирус, можно так сказать;
расшифровывается так:
Trusted Execution Technology (TXT) технология доверенного выполнения, также ещё называется LaGrande
В неё входят:
Защищенное выполнение (Protected Execution): эта возможность разрешает приложениям выполняться в изолированных окружениях, чтобы оставаться максимально защищенными от другого программного обеспечения, работающего на этой же платформе. Ни одна другая программа не сможет следить за выполнением приложения или его данными. Кроме того, каждое приложение, которое выполняется в этом режиме, имеет свои собственные физически разделенные ресурсы.
Надежное хранение (Sealed Storage): новые чипы TPM могут хранить и шифровать все ключи на аппаратном уровне, причем, расшифровать их можно только на компьютере, в котором установлен конкретный чип TPM. Любые попытки скопировать данные извне приведут к получению зашифрованной информации.
Защищенный ввод (Protected Input): Интел разрабатывает механизм, который предотвратит неавторизованное наблюдение за устройствами ввода, например, отслеживание щелчков мыши и нажатий клавиш на клавиатуре. Шифроваться будет ввод не только от стандартных устройств ввода, но и данные, которые передаются по шине USB. Надеемся, это не отразится на производительности и скорости передачи данных.
Защита графики (Protected Graphics): приложения, которые выполняются в защищенной среде, получат возможность шифрования графического вывода. Данные, которые передаются видеокарте, будут шифроваться и тоже не смогут быть получены не авторизованным кодом. Например, может быть зашифрована информация, которая отображается простой программой-дневником, а все остальные окна будут оставаться незащищенными.
Защищенный запуск (Protected Launch): эта функция TXT будет контролировать и защищать критические части операционной системы и другие, связанные с системой компоненты от несанкционированного доступа во время запуска. Например, компоненты ядра системы защищаются во время и после запуска.














