Методы служб ядра KasperskyOS
С точки зрения модуля безопасности Kaspersky Security Module ядро KasperskyOS является контейнером компонентов, предоставляющих службы. Список компонентов ядра содержится в файле Core.edl
, расположенном в директории sysroot-*-kos/include/kl/core
из состава KasperskyOS SDK. Также в этой директории находятся CDL-, IDL-файлы формальной спецификации ядра.
Методы служб ядра можно разделить на безопасные и потенциально опасные. Потенциально опасные методы могут быть использованы злоумышленником в компрометированном компоненте решения, чтобы, например, вызвать отказ, организовать скрытую передачу данных, захватить управление устройством ввода-вывода. Безопасные методы не могут быть использованы таким образом.
Доступ к методам служб ядра должен быть максимально ограничен политикой безопасности решения (принцип least privilege). Для этого нужно выполнить следующие требования:
- Разрешить доступ к безопасному методу только тем компонентам решения, которым этот метод нужен.
- Разрешить доступ к потенциально опасному методу только тем доверенным компонентам решения, которым этот метод нужен.
- Разрешить доступ к потенциально опасному методу только тем недоверенным компонентам решения, которым этот метод нужен, если только проверяемые условия доступа ограничивают возможности злонамеренного использования метода, или последствия злонамеренного использования метода допустимы с точки зрения безопасности.
Например, недоверенному компоненту можно разрешить использовать ограниченный набор портов ввода-вывода, чтобы этот компонент не мог захватить управление устройствами ввода-вывода. Также, к примеру, скрытая передача данных между недоверенными компонентами может быть допустимой с точки зрения безопасности.