Требования к архитектуре и дизайну: минимизация TCB

Что такое недоверенный и доверенный код и почему последний должен быть минимизирован

Все модули кибериммунной системы классифицируются как недоверенные, доверенные и повышающие уровень доверия к данным. Модули системы, относящиеся к двум последним классам, входят в TCB наряду с доверенными системными компонентами — такими как ядро разделения и монитор безопасности.

Кибериммунный подход подчеркивает важность доказательства надежности программного кода. Однако доказывать надежность каждого компонента системы чрезвычайно дорого и не всегда возможно как из-за огромного объема кода, так и из-за использования заимствованного кода, который может часто обновляться.

Если системные компоненты верифицируются поставщиком, то верификация прикладных доверенных компонентов — обязанность прикладного разработчика. Поэтому код прикладных доверенных компонентов должен быть минимизирован, иначе верификация займет слишком много времени или будет коммерчески нецелесообразной. Недоверенные компоненты также верифицируются, но наиболее простыми и малозатратными методами.

К доверенным компонентам предъявляются определенные требования: они должны быть функционально просты, иметь небольшое число интерфейсов со строгой типизацией параметров, быть небольшими по объему кода и функционально однородными. Эти требования направлены на минимизацию поверхности атаки на доверенные компоненты, а также на оптимизацию затрат на верификацию.

Подобно концепции Zero Trust, кибериммунная система сводит контроль поверхности атаки на систему к контролю относительно небольшой поверхности защиты, образованной доверенными компонентами. Гарантировать качество поверхности защиты технически проще, за счет чего киберсистема будет более надежной с точки зрения безопасности.

От поверхности атаки — к поверхности защиты

В следующей, заключительной части расскажем об экономическом эффекте разработки по кибериммунной методологии.

Все модули кибериммунной системы классифицируются как недоверенные, доверенные и повышающие уровень доверия к данным. Модули системы, относящиеся к двум последним классам, входят в TCB наряду с доверенными системными компонентами — такими как ядро разделения и монитор безопасности.

Кибериммунный подход подчеркивает важность доказательства надежности программного кода. Однако доказывать надежность каждого компонента системы чрезвычайно дорого и не всегда возможно как из-за огромного объема кода, так и из-за использования заимствованного кода, который может часто обновляться.

Если системные компоненты верифицируются поставщиком, то верификация прикладных доверенных компонентов — обязанность прикладного разработчика. Поэтому код прикладных доверенных компонентов должен быть минимизирован, иначе верификация займет слишком много времени или будет коммерчески нецелесообразной. Недоверенные компоненты также верифицируются, но наиболее простыми и малозатратными методами.

К доверенным компонентам предъявляются определенные требования: они должны быть функционально просты, иметь небольшое число интерфейсов со строгой типизацией параметров, быть небольшими по объему кода и функционально однородными. Эти требования направлены на минимизацию поверхности атаки на доверенные компоненты, а также на оптимизацию затрат на верификацию.

Подобно концепции Zero Trust, кибериммунная система сводит контроль поверхности атаки на систему к контролю относительно небольшой поверхности защиты, образованной доверенными компонентами. Гарантировать качество поверхности защиты технически проще, за счет чего киберсистема будет более надежной с точки зрения безопасности.

От поверхности атаки — к поверхности защиты

В следующей, заключительной части расскажем об экономическом эффекте разработки по кибериммунной методологии.

Консультация по решению

Остались вопросы или требуется дополнительная информация по решению? Оставьте заявку на консультацию, и мы с вами свяжемся!

Задать вопрос

Отвечаем на самые популярные вопросы о KasperskyOS и решениях на ее основе

Перейти в FAQ