Safeboot vipnet как войти администратором
Перейти к содержимому

Safeboot vipnet как войти администратором

  • автор:

Работа с vipnet safeboot

Резервируем возможность загрузки (делать сразу перед вводом в эксплуатацию).

Ищем раздел UEFI где лежит загрузчик. Обычно это небольшой раздел, с файловой системой vfat
Используем команду lsblk без параметров для просмотра размеров

lsblk

И с параметром -f для вывода типов файловых систем

lsblk -f

Получаем вывод для последней команды, примерно такого вида

NAME FSTYPE LABEL UUID MOUNTPOINT sda ├─sda1 ext2 c577f84d-3adc-438d-b702-154d8b21e95b /boot ├─sda2 vfat BB77-2128 └─sda3 LVM2_member 1uETbd-l2ko-U3th-ci3w-oIuN-wqwb-VHmHRV ├─vg0-root ext4 ed2eb7e9-3a40-47e6-9dfb-0f71efaa2b83 / └─vg0-swap swap e59a91f4-517e-494e-9b45-16e8c3c6b2c3 [SWAP]

Искомый раздел у нас будет sda2, это vfat раздел с небольшим размером

Примонтируем его на время куда-нибудь, например к папке /mnt
(далее следует работать от root, поэтому аккуратно)

mount /dev/sda2 /mnt

Посмотрев содержимое /mnt видим, что там всего одна директория EFI, а внутри нее папка Infotecs Вот эту папочку со всем ее содержимым и нужно сохранить куда-нибудь. Можно и целиком EFI

mkdir /root/bakefi cp -R /mnt/EFI /root/bakefi

Затем отмонтируем раздел EFI

umount /mnt

Резервную копию сохраняем на наше усмотрение, любым удобным способом.

Инструкция №1, полученная из админского чата

Ребят, работаю в еще одной организации медицинской, тоже столкнулся с сейфбутом. Тех поддержка прислала следующую подробную инструкцию. Может быть её куда то в материалы беседы кинуть, или в закреп?

Добрый день.
В случае возникновения ошибки «Рабочая директория VipNet Safeboot не найдена или повреждена…» необходимо выполнить следующие действия:
Отключить ПМДЗ VipNet Safeboot с целью входа в ОС:
Перед включением ПК физически извлеките SSD;
Подключите ранее созданный диск восстановления к USB порту и перезапустите ПК;
Если диск восстановления для конкретного ПВЭМ ранее не был штатно подготовлен согласно руководству системного администратора ПМДЗ «ViPNet SafeBoot», то в качестве диска восстановления будет использоваться дистрибутив ПМДЗ, который содержит в составе файл itrecovery.bin, используемый по умолчанию для стандартных учетных данных: Подготовьте USB-накопитель, предварительно отформатировав его в файловую систему формата FAT32 и распакуйте содержимое установочного архива в корневой каталог USB-накопителя;

Для временной деактивации ПМДЗ нажмите RIGHT CTRL + X ;
Далее нажмите Q до появления командной строки;
Введите команду map и проверьте, определяется ли USB-накопитель;
Обращаем Ваше внимание, что для корректного завершения процедуры к устройству должен быть подключен только один USB-накопитель, который будет определяться как «fs0:»;

Последовательно введите следующие команды:

> «fs0:» > «cd itinstall» > «cd tools» > «productmanager.efi -m disabled»

Выключите ПК и подключите SSD.
После отключения ПМДЗ необходимо проверить, отображается ли системный диск на портах SATA.
Для этого проверьте информацию на вкладке меню BIOS:

Chipset > PCH-IO Configuration > SATA And RST Configuration

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

Далее необходимо проверить не происходит ли дублирование файлов VipNet Safeboot:
Зайдите в терминал с правами администратора;
Запустите MC (Midnight Commander);
Если в папке /boot/efi/EFI/infotecs по пути /EFI/infotecs происходит дублирование папки, ее необходимо удалить;
Перезагрузите устройство и активируйте ViPNet SafeBoot с помощью команд:

> «fs0:» > «cd itinstall» > «cd tools» > «productmanager.efi -m main»

Если SSD корректно определяется, дублирование файлов не происходит, но проблема сохраняется, рекомендуем удалить ПМДЗ VipNet Safeboot и установить его заново, согласно руководству по установке. Обращаем Ваше внимание, что при выполнении данных рекомендаций, необходимо будет повторно активировать лицензию на ПМДЗ VipNet SafeBoot (информация об активации содержится в руководстве администратора на стр. 20)

Инструкция №2, полученная из админского чата

Упс…такого не было еще кажется. Попробуй вот:
«…его необходимо записать на флешке, отформатированную в формате Fat32. Подключите к компьютеру. Во время запуска АРМ необходимо несколько раз нажимать сочетание клавиш (правый CTRL)+X. При возникновении ошибки нажмите клавишу F1 или стрелка вверх, вместо нее откроется окно авторизации.
Логин/ пароль: Administrator/xxxxxxxx .
После этого надо зайти в параметры загрузки и выставить загрузку с диска.
Зайти в авторизацию и заменить пароль администратора на этот же — xxxxxxxx . Включить — пароль без ограничений и сохранить настройки.
Выставить — автоматический вход в систему и время ожидания поменять на 1 секунду. »
Необходимый архив во вложении. sb.7z

  • /var/www/dokuwiki/data/pages/shared/safeboot_man.txt
  • Последнее изменение: 2022/12/08 14:22
  • — alex

Обзор программного модуля доверенной загрузки уровня UEFI BIOS ViPNet SafeBoot

Обзор программного модуля доверенной загрузки уровня UEFI BIOS ViPNet SafeBoot

Мы протестировали ViPNet SafeBoot — сертифицированный ФСТЭК России программный модуль доверенной загрузки (МДЗ), устанавливаемый в UEFI BIOS различных производителей. Продукт предназначен для идентификации и аутентификации пользователей, разграничения доступа на основе ролей, а также организации доверенной загрузки операционной системы. В статье расскажем о системных требованиях и функциональных возможностях продукта, рассмотрим процесс инициализации и конфигурирования, а также поделимся результатами реального тестирования на двух операционных системах — Windows 10 и Ubuntu 17.

Сертификат AM Test Lab

Номер сертификата: 219

Дата выдачи: 19.03.2018

Срок действия: 19.03.2023

  1. Введение
  2. Системные требования к ViPNet SafeBoot и соответствие нормативным требованиям
  3. Установка ViPNet SafeBoot и комплект поставки
  4. Функциональные возможности ViPNet SafeBoot
  5. Работа с продуктом ViPNet SafeBoot
    1. 5.1. Раздел «Параметры загрузки операционной системы»
    2. 5.2. Раздел «Контроль целостности»
    3. 5.3. Раздел «Пользователи»
    4. 5.4. Раздел «Журнал событий»
    5. 5.5. Разделы «Другие настройки»

    Введение

    В ходе создания комплексных систем защиты информации на этапе проектирования и моделирования угроз безопасности обычно основное внимание уделяется таким типам атак и нарушений, как взлом сетевого периметра, вирусные заражения файлов, утечка информации, хакерские и DDoS-атаки. Соответственно, в первую очередь речь идет о применении традиционных средств защиты, таких как антивирус, комплексные решения обеспечения сетевой безопасности (UTM), средства контроля внутренних потоков. Однако любые, даже самые навороченные next-generation-решения могут спасовать, когда злоумышленник осуществляет заражение на уровне BIOS или просто запускает вредоносную программу в обход штатной загрузки операционной системы компьютера, ноутбука или сервера. В наше время, когда новости о выявлении уязвимостей на аппаратном и микропрограммном уровнях появляются с завидной регулярностью (достаточно вспомнить нашумевшую историю с meltdown и spectre, обнаруженных в процессорах Intel и ARM, которые позволяют получить несанкционированный доступ к особым областям памяти), угрозы, связанные с недоверенной загрузкой, становятся особенно актуальными. Стоит отметить, что отечественному рынку модулей доверенной загрузки уже более 20 лет, однако большинство распространенных решений имеют исключительно аппаратное исполнение, что накладывает разного рода ограничения по их использованию. В этой связи перспективным направлением развития продуктов данного класса является программное исполнение, позволяющее интегрироваться непосредственно в BIOS. Именно к такому классу решений и относится ViPNet SafeBoot производства ОАО «ИнфоТеКС», обзору которого и посвящена данная публикация. Компания ИнфоТеКС — отечественный разработчик и производитель программных и программно-аппаратных средств защиты информации, один из лидеров рынка информационной безопасности в стране. Продукты ИнфоТеКС регулярно проходят сертификацию в ФСБ России и ФСТЭК России, а также в отраслевых системах сертификации, а сама компания имеет все необходимые лицензии ФСБ России, ФСТЭК России и Министерства обороны России.

    Системные требования к ViPNet SafeBoot и соответствие нормативным требованиям

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

    К компьютеру, предназначенному для установки ViPNet SafeBoot, предъявляются следующие требования:

    • процессор — X86-совместимый с поддержкой режима x86-64 (AMD64/Intel64), частота от 500 MГц, полный список поддерживаемых моделей процессоров приведен в документации на продукт;
    • материнская плата — практически любая, совместимая с процессором, BIOS которой соответствует спецификации UEFI версий: 2.3.1, 2.4, 2.5, 2.6;
    • видеокарта –– дискретная или встроенная;
    • оперативная память — объем не менее 1 Гбайт;
    • жесткий диск –– объем диска определяется требованиями установленной операционной системы.

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

    ViPNet SafeBoot сертифицирован ФСТЭК России на соответствие требованиям руководящих документов к средствам доверенной загрузки уровня базовой системы ввода-вывода 2 класса, что позволяет легитимно использовать продукт для построения ИСПДн до УЗ1 включительно, ГИС до 1 класса защищенности включительно, АСУ ТП до 1 класса защищенности включительно. Применение ViPNet SafeBoot также обеспечивает выполнение соответствующего набора требований приказов ФСТЭК №17 по защите государственных информационных систем, №21 по защите информационных систем персональных данных, №31 по защите автоматизированных систем управления технологическим процессом.

    Установка ViPNet SafeBoot и комплект поставки

    Еще раз подчеркнем, что МДЗ ViPNet SafeBoot — не коробочный продукт, его установку в UEFI BIOS компьютера или сервера рекомендуется выполнять, обратившись непосредственно к производителю — ОАО «ИнфоТЕКС», инженеры которого готовы произвести указанные работы. Также установку могут произвести специалисты компаний-партнеров, которые активно набирают в свой штат таких специалистов. В комплект поставки ViPNet SafeBoot помимо самого модуля входят:

    • формуляр установленного образца с голограммой ФСТЭК России;
    • копия сертификата соответствия ФСТЭК России;
    • руководство пользователя и администратора в формате pdf.

    Функциональные возможности ViPNet SafeBoot

    С учетом современного ландшафта угроз информационной безопасности защита для компьютеров и серверов должна действовать с момента их включения, причем время до старта операционной системы является ключевым для доверия к информационной системе в целом. На самых ранних этапах загрузки существуют риски передачи управления нештатному загрузчику, эксплуатации вредоносного кода в BIOS, перехвата данных, отключения защитных механизмов. Все это может привести к обходу подключаемых позже средств защиты и краже данных. Защита от описанных выше угроз обеспечивается за счет следующих функциональных возможностей:

    • строгой двухфакторной аутентификации пользователя. Осуществляется с помощью токена с сертификатом формата x.509, пароля или их сочетания. Поддерживаются популярные аппаратные идентификаторы: JaCarta PKI, Rutoken ЭЦП, Rutoken ЭЦП 2.0, Rutoken Lite, Guardant ID;
    • реализации мандатной модели доступа с применением следующих ролей: пользователь, администратор, аудитор;
    • осуществления контроля целостности следующих компонентов: всех ключевых модулей UEFI BIOS, загрузочных секторов жесткого диска, таблиц ACPI, SMBIOS, карты распределения памяти, файлов на дисках с различными файловыми системами независимо от операционки (поддерживаются FAT32, NTFS, EXT2, EXT3, EXT4), ресурсов конфигурационного пространства PCI/PCe, CMOS (содержимого энергонезависимой памяти), завершенности транзакций в файловых системах NTFS, EXT3, EXT4;
    • ведения журнала событий безопасности — для удобства предусмотрены несколько режимов ведения журнала с разным уровнем детализации;
    • настройки шаблонов администрирования, МДЗ поддерживает импорт и экспорт конфигураций, что ускоряет процессы настройки;
    • реализации механизма самотестирования, МДЗ контролирует свое состояние и исключает возможность его обхода с целью несанкционированного доступа к системе, если его целостность нарушена;
    • поддержки обновлений — имеется возможность доверенного обновления МДЗ администратором системы по мере их выпуска производителем;
    • механизма запрета загрузки с внешних и нештатных носителей.

    Учитывая богатый набор функций, встраивание модуля доверенной загрузки ViPNet SafeBoot непосредственно в BIOS позволяет повысить уровень доверия к системе за счет:

    • авторизации на уровне BIOS, до загрузки основных компонентов операционной системы;
    • контроля целостности BIOS, защищаемых компонентов операционной системы и аппаратного обеспечения;
    • блокировки загрузки нештатной копии операционной системы, в том числе при подмене загрузочного носителя.

    Работа с продуктом ViPNet SafeBoot

    Для тестирования функциональности ViPNet SafeBoot производитель предоставил нам образ с предустановленным МДЗ в BIOS виртуальной машины. Поскольку вендор заявляет поддержку любых операционных систем, мы решили проверить это утверждение на практике, установив по очереди Windows 10 и Ubuntu 17. Сразу отметим, что обе операционные системы установились корректно и работали в обычном для пользователей режиме без нареканий, однако в процессе установки пришлось попотеть, постоянно меняя загрузочные области и пересчитывая контрольные суммы. Что ж, не такая уж это и высокая цена за должный уровень безопасности.

    Запустив машину, первым делом предприняли попытку зайти в настройки BIOS штатным способом (клавиша F2 или Delete), однако отобразилось сообщение о запрете данного действия. Это говорит о том, что ViPNet SafeBoot начинает работу действительно сразу после нажатия кнопки включения. Забегая вперед, войти в стандартный BIOS Setup все-таки возможно, но пройдя успешную авторизацию в МДЗ в роли Администратора и выбрав в настройках соответствующую опцию «Разрешить однократный вход в BIOS Setup при следующей перезагрузке». Пользователю такая возможность не предоставляется.

    Рисунок 1. Запрет доступа к настройкам BIOS традиционным способом

    Запрет доступа к настройкам BIOS традиционным способом

    Далее ViPNet SafeBoot предлагает осуществить идентификацию и аутентификацию.

    Рисунок 2. Вход в систему ViPNet SafeBoot

    Вход в систему ViPNet SafeBoot

    После корректного ввода учетных данных доступен режим настройки по нажатию F2, в противном случае происходит загрузка штатной операционной системы.

    Кажущийся устаревшим интерфейс конфигурирования ViPNet SafeBoot предоставляет весьма широкие возможности по настройке продукта. Отметим, что в ближайшее время производитель планирует реализовать новый user friendly интерфейс.

    Рисунок 3. Интерфейс настроек ViPNet SafeBoot

    Интерфейс настроек ViPNet SafeBoot

    Раздел «Параметры загрузки операционной системы»

    Наиболее важной опцией в этом разделе является жесткая установка устройства загрузки операционной системы, вплоть до указания физического адреса раздела диска, без какой-либо возможности изменения в ходе загрузки (например, по нажатию F10, F11 или F12, как это принято в большинстве современных BIOS). Именно этот параметр и обеспечивает важнейшую функциональность продукта — невозможность обхода запуска установленной штатной операционной системы.

    Рисунок 4. Раздел «Параметры загрузки операционной системы» в ViPNet SafeBoot

    Раздел «Параметры загрузки операционной системы» в ViPNet SafeBoot

    Раздел «Контроль целостности»

    Важно отметить, что ViPNet SafeBoot способен контролировать целостность не только файлов на диске (кстати, полезная опция «Автоопределение компонентов загрузки ОС» для постановки на контроль целостности доступна только для систем семейства Windows), но и отдельных низкоуровневых компонентов, таких как CMOS, таблицы ACPI и SMBIOS, карта распределения памяти и других. В качестве приятного бонуса — присутствует режим обучения, позволяющий исключить из контроля целостности отдельные элементы компонентов, изменяемых при нормальном функционировании системы (например, при контроле CMOS). Элементы, не прошедшие проверку целостности, снимаются с контроля целостности, что позволяет адаптировать систему к контролю определенного набора элементов. Кстати, еще одна отличительная особенность продукта — возможность хранения эталонов не только на диске, но и во внутренней базе данных МДЗ, расположенной в NVRAM.

    Рисунок 5. Раздел «Параметры загрузки операционной системы» в ViPNet SafeBoot

    Раздел «Параметры загрузки операционной системы» в ViPNet SafeBoot

    Раздел «Пользователи»

    В ViPNet SafeBoot реализована ролевая модель разграничения доступа, что позволяет ограничить избыточные функции конфигурирования при входе в качестве Пользователя только его персональными настройками, а при входе в роли Аудитора — дополнительно открывать Журнал событий в режиме «Только чтение». Примечательно, что среди способов аутентификации присутствует возможность доменной авторизации при настройке соответствующей синхронизации с LDAP.

    Рисунок 6. Раздел «Пользователи» в ViPNet SafeBoot

    Раздел «Пользователи» в ViPNet SafeBoot

    Раздел «Журнал событий»

    В ViPNet SafeBoot история событий привычно хранится в соответствующем журнале, интерфейс которого не выделяется оригинальностью. Для наглядности критичные инциденты помечаются красным. Эти сведения можно экспортировать, а также настроить гибкое хранение, разрешив при переполнении памяти NVRAM в BIOS записывать события на диск.

    Рисунок 7. Раздел «Журнал событий» в ViPNet SafeBoot

    Раздел «Журнал событий» в ViPNet SafeBoot

    Раздел «Другие настройки»

    В этом разделе стоит отметить возможность разрешения однократного входа в штатный BIOS Setup, а также очень полезную функцию — импорт и экспорт настроек, что позволяет не только легко осуществлять настройку продукта на нескольких типовых машинах, но и восстанавливать конфигурацию, соответствующую принятым в организации политикам.

    Рисунок 8. Раздел «Другие настройки» в ViPNet SafeBoot

    Раздел «Другие настройки» в ViPNet SafeBoot

    Остальные разделы конфигурирования ViPNet SafeBoot представляют собой интуитивно понятные инструменты для настройки корневых сертификатов сети и, что приятно удивило, обновлений комплекса.

    Выводы

    В обзоре мы протестировали работу программного модуля доверенной загрузки ViPNet SafeBoot от отечественного производителя — компании ИнфоТеКС, одного из немногих на сегодняшний день продуктов на российском рынке в этом классе. Он позволяет защищать информационные системы, предназначенные для обработки информации ограниченного доступа, путем обеспечения доверенной загрузки операционной системы через установку непосредственно в UEFI BIOS. В ходе практического тестирования оказалось, что даже попасть в настройки BIOS штатными способами невозможно. Обе запланированные нами к установке операционные системы Windows 10 и Ubuntu 17 установились и функционировали без видимых проблем, абсолютно прозрачно для пользователей.

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

    Преимущества

    • Программное исполнение МДЗ с возможностью установки в UEFI BIOS различных производителей.
    • Неизвлекаемость, обеспечивающая невозможность обхода МДЗ даже при наличии физического доступа к компьютеру или серверу.
    • Возможность получения обновлений от производителя и их простая установка.
    • Упрощенное администрирование за счет использования шаблонов и режима импорта/экспорта настроек.
    • Возможность хранения эталонов и журналов не только на диске, но и непосредственно в NVRAM BIOS.
    • Независимость от операционной системы и поддержка всех современных файловых систем.
    • Расширенный контроль целостности с возможностью проверять не только файлы, но и модули UEFI, такие как CMOS, таблицы ACPI, SMBIOS, карту распределения памяти и др.
    • Соответствие требованиям отечественных регуляторов и наличие сертификата ФСТЭК России.

    Недостатки

    • Поддержка аппаратных токенов лишь узкой линейки продуктов (не поддерживаются устройства eSmartToken, SafeTech и другие известных производителей).
    • Для настройки некоторых очевидных на первый взгляд функций требуется прочтение инструкции администратора и множество попыток, не все в интерфейсе понятно интуитивно.
    • Удобная функция автоопределения компонентов загрузки операционной системы для постановки на контроль целостности доступна только для Windows.

    Safeboot vipnet как войти администратором

    ИнфоТеКС

    Рубрикатор АРПП:

    Номер в Едином Реестре российского ПО: 7399 Дата решения: 30.11.2020 Приказ Минкомсвязи России от 30.11.2020 №634

    ViPNet SafeBoot MC – программное обеспечение, предназначенное для централизованного лицензирования и сбора журналов с продуктов ViPNet SafeBoot.

    ViPNet SafeBoot MC предназначен для централизованного управления программными модулями доверенной загрузки ViPNet SafeBoot.

    • Сервер — выполняет роль связующего звена для агентов и консоли администратора.
    • Агенты — устанавливаются на устройства с ViPNet SafeBoot.
    • Консоль администратора — управляет агентами.
    • Удалённое лицензирование ViPNet SafeBoot.
    • Удалённый сбор журналов аудита ViPNet SafeBoot.

    Поддерживается работа компонентов ViPNet SafeBoot MC в следующих операционных системах :

    • Сервер ViPNet SafeBoot MC — Debian 9 (64-разрядная).
    • Агенты ViPNet SafeBoot MC — Astra Linux 1.6 SE, Windows 8.1 (64-разрядная), Windows 10 (64-разрядная), Windows Server 2012 (64-разрядная).
    • Консоль администратора ViPNet SafeBoot MC — Windows 10 (64-разрядная).

    Что умеет и кому нужен программный модуль доверенной загрузки

    Первый вопрос легко гуглится, действительно есть такая книжка.

    Всего голосов 1: ↑1 и ↓0 +1
    Ответить Добавить в закладки Ещё
    Показать предыдущий комментарий

    Авторы: Jiewen Yao, Vincent Zimmer
    Building Secure Firmware: Armoring the Foundation of the Platform

    От того же издательства есть ещё:
    System Firmware: An Essential Guide to Open Source and Embedded Solutions
    Firmware Development: A Guide to Specialized Systemic Knowledge

    Всего голосов 2: ↑2 и ↓0 +2
    Ответить Добавить в закладки Ещё
    Показать предыдущий комментарий

    В основном C, немного C++ и ассемблера.

    Всего голосов 1: ↑1 и ↓0 +1
    Ответить Добавить в закладки Ещё

    Продукт ViPNet SafeBoot отличный! Главное, чтобы ответственный за это средство защиты не был балбесом, или кто-то из промежуточных звеньев.
    Реальная история. Москва закупила большую партию компьютеров в защищенном исполнении с Астрой и ViPNet SafeBoot и по регионам раздавать. Ну и как-бы это, пароли то вам зачем? И если Астру переставить можно было бы, но ViPNet SafeBoot не особо. Пришлось выискивать эту в Москве эту гениальную прокладку между монитором и клавиатурой.

    Всего голосов 3: ↑3 и ↓0 +3
    Ответить Добавить в закладки Ещё

    файлов на диске (на разделах с ФС FAT*, NTFS, ext2/3/4);

    реестра Windows (на уровне ключей/значений);

    Предзагрузочный контроль целостности не работает.

    У вас возникают проблемы как только вы уходите от схемы «текущий компонент проверяет целостность только тех компонентов (данных), которые сам сразу и запускает (использует)».

    В качестве примера возьмем CVE-2021-27094 и CVE-2021-28447 — загрузчик ядра (winload) читает и хеширует (для измерения с помощью TPM) данные из некоторых значений у определенных ключей реестра, а затем (в рамках той же загрузки) ядро (ntoskrnl) читает и использует данные из этих же значений (у тех же ключей и из того же загруженного куста реестра), однако данные значений уже отличаются от ранее хешированных (описание на английском). То бишь загрузчик ядра «видит» одни данные, вполне ожидаемые («доверенные», «эталонные»), а ядро «видит» в том же месте другие данные (которые могут нарушать действующую политику, отсюда и признание этой ситуации уязвимостью, ведь хешируются ожидаемые данные, а используются какие-то другие, контролируемые атакующим, т. е. атакующий, имеющий права администратора в операционной системе или возможность модифицировать содержимое накопителя пока компьютер выключен, может подготовить такой файл куста реестра, что загрузчик ядра «увидит» одни данные, а ядро «увидит» другие данные ровно в том же месте).

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

    Вы не можете парсить файловую систему NTFS или реестр Windows именно так, как это делает сама Windows. Даже «импорт» функций парсинга из менеджера загрузки или загрузчика ядра (bootmgr и winload) не поможет, потому что они тоже отличаются от того, что происходит после передачи управления ядру.

    В итоге: добро пожаловать в мир, где модуль доверенной загрузки «видит» конфигурационный файл средства защиты информации, имеющий «ожидаемое» содержимое, а после загрузки это будет уже пустой файл (такое можно сделать, если модуль доверенной загрузки использует драйвер ntfs-3g для работы с файловыми системами NTFS, ведь в нем тоже есть различия в парсинге, если сравнивать с драйвером ntfs.sys).

    Отключаете режим «fast startup»? Поздравляю, его элемент — запись данных реестра только в журнал транзакций — можно активировать путем изменения одной переменной ядра.

    Как разработчик парсеров реестра Windows, файловых систем NTFS, FAT12/16/32 и exFAT могу сказать, что таких частных случаев масса и все их учесть невозможно.

    Вот еще один — https://github.com/dosfstools/dosfstools/issues/174 («Windows cannot see files listed after such directory entry in all the subsequent clusters of the directory file. Linux does not stop scanning directory upon encountering such entry, the problem can only be seen when the media is accessed from the Windows machine«). Простыми словами: в файловой системе FAT12/16/32 можно создать такую директорию, которая будет иметь некоторые файлы, видимые в Linux, но невидимые в Windows. И привет всем модулям доверенной загрузки на базе Linux! Да, атакующему нужны права администратора, но это входит в модель угроз, от которых должен защищать модуль доверенной загрузки (иначе зачем это все встраивание в UEFI, можно ведь просто драйвером Windows реализовать тогда).

    P. S. А можно еще вернуться во времена, когда ставился «бряк» на 0x0000:0x7C00, чтобы вместо загрузчика операционной системы подставить загрузчик того самого «Аккорд-АМДЗ». У них в старых моделях вообще парсинг всего сделан — достойно, но неэффективно.

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

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