id: Гость   вход   регистрация
текущее время 01:36 24/04/2024
Автор темы: ntldr, тема открыта 11/06/2008 21:51 Печать
Категории: инфобезопасность, антивирусная защита
https://www.pgpru.com/Форум/ПрактическаяБезопасность/КонцепцияБезопаснойЗагрузки
создать
просмотр
ссылки

Концепция безопасной загрузки


Наверняка вы читали про Trusted Computing (TCPA, Palladium). Вкратце, это концептуальная система безопасной обработки информации, в которой может выполняться только довереный код. Для этого предлагается контролировать загрузку и работу ОС на всех уровнях, начиная с аппаратного контроля кода BIOS. Все это преподноситься как панацея от вредоносного ПО, но к сожалению панацеей это не является по причине того, что в архитектуре системы заложено постулируемое доверие к поставщикам "правильного" софта (а конкретно Microsoft), которые имеют право решать, какой софт вы можете использовать на своем компьютере, а какой нет.
Все это преимущественно будет использовано для создания всяких гнусных вещей, вроде DRM, и совершенно не защищает пользователя от вредоносных программ всем известной корпорации.


Я хочу предложить вам весьма похожую концепцию контроля за загружаемым кодом, в которой только владелец компьютера, и никто иной, имеет право решать, какому софту он доверяет.
Моя концепция состоит в верификации любого исполняемого кода по базе довереного софта, в идеале не должно быть никакой возможности выполнить недовереный код. Для этого необходима верификация всего загрузочного кода в процессе загрузки ос, и верификация кода драйверов и программ запускаемых после загрузки ос.
Основной частью системы верификации будет дополнительный модуль (optional rom) прошиваемый в BIOS и изменяющий процесс загрузки компьютера. Этот модуль содержит в себе открытый ключ, механизм загрузки каталогов довереного кода и механизм проверки кода по загруженым каталогам.
Каталог представляет из себя блок данных содержащий отсортированый список хэшей довереного кода и подписаный секретным ключем, открытая часть которого прошита в BIOS. Модуль безопасности BIOS ищет в конце диска загрузочную область, в которую прописан начальный загрузочный модуль и каталог довереного кода. Загрузочный код проверяется по каталогу, загружается в память, и ему передается управление. Начальный загрузчик грузит ядро и драйвера ранней стадии загрузки, и проверяет их код используя интерфейс предоставляемый BIOS, после чего в действие вступает драйвер проверяющий код всех запускаемых процессов и загружаемых драйверов.


При установке этой системы мы генерируем ключ, создаем каталог довереного кода и подписываем его своим ключем, после чего ключ внедряется в модуль безопасности который прошивается в BIOS. После этого отпиливаем от микросхемы BIOS ножку разрещающую запись, и заливаем чип эпоксидкой. Теперь вы обладаете полным контролем над вашим компьютером, и без вашего ведома на нем нельзя выполнить код.


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


 
На страницу: 1, 2 След.
Комментарии
— SATtva (03/05/2009 17:52)   профиль/связь   <#>
комментариев: 11558   документов: 1036   редакций: 4118
Одно дело, когда ключ в модуль TPM вшит непонятно кем и непонятно почему вы ему должны доверять. И другое, когда вы всё это делаете сами (уж себе-то доверять, наверное, можете?).
На страницу: 1, 2 След.
Ваша оценка документа [показать результаты]
-3-2-1 0+1+2+3