Спонсор: Microsoft
Опубликован: 25.06.2010 | Уровень: специалист | Доступ: платный
Лекция 12:

Безопасная вычислительная база нового поколения

Аннотация: Рассматривается круг вопросов, связанных с концепцией "безопасных вычислений" и ее реализацией в продуктах Microsoft
Ключевые слова: доверенность, TCG, TPM, Windows Vista, интерпретация, шифрование, BitLocker, ПО, generation, security, computation, web-based, управление доступом, персональный компьютер, сочетания, аппаратные средства, программное обеспечение, механизмы, аутентификация, Windows Server, trusted computing, открытый стандарт, advanced, micro, device-specific, IBM, intel, SUN Microsystems, группа, trust, platform-specific, MODULE, software, компонент, микроконтроллер, ключ шифрования, уязвимость, переполнение буфера, buffer overflow, криптографический ключ, wrapping, Bind, ключ, секретный ключ, storage, инициализация, шифр, права, запечатывание, расшифрование, запечатанный, блокировка, компьютер, мониторинг, целостность, состояние системы, метрика, логит, целостная система, configuration register, PCR, identical, RSA, надежность, доступ к данным, measurement, RTM, RTS, Report, процессор, core, инструкция, build, block, материнская плата, связь, BIOS, драйвер, механизм безопасности, интегрированность, аппаратное обеспечение, интерфейс, контроль, очередь, загрузочный сектор, NTFS, запоминающее устройство, USB, алгоритм, бит, поиск, информация, защита данных, определение, метаданные, Личность, право доступа, пользователь, доступ, protected, capability, integrator, monitoring
Презентацию к лекции Вы можете скачать здесь.

Цель лекции

  • Ознакомиться со спецификациями доверенной платформы, разработанными TCG
  • Рассмотреть круг задач, на решение которых ориентирован TPM
  • Изучить принципы работы TPM
  • Рассмотреть архитектуру Windows Vista TPM
  • Сравнить процесс загрузки доверенной платформы:
    • согласно спецификации TCG
    • в интерпретации Microsoft
  • Изучить возможности средства шифрования диска Windows BitLocker

Текст лекции

Сложность, разнородность и скорость изменения современных открытых систем противоречит принципам проектирования защищенных систем. Инициатива Microsoft по созданию "Безопасной вычислительной базы нового поколения" ( Next-Generation Secure Computing Base - NGSCB ) [16.1] нацелена на разработку платформы, обеспечивающей надежное управление доступом и при этом сохраняющей открытость персональных компьютеров. Microsoft объявила о разработке NGSCB в 2002 году. Этот набор технологий, известный ранее под кодовым названием Palladium, подразумевает использование сочетания программных и аппаратных средств, которое должно существенно повысить уровень защищенности ПК. По замыслу авторов проекта, на открытой платформе NGSCB может работать любое программное обеспечение, но необходимы механизмы, которые позволили бы защитить друг от друга операционные системы и приложения, выполняемые на одной и той же машине. Достичь этого можно путем изоляции операционной системы от других процессов и реализации аппаратной и программной поддержки секретности и аутентификации по отношению к локальным и удаленным объектам. Проект NGSCB еще не был реализован в полной мере, не встретив поддержки со стороны корпоративных пользователей и производителей программного обеспечения: необходимым условием применения новых средств защиты было изменение кода существующих систем. Тем не менее, ряд идей, лежащих в основе NGSCB, были реализованы в Windows Vista и Windows Server 2008 и заложили основу для дальнейшего развития проекта доверенной открытой платформы.

Windows Vista TPM

Платформа NGSCB разрабатывалась в соответствии с новыми требованиями в области безопасности, установленными группой Trusted Computing Group ( TCG ) [16.4]. TCG была сформирована в 2003 г. с целью разработки и продвижения открытых стандартов на "доверенные вычисления" ( trusted computing ). В число компаний-основателей входят Advanced Micro Devices, Hewlett-Packard, IBM, Infineon, Intel, Lenovo, Microsoft и Sun Microsystems ; в настоящий момент группа насчитывает 135 участников. Основным результатом работы группы на данный момент является спецификация Trusted Platform Module ( TPM ) [16.3] и связанный с ним документ Trusted Computing Group Software Specification ( TSS ) [16.2]. Под TPM мы будем понимать не только абстрактную концепцию, но и аппаратный компонент "доверенной вычислительной платформы". TSS - спецификация программного интефейса ( API ), который должны использовать разработчики для взаимодействия с TPM. "Доверенная вычислительная платформа" - это платформа, которая должна обеспечивать пользователя более высоким уровнем защиты по сравнению с традиционным персональным компьютером. Текущая версия спецификации TPM на момент написания данного курса лекций - 1.2. Эта версия спецификации TPM была опубликована в октябре 2003 г. и с тех пор претерпела ряд изменений. Windows Vista поддерживает только TPM -устройства, совместимые с версией 1.2.

Trusted Platform Module ( TPM ) - микроконтроллер, который предлагает средства для безопасного создания и хранения ключей шифрования. Важно отметить, что микросхема ТРМ имеет встроенную защиту от подделки. TCG рассматривает TPM как основу для построения доверенной вычислительной платформы. Специализированная микросхема TPM, предназначенная для создания мастер-ключа шифрования, который может быть в дальнейшем использован для шифрования других ключей, сгенерированных на уровне пользователя, позволяет обеспечить дополнительную защиту ключей, не полагаясь только на программное обеспечение, которое подвержено уязвимостям (например, ошибкам типа "переполнение буфера" - buffer overflow).

TPM позволяет создавать криптографические ключи и зашифровывать их таким образом, что они могут быть расшифрованы только тем же самым модулем TPM. Данный процесс, называемый " сокрытием " (wrapping) ключа или " привязкой " ("binding") ключа, помогает защитить ключ от раскрытия. В каждом модуле TPM хранится секретный ключ, называемый ключом корневого хранилища ( Storage Root Key, SRK ), который создается при инициализации модуля и никогда не станет доступен любому другому компоненту системы, программному обеспечению, процессу или пользователю. Ключ SRK используется для защиты ключей, которыми шифруются данные в на диске. При очистке модуля SRK стирается, что приводит к отмене права владения модулем TPM и отключению модуля TPM.

" Запечатывание " ( sealing ) ключа в модуле TPM позволяет создавать ключи, которые будут не только зашифрованы, но и привязаны к определенной системной конфигурации. Такой тип ключа может быть расшифрован только в том случае, если характеристика платформы, на которой его пытаются расшифровать, совпадает с той, на которой этот ключ создавался. При использовании "запечатанного" ключа и BitLocker (см. секцию "Средство шифрования диска Windows BitLocker ") можно обеспечить блокировку данных до тех пор, пока они не будут перенесены на компьютер с подходящей аппаратной или программной конфигурацией.

Согласно концепции TCG, доверенная вычислительная платформа должна обладать следующими возможностями:

  • Защищенные функции (Protected capabilities);
  • Мониторинг целостности (Integrity monitoring);
  • Хранение показателей целостности (Integrity storage);
  • Оповещение о целостности (Integrity reporting).

Защищенные функции - набор команд, которые могут применяться для доступа к секретным данным, размещенным в защищенных хранилищах. Мониторинг целостности - это набор данных о состоянии системы и метрик, позволяющих отражающих состояние защищенности системы: например, должна быть возможность определить, подвергались ли данные несанкционированному доступу. Метрики могут храниться в логах, но хеш-значения состояния целостности системы, полученные при помощи алгоритма с помощью алгоритма SHA1, записываются в регистры конфигурации платформы ( platform configuration registers, PCR ), которые представляют собой перезаписываемые или неперезаписываемые ячейки памяти самого TPM. Назначение функции оповещения о целостности очевидно из названия.

Аттестация ("attestation") позволяет с использованием специальных 2048-битных ключевых пар ( Attestation Identity Key, AIK ), хранимых в TPM, подписывать при помощи алгоритма RSA сведения о параметрах и конфигурации платформы и на основании этих данных проверять надежность системы. Существует 4 типа аутентификации [16.5]:

  • TPM использует ключ AIK, чтобы подписать некие данные, хранимые внутри самого модуля, подтверждая, что он активен и может проверить сам себя;
  • TPM использует ключ AIK, чтобы подписать данные в регистрах PCR, что позволяет оповещать 3-ю сторону о целостности системы ("удаленная аттестация");
  • Платформа подтверждает свою идентичность, предоставляя данные, которые использовались при создании ключа AIK ;
  • Платформа использует непереносимые ключи, хранимые в TPM, для аутентификации устройства (например, с целью проверить, что система, осуществляющая доступ к данным, обладает соответствующими правами).

" Корни доверия " ( roots of trust ) - это заслуживающие доверия компоненты системы, которые позволяли бы верифицировать состояние других частей системы. Обычно различают 3 корня доверия:

  • Корень доверия для измерения ( Root of trust for measurement, RTM );
  • Корень доверия для хранения ( Root of trust for storage, RTS );
  • Корень доверия для оповещения ( Root of trust for reporting, RTR ).

RTM, как правило, представляет собой процессор, работающий под контролем центрального корня доверия для измерения ( Core root of trust for measurement, CRTM ), где CRTM - это набор инструкций, выполняемых вычислительной машиной при осуществлении измерений.

Важнейшее понятие доверенной платформы - " доверенный строительный блок " ( Trusted Building Block, TBB ), который включает 2 компонента - CRTM и TPM. Оба эти компонента физически расположены на материнской плате и не должны заменяться.

На рис.16.1 показана связь TBB и BIOS с архитектурой Windows Vista. Во-первых, важно отметить, что TSS располагается на более высоком уровне, чем драйвер TPM и базовые службы TPM (TPM Base Services, TBS). Драйвер TPM предоставляется производителем TPM, TBS является компонентом Windows Vista, а TSS представляет собой реализацию одноименной спецификации, разработанной группой TCG. Таким образом, TCG определила спецификации для трех компонентов доверенной платформы, расположенных на разных уровнях.

Необходимо отметить несколько аспектов, специфичных для архитектуры Windows Vista TPM. В отличие от обычных драйверов, драйвер TPM необходим еще до загрузки операционной системы, использующей механизм безопасной загрузки: поэтому он интегрирован в код BIOS. Кроме того, Microsoft в качестве посредника между высокоуровневыми приложениями и драйвером TPM (по сути - аппаратным обеспечением TPM ) предлагает использовать TBS. TSS предоставляет приложениям третьих фирм стандартный API -интерфейс для взаимодействия с TPM. Интересные данные по тестированию TPM и служб TPM в Windows Vista приводятся в [16.6].

Архитектура Windows Vista TPM

Рис. 16.1. Архитектура Windows Vista TPM
Евгений Виноградов
Евгений Виноградов

Прошел экстерном экзамен по курсу перепордготовки "Информационная безопасность". Хочу получить диплом, но не вижу где оплатить? Ну и соответственно , как с получением бумажного документа?

Илья Сидоркин
Илья Сидоркин

Добрый день! Подскажите пожалуйста как и когда получить диплом, после сдичи и оплаты?????

Денис Овчинников
Денис Овчинников
Россия
Павел Артамонов
Павел Артамонов
Россия, Москва, Московский университет связи и информатики, 2016