12.05.2016

Петля Бойда и кибербезопасность

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

  • Теорема Геделя о неполноте. Любая логическая модель реальности не полна и возможно несостоятельна, а следовательно должна непрерывно улучшаться и адаптироваться с учетом новых наблюдений.
  • Принцип неопределенности Гейзенберга. Существует предел нашей способности наблюдать реальность с определенной точностью. Любые малые ошибки наблюдений, включенные в вычисления, могут привести к увеличению объема неточностей со временем.
  • Второй закон термодинамики. Энтропия (хаос) любой замкнутой системы всегда стремится к увеличению. Следовательно, природа любой заданной системы непрерывно изменяется, даже если принимать меры по сохранению ее в исходном состоянии. Более того, принимаемые нами действия повлиять на любую систему будут иметь непреднамеренный сторонний эффект, который может в действительности привести к увеличению скорости изменения энтропии системы (и, следовательно, к хаосу).

Именно эти три теории привели американского полковника авиации Джона Бойда к формулировании его концепции петли OODA (Observe - Orient - Decide - Act или Наблюдай - Ориентируйся - Решай - Действуй),  легшей в основу современной военной доктрины США (и не только) и используемой во многих иных сферах - торговли, бизнеса, спорта и т.п. Идея Бойда заключалась в том, что для того, чтобы военные операции (как и кибероперации) соответствовали реальности необходимо действовать в непрерывном цикле, постоянно взаимодействуя с окружающей средой и учитывая ее постоянные изменения. При этом преимущество в скорости своего цикла (очевидно, что противники будут действовать в рамках своих аналогичных циклов) действий и точности оценок обеспечивает  преимущество над противоборствующей стороной и ведет в конечном итоге к победе.


Цикл Бойда, изначально применявшийся в военных операциях, очень хорошо применим и к информационной безопасности. Более того, отличительной чертой цикла Бойда (на русском его еще часто называют “циклом или петлей НОРД”) от других циклических моделей, применяемых в ИБ, состоит в том, что наличие противника предполагается всегда и противник также действует и принимает решения в рамках своей аналогичной петли. Учитывая, что современная киберпреступность (не говоря уже о кибервойсках) мало чем отличается по своим возможностям от корпоративных служб ИБ (а часто и превосходит их), то применение цикла Бойда в кибербезопасности вполне правданно и обосновано.

Попробуем чуть более детально рассмотреть элементы петли Бойда.

  • Наблюдение (observation). Это процесс сбора информации, необходимой для принятия решения в данном конкретном случае. Информацию об угрозах, хакерах, инсайдерах, конкурентах и иных противоборствующих сторонах можно собирать из внешних и внутренних источников. От качества и скорости сбора этой информации зависит эффективность принимаемых нами решений. Иностранные компании, знакомые с концепцией Бойда, активно ее используют, преподнося свои решения по Threat Intelligence как очень важную, первую часть цикла OODA, на которой строится все остальное.
  • Ориентация (orientation). Это самый важный этап петли Бойда, который в свою очередь разделяется на два подэтапа - разрешение (destruction) и созидание (creation). Разрушение подразумевает декомпозицию ситуации на более мелкие части, для каждой из которых существует свой сценарий или план действий. В области ИБ это могут быть различные руководства и инструкции или, как это сейчас модно стало называть, playbook. Например, у служб реагирования на инциденты или у операторов SOC такие playbook насчитывают до нескольких десятков различных ситуаций (инцидентов) с описанием конкретных шагов по их разрешению. На этапе созидания все эти небольшие планы объединяются в общий план действий, который и позволяет с успехом выйти из сложившейся ситуации. Разумеется, успех этого этапа зависит от того, насколько много у нас уже сформированных планов. Если их нет, то мы будем терять время в попытке разработать их во время конфликта или инцидента, что в итоге приведет к проигрышу.
  • Решение (decision). На данном этапе мы принимаем решение о реализации плана, сформированного на предыдущем этапе (если план один), или выбираем из альтернатив лучшую по критерию, например, эффективность-стоимость или скорость-стоимость или скорость-надежность. Очевидно, что в области ИБ у нас скорее всего будут множественные альтернативы, из которых нам надо будет принять лучшую в конкретной ситуации.
  • Действие (act). На финальном этапе мы просто реализуем выбранный план действий.


Если внимательно проанализировать идеи Бойда, то становится очевидно, что существуют всего два основных способа достижения победы в борьбе с киберпреступниками и иными нарушителями - очевидный и не очень. Очевидный - это сделать свои циклы действий более быстрыми или улучшить качество принимаемых решений. Первый вариант позволит вам действовать на опрежение и вынудит именно вашего противника реагировать на ваши действия, а не наоборот, как часто происходит в ИБ. Например, вы можете регулярно перестраивать систему защиты, проводить постоянно учения “красно-синих”, менять настройки средств защиты, менять адресацию, менять банеры у сетевых и прикладных сервисов и т.п. Второй и менее очевидный путь позволят вам принимать решения, лучше соответствующие текущей ситуации, чем решения вашего визави. Хорошо просчитанные решения могут привести к более предпочтительным результатам, нежели быстрые, но неадекватные действия противника. Это можно сделать либо улучшая свои решения (например, путем проведения киберучений в своей компании или внедряя систему автоматизации рутинных действий или систему корреляции событий безопасности), либо ухудшая решения противника (например, внедряя в компании принцип “security through obscurity” и не давая злоумышленникам информации о внутренностях атакуемой системы).

Очень важным моментом в концепции Бойда, которая также отличает ее классических циклических моделей, является обратная связь, которая обеспечивается после каждого “шага” петли, а не только на последней стадии “улучшай” как в PDCA. Именно обратная связь позволяет учитывать динамику состояния ИБ, постоянно получая из внешнего мира информацию, используемую для принятия решений.


Интересно, что цикл Бойда может быть применен как на очень низком, операционном уровне, так и на высоком, тактическом и стратегическом, для обеспечения деятельности всей службы ИБ. И операционный уровень позволяет очень хорошо описать разницу между тем же PDCA и циклом Бойда.


Возьмем к примеру задачу мониторинга атак и подозрительных действий на уровне сети. В случае с PDCA мы сначала должны спланировать, что мы ищем (создать правила или включить нужные сигнатуры в системе обнаружения вторжений). Затем мы запускаем систему в промышленную эксплуатацию и смотрим - что она ловит, а что нет. Это второй и третий этапы PDCA. Четвертый этап заключается в тюнинге системы обнаружения с учетом полученной информации. И так по кругу, в надежде, что мы достигнем просветления и наш сенсор IDS будет ловить все, что он должен в конкретной точке сети. Если за основу взять цикл Бойда, то работа IDS будет выглядеть иначе. Сначала мы собираем данные из нашего окружения (Netflow, логи, события ИБ и т.п.) - это этап наблюдения. Затем мы проводим анализ и корреляцию событий, поиск аномалий, обнаружение несанкционированных действий. Это этап ориентации. На третьем этапе мы принимаем решение о том, будем ли мы блокировать атаку сами или изменим ACL сетевого оборудования или заморозив учетную запись пользователя, участвующего в атаке. И на финальном этапе приводим выбранную стратегию в действие. При этом на каждом из этопов мы обеспечиваем обратную связь. Например, на этапе принятия решения по конкретному событию мы можем получить дополнительную информацию о его окружении и, например, не заблокировать атаку, а дать ей развиться и направить ее на обманную систему. А другую такую же атаку, получив “вводную” от сканера безопасности, мы можем купировать, не дожидаясь ее развития. И все это опираясь на непрерывно получаемую информацию о состоянии внешней среды. Другой пример. Реализовав какую-либо реакцию на атаку мы делимся этой информацией, используя ее на следующем витке петли Бойда.

Если посмотреть на текущую ситуацию в ИБ с точки зрения цикла Бойда, то пока мы бой проигрываем - злоумышленники действуют быстрее, заставляя нас реагировать на их действия, а не наоборот. Мы не учитываем динамичности конфликтов в информационной сфере, строя свою деятельность на базе того же самого PDCA, который оторван от реальной жизни и требует линейного выполнения заданных действий для достижения некоего измеримого результата. Но поскольку задача это трудная, то даже PDCA в полном объеме никто не реализует. Отсюда и множество проблем на современных предприятиях.


Сегодня на полковника Бойда “молятся” многие натовские военные, считающие его теорию панацеей и единственным способом победы над Россией (концепция мгновенного удара). Не буду вдаваться в эту дискуссию - меня в теории Бойда заинтересовала именно “кибер” составляющая и возможность ее применения в кибербезопасности. И судя по анализу иностранных публикацией, там тоже вполне всерьез интересуются петлей Бойда применительно к нашей тематике. Здравый смысл в ней точно есть.

13 коммент.:

biakus комментирует...

Последние новости говорят, что скоро (благодаря ИИ) решения будут приниматься лучше и применяться быстрее:
http://www.computerworld.ru/news/IBM-Watson-uchitsya-informatsionnoy-bezopasnosti
http://www-03.ibm.com/security/cognitive/

Алексей Лукацкий комментирует...

Про это говорят давно, но пока без практической пользы

Dmitry Osipov комментирует...

biakus,

следует ожидать, что скоро, благодаря ИИ, атаки станут более изощренными, а эскплойты будут появляться быстрее и в большем количестве.

Target комментирует...

К сожалению "открытая" информационная система всегда проиграет конфронтацию в конкурентной среде. "Закрытая" информационная система приведет к росту энтропии и, как следствие, к деградации. Отсюда вывод. Как всегда оптимальное решение где-то по середине. Целесообразно строить "закрытую" информационную систему, у которой имеется взаимодействие с внешним информационным пространством через фильтр безопасности. Качество ИБ будет определяться качеством "закрытости" ИС, а также скоростью и качеством работы фильтра. Отсюда вытекают решения по управлению циклом ИБ. Для "закрытой" части ИС применим цикл PDCA, для "открытой" части ИС - цикл ОООА. Собственно так и делается, возможно не осознанно, на практике. Все строят "закрытый" контур ИС и фильтруют внешний информационный поток (АВЗ, цензура, сертификация, импортозамещение и т.п.). Если эту схему реализовать в информационной архитектуре, то получится "практически" безопасная ИС. Уровень ее ИБ будет значительно лучше, но никогда не будет "идеальным".
Способ улучшить показатели "закрытости" ИС - автоматизация оценки безопасности архитектуры и применение доверенных элементов (самописных, сертифицированных и т.п.). Способ улучшить показатели качества фильтра - скорость анализа входящего информационного потока и качество алгоритмов анализа. Но слабым звеном в системе ИБ, как всегда, останется человек.

Алексей Лукацкий комментирует...

Интересная версия, но противоречащая современныи ИТ и бизнес трендам с их ориентацией на открытость

Александр Бодрик комментирует...

PDCA устарел, согласен
Как насчет Identity-Protect-Detect-Respond-Recover?

Алексей Лукацкий комментирует...

Про эту штуку я уже писал. Но планировал еще раз к ней вернуться

vsv комментирует...

Алексей, к сожалению, только сегодня натолкнулся на твою статью. Но не откоментировать не могу. Интересно. То, что цикл Деминга малоприменим к ИБ- согласен и согласен уже давно. Идея применения петли Бойда к процессах ИБ- интересна. Но! Обрати внимание, что теория Бойда создавалась для подавления противника, то есть она носит явно агрессивный характер. А ИБ по своей природе (в отличие от кибервойны) носит оборонительный характер. И уж, если мы заговорили о петле Бойда, то по отношению к ИБ правильнее говорить о теории подавления петли Бойда, которая была успешно разработана нашими авторами где-то лет 5-7 назад. Тогда получается логично: киберпреступник, знакомый с теорией Бойда, стремиться преодолеть систему ИБ, а ИБ-шник, стремиться подавить управление агрессией опять таки основываясь на цикле Бойда и теории подавления этих циклов.

Алексей Лукацкий комментирует...

Я не могу согласиться с тем, что ИБ носит оборонительный характер. Функции противодействия, а иногда и прямой контратаки, вполне себе используются в ИБ. А пентесты? А редтимы?

А насчет теории подавлении цикла Бойда скажу, что я не понял этих авторов. То, что я читал, абсолютно неконкретно и непонятно ;-(

vsv комментирует...

И все-таки, ИБ носит оборонительный характер. Пентест - не показатель. Дело в том. что сам по себе пентест не защищает информацию. Он имитирует действия злоумышленника, то есть в данном случае пентестер стоит на стороне киберпреступника. Поэтому относить пентест к методам защиты информации как-то некорректно. А даже если есть активные способы противодействия угрозам (например, применение генераторов шума), то это не значит, что эти действия не носят оборонительный характер. Комплексы С-400 тоже не для нападения, а для обороны, но методами уничтожения.

По поводу теории подавления циклов Бойда, соглашусь, запутанно, но сама по себе идея проста: надо навязать противнику такую информацию, анализ которой и выработка решения по циклу Бойда на основании этого анализа должна привести к краху управления атакой. То есть заставить противника принять неверное решение. А для этого надо опережать противника в анализе обстановки и уметь прогнозировать его действия, а не реагировать на его атаки...

Алексей Лукацкий комментирует...

Так я же не говорю про защиту информации :-) Я говорю про информационную безопасность. Любая безопасность подразумевает не только оборонительную, но и атакующую составляющую.

А что касается навязывания информации для принятия неправильного решения - это не подавление цикла Бойда - это и есть цикл Бойда. Только в данном случае противники действуют друг против друга, пытаясь направить друг друга по неверному пути

vsv комментирует...

Атакующая составляющая предполагает нападение. Но мы же не уничтожаем (или не взламываем) серверы с которых идет атака. Вот если бы в рамках ИБ запускали в сеть какой-то зловред, который что-то делал бы с атакующим сервером, то тогда бы это было не ИБ, а кибервойна (читай кибербезопасность в терминах запада).

Алексей Лукацкий комментирует...

А посадить киберпреступника - это что?