Для Linux представлена система верификации исполняемых файлов по цифровым подписям

Один из инженеров из компании Red Hat представил в списке рассылки разработчиков ядра Linux патчи с реализацией системы верификации исполняемых файлов в формате ELF с использованием цифровых подписей. Разработка дополняет систему верификации модулей ядра, созданную в рамках проекта по обеспечению поддержки механизма UEFI Secure Boot.

В текущей реализации UEFI Secure Boot при включении режима верификации пришлось заблокировать механизм kexec наряду с другими возможностями, которые могут быть использованы для обхода цепочки верификации загружаемых модулей (через kexec могло быть запущено ядро в режиме без проверки цифровых подписей модулей). Одним из предложенных решений указанной проблемы стала поддержка проверки по цифровой подписи исполняемого файла /sbin/kexec, применяемого для загрузки нового ядра с использованием системного вызова sys_kexec(). Другим мотивом обеспечения верификации исполняемых файлов являлось желание выполнения команды kdump для ядер, загруженных в режиме UEFI Secure Boot.

Кроме патчей для ядра Linux представлена новая утилита signelf, предназначенная для заверения исполняемых файлов ELF с использованием закрытого ключа и сертификата x509, созданных в процессе сборки ядра Linux с включенным режимом верификации. В процессе выполнения вызова exec(), ядро проверяет снабжён ли файл цифровой подписью и проводит верификацию (проверяется загружаемое в память содержимое секции PT_LOAD). Если цифровая подпись соответствует проверочному ключу или файл не подписан, то прогармма выполняется в обычном режим, если нет - выполнение блокируется.

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

Источник:
http://www.opennet.ru/opennews/art.shtml?num=35852

<= Назад
Комментарии
]]> ipv6 ready Kiev LUGLinux4MeНостальгияЛичный сайт skeletora ]]>