Все начальные загрузчики операционных систем обращаются к базовой системе ввода-вывода (BIOS) с тем, чтобы провести первоначальную инициализацию установленного оборудования и контрольное тестирование его работоспособности, а также получить сведения о том, каким образом выполнять дальнейшую загрузку ОС. Поскольку BIOS — это самый нижний уровень ПО, предназначенного для конфигурирования и управления оборудованием ПК, в нем содержится код для взаимодействия со средствами ввода-вывода, дисковыми накопителями, коммуникационными портами и другими устройствами, что с точки зрения информационной безопасности можно рассматривать как серьезную уязвимость системы. С другой стороны, BIOS можно использовать и как инструмент предотвращения несанкционированного перезапуска компьютера и перехвата управления ОС — многие разновидности BIOS для ПК позволяют установить стартовый пароль. Впрочем, такая защита не предоставляет серьезных гарантий безопасности — пароль, как известно, можно подобрать или украсть. Однако при всех своих недостатках даже такой примитивный подход может быть неплохим сдерживающим фактором — сам процесс как минимум отнимет некоторое время у злоумышленника и оставит следы взлома. Многие разновидности BIOS для стандартной платформы x86 реализуют различные дополнительные меры безопасности, в частности, запрет загрузки с дискеты или назначение пароля некоторым пунктам BIOS.
Обычно базовая система ввода-вывода находится в микросхеме ПЗУ, размещенной на системной плате ПК, что делает BIOS доступным в любое время, даже в случае повреждения дисковой системы компьютера. Кроме того, такая организация BIOS позволяет компьютеру самостоятельно загружаться. Сегодня почти все системные платы комплектуются ПЗУ с прошитым в них BIOS, который в любой момент можно перезаписать при помощи специальной программы. С точки зрения защиты информации отсутствие исходных текстов программного кода BIOS делает его «черным ящиком», который не обеспечивает прозрачность загрузки защищаемого ПК. Учитывая все это, можно сказать, что BIOS выступает одним из ключевых элементов в создании надежно защищенного ПК, однако типовые массовые решения, широко представленные на рынке, не позволяют заказчикам обеспечить должный уровень безопасности информации.
Технология доверительной загрузки призвана решить эту проблему путем запуска ОС только после проведения ряда контрольных процедур: авторизации пользователя для разграничения прав на модификацию системы; проверки целостности технических и программных средств защищаемого компьютера, в том числе исполняемых файлов и файлов настроек безопасности; предотвращения загрузки ОС с внешних устройств посредством их физического отключения до завершения процедур авторизации и контроля. Как предполагается, данная процедура будет гарантировать, что проведена санкционированная загрузка ОС и компьютер работает в штатном защищенном режиме.
Таким образом, вполне очевидно, что в настоящее время существует острая необходимость в продукте, обеспечивающем доверительную загрузку ОС. Аппаратная реализация такого решения требует больших финансовых и временных затрат, поэтому актуальной представляется задача разработки программного средства доверительной загрузки ОС, которое сможет служить функциональной заменой “стандартной” базовой системы ввода-вывода (BIOS).
Решая данную задачу, компания НТЦ КАМИ (http://www.kami.ru) разработала программное средство доверенной загрузки «КАМИ BIOS», способное заменить систему BIOS для 32-разрядной процессорной архитектуры х86, которое может применяться в качестве базы для построения защищенных систем. Система «КАМИ BIOS» обеспечивает низкоуровневую инициализацию аппаратных средств компьютера (аналогично функциям BIOS) и последующий процесс загрузки ОС; при этом она устанавливается вместо программного кода BIOS, поставляемого с системной платой, и не требует никаких дополнительных аппаратных средств.
При создании системы «КАМИ BIOS» разработчики придали ей модульную структуру, чтобы обеспечить различные варианты загрузки и поддержку различных аппаратных платформ и ОС. Функциональность нового решения находится на уровне отраслевых стандартов — ПО «КАМИ BIOS» заменяет стандартный BIOS и обеспечивает все функции начальной загрузки ПК. Особое внимание было уделено защищенности, для чего в системе реализован контроль целостности исходного кода и предусмотрена невозможность обхода загрузки. Кроме того, система «КАМИ BIOS» полностью прозрачна для заказчиков, так как ее исходные тексты могут быть сертифицированы в ведомственных системах сертификации.
На сегодняшний день данная технология доверительной загрузки применяется НТЦ КАМИ совместно с решениями КАМИ—Terminal при построении терминальных станций на аппаратной платформе компании VIA.
К основным достоинствам системы «КАМИ BIOS» можно отнести простоту реализации — программный код прошивается в микросхему BIOS, прозрачность программного кода — возможна сертификация исходных текстов программы, невозможность обхода загрузки — без стандартного BIOS любая компьютерная система просто не загрузится, возможность встраивания дополнительных механизмов защиты — проведения контрольных процедур до загрузки ОС.
В процессе разработки системы «КАМИ BIOS» был использован опыт ряда проектов open source. На данной стадии разработки обеспечивается загрузка ОС класса Unix (Linux и МСВС) с поддержкой ограниченного количества наборов системной логики. В перспективе — разработка системы «КАМИ BIOS», обеспечивающей доверительную загрузку Microsoft Windows 2000 и Windows XP. Одновременно планируется расширить перечень поддерживаемых аппаратных платформ, включив в него системы на базе процессоров Intel, AMD и VIA.
В настоящее время продукт «КАМИ BIOS» готовится к сертификации в системах сертификации ФСТЭК и Минобороны России.