6 Августа, 2014

“Доверяй, но проверяй”? Или доверие пора выбросить в унитаз?

Алексей Лукацкий
Большинство из нас училось информационной безопасности на концепции доверия. Есть сеть внутренняя, а есть внешняя. Есть пользователи доверенные, а есть не очень. Есть зона контролируемая, а есть бесконтрольная. Есть доверительные отношения между доменами, а есть обычные. Есть соединения доверенные, а есть небезопасные. Есть доверенный интерфейс у МСЭ (как правило, внутренний), а есть недоверенный (как правило, внешний). У некоторых средств сетевой безопасности интерфейсы даже так и назывались trusted и untrusted. Знакомая концепция, не правда ли?

И вот пришел… Нет, не Дед Мороз. И не тот самый пушной зверек. Обычный американский парень - Эдвард Сноуден. А до него был другой Эдвард - Бредли Эдвард Меннинг, который совсем недавно стал Челси Элизабет Меннинг (кстати, тем, кто задумал украсть корпоративные секреты своего работодателя, стоит задуматься о том, к чему приводят действия против закона :-) Они ярко продемонстрировали, что даже в святая святых органов обороны и нацбезопасности поговорка “чужие здесь не ходят” не работает. Скорее наоборот. Не совсем понятно, откуда вообще взялась идея, что в безопасности можно кому-то или чему-то доверять? Это ведь корень всех провалов. Стоит скомпрометировать доверенного пользователя, узел, приложение… и безопасности приходит конец; надо все перестраивать с нуля. И так каждый раз, когда проявляется новый Сноуден, Меннинг, Филби, Рейли, Розенберг, Фишер, Коэн, Пеньковский. Я не берусь сейчас оценивать действия данных лиц с моральной или какой-либо иной точки зрения. Разведчики они или предатели… Не так уж и важно. Я хотел бы оценить эти события только с точки зрения информационной безопасности. Выше я перечислил несколько имен, которые на протяжении последних ста лет показывали порочность практики “доверительных отношений” в ИБ. Не пора ли от нее отказываться? Об этом не первый год говорят как в англоязычной среде, продвигая концепцию Zero Trust, так и у нас, ругая концепцию “контролируемой зоны” от ФСТЭК. Я тоже не обошел внимание эту тему, выступив в 2012-м году на PHDays с соответствующей презентацией .

Вчера я сдал статью в очередной номер "!БДИ", в которой писал о том, почему управление ИБ дает сбой. В качестве причин назвал я и концепцию доверия, а также неготовность к неожиданностям, которая вытекает из этого доверия. Ну какие неожиданности могут быть от администратора СУБД или даже руководителя службы ИБ? А от вендора, с которым мы работаем уже не первый год? А от контрагентов, с которыми у нас заключены договора на поддержку? Так думаем мы и ошибаемся.

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

Кстати, об уровне сети. Какие самые популярные средства сетевой безопасности у нас обычно ставятся? МСЭ и IPS. И те, и другие на периметре сети. Иногда еще и на отдельных участках внутренней сети, но современная коммутируемая сеть (да еще и с виртуализацией или SDN) ставит крест  на попытках найти отдельные точки контроля, в которые стекается весь трафик. Но даже если представить, что мы смогли пропустить весь трафик через несколько точек контроля и они не превратились в узкие бутылочные горлышки, то что дальше? А если на доверенном узле, чей трафик разрешен на МСЭ, незаметно работает фрагмент APT или бот? Он будет работать от имени доверенного пользователя или узла, которому разрешено многое. Сетевой трафик не может быть доверенным в принципе. Именно поэтому появляются такие технологии как 802.1x, NAC/ISE, NBAD/ CTD , разрабатываемые из расчета, что одной аутентификации пользователя недостаточно и нужно более пристально всматриваться в сетевой трафик, идущий между устройствами (особенно если пользователь за устройством вообще не присутствует и никакой аутентификации не проходит).

“Ни фига!”, - возразите мне вы. Я могу контролировать все, что есть в моей сети и на подступах к ней! У меня множество средств защиты (Forrester насчитывает 17 основных типов средств сетевой безопасности, используемых сегодня по всему миру), они все именитые, на них потрачено много денег и они не могут меня обманывать! Я им доверяю! Вот! Почему вы им доверяете? У вас есть основания? Вы лично проверили эффективность всех средств защиты или просто верите производителю на слово? Как показывает статистика такое доверие дорого обходится. В известных случаях вредоносный код “сидел” внутри по несколько лет и успевал за это время стянуть несколько терабайт данных. И все это при наличии разнородных средств защиты. Значит ли это, что все они плохи? Нет! А можно где-то найти решение, реализующиее технологию “нулевого доверия”? Тоже нет! Их не существует в природе!

Потому что концепция Zero Trust не означает новой серебряной пули или очередной революции на рынке средств ИБ. Это просто смена парадигмы, которая может быть реализована за счет существующих решений и технологий. Надо поменять свое сознание и строить систему ИБ на предприятии исходя из того, что никому и ничего доверять нельзя. Нельзя “доверять, но проверять” - можно только “проверять и никогда не доверять”! Проверять ПО перед установкой и после нее. Проверять все сетевые соединения снаружи и внутри. Проверять все попытки доступа любых пользователей независимо от их роли. Проверять все устройства, подключаемые к сети. Проверять трафик на всех TCP-портах, а не только на тех, которые, как мы считаем, доступны в сети. Проверять прикладной трафик, включая и возможную инкапсуляцию в него чего-то вредоносного или просто нарушающего политику ИБ.
Эксперты выделяют три составляющих концепции “нулевого доверия”, с которыми я склонен согласиться:
  1. Контролируйте и защищайте все. Неважно, кто, откуда, когда, как и зачем осуществляет подключение. Важно проверять все - тогда уровень безопасности сети повысится, а число неприятных сюрпризов существенно уменьшится. Для специалистов по ИБ не должно быть разницы между защитой внутренних активов от внутренних нарушителей и защитой внешних активов от внешних злоумышленников. Для этого достаточно будет пересмотреть правила и настройки существующих средств защиты.
  2. Минимум привилегий и контроль доступа на всех уровнях. Этот принцип должен быть реализован не только на уровне ОС, приложений или периметра. Важно реализовать его и во внутренней сети с помошью встроенных в сетевое оборудование или наложенных средств защиты (первые предпочтительнее). Для этого необходимо использовать средства контроля сетевого доступа (NAC) и производные от него (например, TrustSec).
  3. Инспекция и регистрация сетевого трафика. Нарушитель сегодня в состоянии выдать себя за легального субъекта доступа - пользователя, узел, приложение, процесс. В конце концов злоумышленник может и вовсе оставаться невидимым для средств защиты навесных или установленных не в том месте сети (такое часто бывает, когда в сети появляются несанкционированные 3G/4G-модемы или беспроводные точки доступа). Поэтому необходимо фиксировать весь сетевой трафик и проводить его инспекцию на предмет нарушений политики безопасности (ее, кстати, тоже надо пересмотреть в контексте “нулевого доверия”). Для этого необходимо использовать решения класса NBAD (Network-based Anomaly Detection) и SIEM.
Разумеется, отказ от идеи “доверяй, но проверяй” в пользу “проверяй, никогда не доверяй” - это не сиюминутная задача и не одноразовый проект. Это, в первую очередь, смена классической парадигмы, которой до сих пор учат выпускников ВУЗов по ИБ. Главное, поменять сознание. А уж затем планомерно и последовательно внедрять эту идею на существующих средствах защиты, возможно, приобретая и что-то новое, чего раньше не было (обычно это средства или встроенные механизмы защиты внутренней сети). При этом не всегда это требует серьезных финансовых затрат - очень часто все необходимые компоненты уже присутствуют и их просто надо правильно настроить.

Дело осталось за малым - начать!..