интел трастед коннект сервис клиент что это

Технология 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 будет контролировать и защищать критические части операционной системы и другие, связанные с системой компоненты от несанкционированного доступа во время запуска. Например, компоненты ядра системы защищаются во время и после запуска.

Источник

Атака на Intel Trusted Execution Technology №1

Содержание статьи

На прошлой неделе исследователи
сообщили о создании руткита,
который использует для установки уязвимость в кэше процессоров Intel. Джоанна
Рутковска и Лоик Дафлот утвержают, что такого опасного и неуловимого руткита еще
не было. Он устанавливается и прячется в пространстве
SMM, к которой не имеет
доступ никакая операционная система. Утверждается, что компния Intel знала о
существовании этой проблемы еще с 2005 года, но ничего не сделала для ее
исправления.

Сегодня мы предлагаем тебе перевод документа, в котором описана
использованная уязвимость.

Аннотация

В этой статье мы представим результаты нашего исследования безопасности
технологии Intel Trusted Execution Technology (TXT), являющейся составной частью
фирменной технологии Intel под названием vPro. Мы опишем практическую атаку,
позволяющую обойти краеугольный камень концепции доверительных вычислений Intel,
процедуру доверенной загрузки. Кроме этого, мы обсудим практические атаки на
память SMM, являющиеся одним из компонентов взлома TXT.

1. Вступление

Технологии Trusted Computing (Доверительных вычислений) становятся частью
нашей жизни, хотим мы этого или нет, поскольку сейчас практически каждый новый
ноутбук оснащается контроллером Trusted Platform Module (TPM). Кроме
того, некоторые из технологий Microsoft Palladium перекочевали в Vista, а
Microsoft BitLocker, вне всякого сомнения, является самым успешным и широко
распространенным продуктом, основанным на идее Trusted Computing.

Со стороны аппаратного обеспечения, помимо знаменитого TPM, мы также получили
технологию LaGrande, позднее переименованную в Trusted Execution Technology
(TXT)
. TXT – это ответ Intel на развитие концепции Trusted Computing. На
данный момент TXT является составной частью фирменной технологии vPro, а
совместимое с нею аппаратное обеспечение уже больше года можно купить в любом
компьютерном магазине (первым таким продуктом стала материнская плата DQ35J,
работавшая с некоторыми процессорами Core 2 Duo).

TXT не является альтернативой TPM, более того, для осуществления своих
базовых функций, таких как безопасное хранение вычисленных параметров, TXT во
многом опирается на TPM. Также и Palladium (или как он там сейчас называется) не
является конкурентом TXT. Intel TXT может предоставить той же Vista Bitlocker
необходимый строительный материал, и вероятно сделать ее более безопасной, чем
сейчас.

Единственной целью технологии Intel TXT является предоставление безопасного
способа загрузки и выполнения системного программного обеспечения, например ядра
операционной системы или Монитора виртуальных машин (Virtualization Machine
Monitor, VMM)
. Достигается это путем проведения и хранения программных
вычислений в определенных регистрах TPM. Самое выдающееся во всем этом – то, что
TXT не делает никаких предположений о состоянии системы перед загрузкой
программного обеспечения, позволяя таким образом пользователю обеспечить
безопасную загрузку операционной системы или VMM даже на потенциально
скомпрометированной машине.

Другими словами, загрузочный сектор жесткого диска может быть полон вирусов,
а BIOS – руткитов, и все равно TXT должен будет позволить безопасно загрузить
чистый VMM (или ядро ОС), обеспечивая им иммунитет от всех вредоносных
приложений, имеющихся в системе. Этот поддерживаемый TXT процесс загрузки
называется Late Launch (поздний запуск), а обрабатывается он через специальную
новую инструкцию ЦП под названием SENTER.

Здесь мы должны обратить внимание на то, что TXT не предназначена для защиты
рабочего цикла программы (например, от переполнения буфера в коде гипервизора).
Она рассчитана только на то, чтобы обеспечить защиту на время загрузки,
обеспечивая, таким образом, нашу уверенность в том, что код, который мы
загружаем, в момент загрузки является тем самым кодом, который мы и намеревались
загрузить.

Также стоит отметить, что у AMD имеется свой собственный вариант Late Launch,
реализуемый через процессорную инструкцию SKINIT. Глубоким изучением технологии
от AMD мы пока не занимались, поэтому от комментариев на ее счет в дальнейшем
предпочтем воздержаться.

Когда начинаешь думать о Late Launch, он представляется просто восхитительной
технологией, обещающей обеспечить все преимущества перезагрузки компьютера без
самой перезагрузки.

Трудно переоценить то влияние, которое технологии, подобные TXT, могли бы
оказать на компьютерную безопасность. Например, очевидной является возможность
использования TXT для того, чтобы избавляться от устойчивых вредоносных программ
системного уровня. То есть при ее помощи легко можно создавать системы (VMM или
даже стандартные ОС), которые были бы неуязвимы к атакам, пытающимся
скомпрометировать двоичный системный код на диске или угрожать машине напрямую,
через BIOS или загрузчик. А если добавить к ней технологии виртуализации в
процессорах (VT-x) и виртуализации ввода-вывода (VT-d), то получится, что в
распоряжении разработчиков систем оказались мощнейшие инструменты для создания
по-настоящему безопасных ОС и VMM…

Что же, теперь самое время поведать о том, как мы атаковали эту замечательную
технологию.

2. Атака на Intel TXT

Ключевая особенность TXT, поздний запуск, зачастую описывается как способ
загрузки и выполнения части доверенного кода (обычно VMM) вне зависимости от
состояния системы на момент, предшествующий такой загрузке. Это, однако, не
совсем верно. На самом деле, определяются системные программы, которым следует
доверять по умолчанию. Они работают в режиме системного управления (System
Management Mode, SMM), который мы более подробно обсудим в следующем разделе (на
нашем сайте о таком режиме вы можете прочитать в цикле статей «SMM
и SMRAM или 128 Кб потусторонней памяти: исследовательская работа»).

Будучи самым привилегированным типом ПО, которое обрабатывается на
процессоре, SMM может обходить предписанные процедурой позднего запуска меры
защиты на вновь загруженном VMM. К сожалению, как мы дальше продемонстрируем,
допущение о том, что программам, работающим в режиме SMM, всегда можно доверять,
не является верным.

Предполагаемая двухступенчатая атака на поздний запуск в TXT будет выглядеть
так:

Мы разработали образец кода, демонстрирующий описанную выше схему атаки
против гипервизора Xen, загруженного при помощи Tboot, открытого загрузчика от
Intel, обеспечивающего загрузку Linux и Xen со всеми преимуществами позднего
запуска Intel TXT. Tboot также является частью открытого и широко
распространенного гипервизора Xen

В нормальных условиях Tboot должен удостовериться, что загружается правильный
(не модифицированный) гипервизор Xen и только затем загружать в регистры TPM
корректные параметры. На практике это означает, что только избранные
(доверенные) версии гипервизора Xen получат доступ к определенным секретам,
зашитым в TPM, и/или будут способны пройти аутентификацию для какой-либо машины
(например, ноутбука системного администратора), осуществляемую через специальную
функцию TPM под названием Remote Attestation (удаленное подтверждение).

Нашей атакой мы показываем, что заразив обработчик SMM, мы можем
модифицировать только что загруженный (и только что просчитанный) VMM. Иными
словами, атака позволяет полностью обойти все меры обеспечения безопасности,
предусмотренные TXT для процедуры доверенной загрузки. Это – прямое следствие
того, что код SMM при поздней загрузке остается в неизменном виде – не важно,
был он до этого скомпрометирован или нет.

Детали того, как атаковать обработчик SMM, мы приведем в следующем разделе.

Предлагаемое Intel лекарство от вредоносного обработчика SMM называется STM,
что расшифровывается как SMM Transfer Monitor (монитор передачи SMM).
Цель STM заключается в том, чтобы изолировать существующий обработчик SMM при
помощи технологий виртуализации VT-x и VT-d. Он должен рассматриваться как
гипервизор для VMM, который загружается во время процедуры поздней загрузки.
Просчитывается STM также в процессе поздней загрузки.

К сожалению, на данный момент STM недоступен. Мы обсудим это более подробно в
последнем разделе нашего исследования.

Источник

Боремся с дистанционным контролем: как отключить Intel ME

интел трастед коннект сервис клиент что это. интел трастед коннект сервис клиент что это фото. картинка интел трастед коннект сервис клиент что это. смотреть фото интел трастед коннект сервис клиент что это. смотреть картинку интел трастед коннект сервис клиент что это.

Технология Intel ME (или AMT, Active Management Technology) является одним из самых загадочных и мощных элементов современных x86-платформ. Инструмент изначально создавался в качестве решения для удаленного администрирования. Однако он обладает столь мощной функциональностью и настолько неподконтролен пользователям Intel-based устройств, что многие из них хотели бы отключить эту технологию, что сделать не так-то просто.

На прошедшем 17 и 18 мая в Москве форуме Positive Hack Days VI исследователи Positive Technologies Максим Горячий и Марк Ермолов представили несколько техник отключения Intel ME, сопроводив доклад видеодемонстрацией процесса.

Что это, и зачем нужно отключать

Подсистема Intel Management Engine (ME) представляет собой дополнительный «скрытый» процессор, который присутствует во всех устройствах на базе чипсетов Intel (не только в PC и ноутбуках, но и в серверах). Среда исполнения ME никогда не «спит» и работает даже при выключенном компьютере (при наличии дежурного напряжения), а также имеет доступ к оперативной памяти, сетевому интерфейсу, USB контроллеру и встроенному графическому адаптеру.

Несмотря на столь обширные возможности, существуют вопросы к уровню защищенности ME — ранее исследователи уже находили серьезные уязвимости и векторы атак. Кроме того, подсистема содержит потенциально опасные функции — удаленное управление, NFC, скрытый сервисный раздел (hidden service partition). Интерфейсы подсистемы ME недокументированы, а реализация закрыта.

Все эти причины приводят к тому, что многие рассматривают технологию ME в качестве «аппаратной закладки». Ситуацию усугубляет тот факт, что с одной стороны у пользователя устройства нет возможностей по отключению этой функциональности, а с другой производитель оборудования может допустить ошибки в конфигурации МЕ.

Хорошая новость заключается в том, что способы отключения ME все же существуют.

Техники отключения Intel ME

Исследователи компании Positive Technologies Максим Горячий и Марк Ермолов в ходе состоявшегося в Москве форума Positive Hack Days VI представили доклад, посвященный отключению Intel ME. Специалисты описали несколько техник отключения данной подсистемы:

Большинство методов отключения используют встроенные механизмы ME, разработанные для вендоров устройств на платформе Intel. Все они подробно описаны в презентации, которая опубликована на GitHub. По ссылке представлено демонстрационное видео отключения ME (оно же ниже):

И тем не менее, возникает резонный вопрос: «Действительно ли ME перестает работать в полном объеме при использовании ее встроенных механизмов отключения?» В качестве доказательства факта отключения МЕ исследователи приводят следующий аргумент: ME работает в двух режимах использования памяти: только SRAM (встроенный в ME) и SRAM + UMA. UMA — это часть памяти хоста, которая используется как подкачиваемая память (swap). После инициализации DRAM-контроллера хостом ME всегда переключается в режим SRAM + UMA.

Таким образом, если ME действительно выключена, то при отключении на аппаратном уровне доступа МЕ к UMA-памяти в произвольный момент (посредствам канала VСm), в МЕ не будет происходить аппаратных сбоев, связанных с отсутствием данных и кода, которые были вытеснены в UMA память (такие аппаратные сбои приводят к аварийному отключению питания с основных аппаратных компонентов платформы). С другой стороны применение этих методов позволяет осуществить DoS-атаки на технологию AMT в случае ее применения для удаленного управления.

Источник

СОДЕРЖАНИЕ

Подробности

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

Измерения

Цепочка доверия

Измерения модулей кода ACM и BIOS расширены до PCR0, который, как говорят, содержит статический корень измерения доверия (CRTM), а также измерения доверенной вычислительной базы BIOS (TCB). BIOS измеряет дополнительные компоненты в PCR следующим образом:

Динамическая цепочка доверия начинается, когда операционная система вызывает специальную инструкцию безопасности, которая сбрасывает динамические PCR (PCR17–22) до значений по умолчанию и запускает измеряемый запуск. Первое динамическое измерение выполняется аппаратными средствами (то есть процессором) для измерения другого модуля с цифровой подписью (называемого SINIT ACM), который также предоставляется производителем набора микросхем и чья подпись и целостность проверяются процессором. Это называется динамическим корнем измерения доверия (DRTM).

Целостность LCP и ее списки заведомо исправных измерений защищены путем хранения хеш-измерения политики в TPM в защищенном энергонезависимом месте, которое может быть изменено только владельцем платформы.

Выполнить как надежная ОС

Как только LCP удовлетворяется, SINIT ACM позволяет MLE работать в качестве доверенной ОС, разрешая доступ к специальным регистрам безопасности и разрешая доступ TPM Locality 2 на уровне 2. Теперь MLE может выполнять дополнительные измерения динамических PCR. Динамические ПЦР содержат измерения:

Заявление

Значения ПЦР доступны как локально, так и удаленно. Кроме того, TPM имеет возможность поставить цифровую подпись для значений PCR (т. Е. Котировки PCR), чтобы любой объект мог проверить, что измерения исходят от TPM и защищены им, что позволяет удаленной аттестации обнаруживать фальсификацию, повреждение и т. Д. и вредоносное ПО. Кроме того, эти значения можно использовать для определения среды выполнения (конкретная версия BIOS, уровень ОС, конфигурация и т. Д.) И сравнения их с собственными списками заведомо исправных значений для дальнейшей категоризации платформы. Эта возможность оценивать и назначать уровни доверия платформам известна как Trusted Compute Pools.

Некоторые примеры использования доверенных вычислительных пулов:

Источник

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.

В случае, если никаких ошибок не последовало, а перед экраном на консоли вы увидели следующие строки:

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *