…нелегко с Кощеем сладить: смерть его на конце иглы, та игла в яйце, то яйцо в утке, та утка в зайце, тот заяц в сундуке, а сундук стоит на высоком дубу, и то дерево Кощей, как свой глаз, бережет.
Так вещает Баба Яга в сказке про Царевну-лягушку.
Что сделал Кощей?
▫️Во-первых, минимизировал поверхность атаки до острия иглы.
▫️Во-вторых, изолировал компоненты друг от друга или, вернее, друг в друге.
▫️В-третьих — предположительно — следил за результатом.
Правда, все это ему не помогло. Но давайте посмотрим, как можно модернизировать его подход, чтобы уберечь систему от угроз.
Идея минимизации — отличная, берем как есть. Кощей поместил свою смерть на кончик иглы, и мы сделаем доверенную кодовую базу системы как можно меньше.
С изоляцией компонентов у Кощея что-то пошло не так: все они были по-своему уязвимы, и каждый «подставлял под удар» следующий. Мы изолируем компоненты системы друг от друга, но обойдемся без принципа матрешки.
Система контроля у Кощея вообще дала сбой — не знаем, как он там берег свой дуб, но атаку на сундук и на все его внутренние компоненты — прозевал. Мы поступим иначе — будем тщательно контролировать все взаимодействия процессов в системе.
Эти три принципа и лежат в основе кибериммунитета:
1️⃣ минимизация доверенной кодовой базы,
2️⃣ изоляция доменов безопасности,
3️⃣ контроль межпроцессных взаимодействий.
Иными словами, в кибериммунной системе все компоненты изолированы, общаются друг с другом только через микроядро и каждое такое взаимодействие проверяется на соответствие политикам безопасности.
Подробнее о принципах кибериммунитета — читайте в нашей статье.