В KasperskyOS специальный модуль Kaspersky Security System проверяет, соответствует ли каждое взаимодействие заданным политикам безопасности, и в случае несоответствия — запрещает действие.
Как это происходит, рассмотрим на примере демонстрационного проекта ping из поставки KasperskyOS Community Edition 1.2.
➡️Для описания контроля взаимодействий мы используем Policy Specification Language (PSL), где определяем последовательность запросов при ping таким образом, что pong не может вернуться до отправки ping.
➡️Для проверки этого правила существует Policy Assertion Language (PAL) - декларативный язык для создания тестов политики безопасности решения. А сама проверка будет выглядеть следующим образом:
sequence "ping must be first" {
deny c ~> s : controlimpl.connectionimpl.Pong { value: 100 }
} По результатам теста мы сможем убедиться, что наши ограничения выполняются именно так, как мы задумали. Такой контроль межпроцессорного взаимодействия позволяет системе стать кибериммунной, т.е. защищенной не только от существующих, но и от потенциальных атак.
