Общие сведения о таблице устранения рисков системы безопасности Windows (WSMT)
Таблица устранения рисков безопасности Windows (WSMT) — это таблица ACPI, определяемая корпорацией Майкрософт, которая позволяет встроенному ПО системы подтвердить операционной системе, что в программном обеспечении режима управления системой (СТИМ) реализованы определенные рекомендации по обеспечению безопасности. Определение таблицы WSMT описано в спецификации windows SMM Security Mitigations Table (WMST).
Историческая справка
WSMT был определен для лучшей поддержки функций безопасности на основе виртуализации Windows. Дополнительные сведения о VBS см. в статье Безопасность на основе виртуализации (VBS). Так как ФУНКЦИЯ ДИСПА работает без ведома операционной системы или управления ими, ФУНКЦИЯ ДИСПА представляет собой значительную область атак, которую вредоносный код может использовать для компрометации или обхода средств защиты ОС, включенных через VBS. Для создания надежной и безопасной платформы VBS требуется тщательное изучение и вероятное обновление кода ДИСМИ от изготовителя оборудования для устранения распространенных уязвимостей, которые могут быть использованы. WSMT содержит флаги, которые можно задать встроенному ПО, чтобы указать операционной системе, какие из этих рекомендаций по обеспечению безопасности были реализованы.
Влияние WSMT на поддержку Windows VBS
Поле WSMT Protection Flags (Флаги защиты WSMT) указывает на наличие этих конкретных мер по устранению рисков безопасности в встроенном ПО системы. Поддерживаемые версии операционной системы Windows считывают флаги защиты WSMT на раннем этапе во время инициализации, перед запуском гипервизора и VBS, и могут включать, отключать или отменять определенные функции безопасности в зависимости от наличия этих флагов защиты ОТМО.
Примечания по реализации
Правильная реализация мер безопасности, представленных флагами защиты WSMT FIXED_COMM_BUFFERS и COMM_BUFFER_NESTED_PTR_PROTECTION, потребует от поставщика встроенного ПО тщательной оценки и, возможно, перепроектировки обработчиков прерываний управления системой (SMI). Все обработчики SMI должны быть ограничены доступом (чтение или запись) только к допустимым областям памяти, которые содержат память, выделенную MMIO и EFI. Недостаточно проверка, что указатели в СММ не ссылаться на память полностью за пределами СМВМ. Скорее, все указатели МИССИИ должны быть проверены на то, чтобы они были в пределах этих безопасных областей памяти. Это позволяет предотвратить использование СРЕДСТВ миссии в атаке "путать депутата", которая затем может быть использована для компрометации функций Windows VBS. Упомянутые выше флаги защиты относятся только к проверке входных данных и проверкам указателей и в настоящее время не требуют принудительного применения с помощью защиты страницы ПАРАМЕТРОВ. Например, ФУНКЦИЯ СМЕ не должна считывать или записывать данные в память, описанную встроенной программой как EfiConventionalMemory, так как она может содержать секреты или вызывать непредсказуемое поведение программного обеспечения.
Проверка защиты WSMT
Так как СРЕДСТВО УПРАВЛЕНИЯ является непрозрачным для операционной системы, невозможно создать тест, который выполняется в Windows, чтобы убедиться, что средства защиты, предписанные в спецификации WSMT, фактически реализованы в СИСТЕМЕ БЕЗОПАСНОСТИ. В операционной системе единственным возможным проверка является поиск наличия WSMT и проверка состояние всех определенных флагов защиты.
Таким образом, изготовитель оборудования должен тщательно изучить код КАЖДОй системы и убедиться, что встроенное ПО соответствует рекомендациям, изложенным в спецификации WSMT и этой статье. Флаг защиты не должен иметь значение true, пока изготовитель оборудования не подтвердит, что меры по устранению рисков, соответствующие каждому значению флага защиты, были правильно реализованы. Если не придерживаться этой рекомендации, платформа будет уязвима для компрометации и свести на нет эффективность нескольких средств защиты ОС и функций безопасности Windows, которые используют VBS для поддержания надежных границ безопасности.
Поддерживаемые версии Windows
Поддержка WSMT включена в следующие версии Windows:
- Windows Server Technical Preview 2016 г.
- Windows 10, версия 1607
- Windows 10 версии 1703
- Windows 10 версии 1709