Когда мы впервые рассказываем о кибериммунной разработке, то иногда сталкиваемся с полярными мнениями:
🟢это очень сложно, “наворотили тут, напридумывали”, “так никто не делает”;
🟢вы не рассказали ничего нового, это всё уже придумано до вас и много где так делается (и в нашей компании Y, например, тоже).
Действительно,
кибериммунный подход к разработке - это не уникальная и абсолютно нигде ранее не использовавшаяся концепция, а сочетание здравого смысла, лучших практик и опыта экспертов, позволяющее построить понятный каждому участнику команды процесс разработки доверенных решений из сочетания доверенных и недоверенных компонентов.
Рассмотрим один из сборников опыта системных инженеров в интересующей нас области, а именно,
международный стандарт (далее просто Стандарт), который в переводе называется
“ГОСТ Р МЭК 62443-3-3-2016. Сети промышленной коммуникации. Безопасность сетей и систем”. И особое внимание уделим его третьей части - “Требования к системной безопасности и уровни безопасности”.
В небольшом в общем-то (всего 62 страницы) документе рассматриваются системы промышленной автоматизации и соответствующие сети. Приводятся определения ключевых терминов, в частности “жизненно важных функций” и “режим ограниченной функциональности”. В
п. 4.2 “Поддержка жизненно важных функций” подчеркивается необходимость формулирования и реализации системных требований таким образом, чтобы не нарушать работу жизненно важных функций.
➡️В терминах кибериммунной разработки это аналогично целям безопасности и требованию по их достижению при любых обстоятельствах (включая атаки через недоверенные компоненты).
В
разделе 4 “Общие ограничения безопасности систем управления”, пункте 4.4 “Минимальная привилегия” видим следующую рекомендацию: “Должна быть предусмотрена возможность укрепления концепции минимальной привилегии, с ранжированием полномочий и гибкостью соотнесения этих полномочий с ролями, достаточной для ее поддержания.”
➡️В кибериммунной разработке мы, фактически, реализуем эту рекомендацию в виде идентификации доверенной кодовой базы (кода, критического для целей безопасности) и минимизацию этого кода.
Также обратим внимание на
раздел 9 Стандарта - “Ограничение потока данных”, в котором рекомендуется исходя из оценки рисков определять “необходимые ограничения на поток информации, а значит, в качестве дополнения, и определять конфигурацию трактов, используемых для передачи этой информации.”
➡️В терминах кибериммунной разработки это соответствует принципу изоляции и контроля взаимодействия.
Таким образом,
ключевые концепции кибериммунной разработки (определение целей безопасности, определение и минимизация доверенной кодовой базы, изоляция и контроль взаимодействия подсистем) фактически реализуют рекомендации Стандарта ГОСТ Р МЭК 62443.Мы рекомендуем изучить весь Стандарт целиком, там ещё очень много полезного! Используйте рекомендации в своих проектах с применением кибериммунного подхода к разработке, как это делаем мы 😎
Ссылка на источник