Насколько безопасны ваши контейнеры?
Часто наша самая большая сила является и нашей самой большой слабостью, как и в случае с контейнерами. В то время как контейнеризация позволяет «эластичное» развертывание программного обеспечения, она также создает несогласованную поверхность для отслеживания нарушений и гораздо большую территорию для защиты. Большой риск, связанный с использованием контейнеров, связан с фактическими преимуществами, вокруг которых они были построены, например, их способность мгновенно разворачиваться вверх или вниз делает их почти невозможными для традиционной оценки риска. Контейнеры совместно используют операционные системы и используют только минимальный объем ресурсов, необходимых для запуска приложений, поэтому, во главе с Docker, они сейчас так популярны. Однако общей проблемой является тот факт, что контейнеры используют одну и ту же ОС без гипервизора. Еще одна распространенная проблема заключается в том, что некоторые платформы, такие как Docker, позволяют пользователям извлекать готовые образы из общедоступных репозиториев, что может подвергать сети ряду угроз и уязвимостей.
По данным Forrester Research, 31% корпоративных ИТ-организаций развернули контейнеры в рамках своих облачных операций. Мы слишком много слышали о контейнерах, о том, что они станут следующим большим событием, о будущем развертывания приложений и т. д. и т. п. Мы также часто слышим о том, что хранение и безопасность являются двумя основными проблемами для предприятий, стремящихся перейти на контейнеры, а что касается безопасности, то над этим все еще ведется работа. По мере того, как внедрение контейнеров продолжается нынешними темпами, многие проблемы, связанные с безопасностью, решаются по мере их возникновения.
Контейнеры: новой технологии нужна новая безопасность
Весь ажиотаж вокруг контейнеров в значительной степени связан с заметным улучшением производительности, когда контейнеры, архитектура микросервисов и DevOps объединяются в выигрышную комбинацию, подобную той, которую имеет Netflix. Проблема в том, что в отличие от виртуальных машин, которые относительно легко защитить, потому что они обычно существуют в течение нескольких недель и могут периодически сканироваться, контейнеры — это совершенно другая игра с мячом, и они могут существовать в течение нескольких минут или даже нескольких секунд.
Короткая продолжительность жизни, связанная с контейнерами, наряду с возможностью мгновенного создания или уничтожения — еще два ключевых преимущества, которые имеют неприятные последствия с точки зрения безопасности, поскольку они приводят к отсутствию видимости. Вот почему контейнеры нельзя эффективно сканировать с помощью традиционных инструментов сканирования. Новые инструменты и ресурсы медленно разрабатываются многими проектами с открытым исходным кодом, а также стартапами, поставщиками облачных услуг и самой Docker, готовыми принять вызов. Сегодня у нас есть широкий спектр инструментов безопасности, которые подходят для всех аспектов жизненного цикла контейнера. Хотя быстрое внедрение архитектуры контейнеров и реклама дополнительных ресурсов безопасности повысили доверие людей к безопасности контейнеров, они могут быть не такими безопасными, как нам хотелось бы думать.
Скорость против безопасности
При высоком усыновлении всегда хочется стать первым человеком на Луне, а безопасность — это то, что часто приходит на ум после того, как вершина достигнута. В прошлом году была обнаружена уязвимость ядра Linux под названием «грязная корова», которая предоставляет доступ к системам развертывания контейнеров на основе Linux и, по-видимому, висела около девяти лет. Несмотря на то, что исправление было выпущено, а серьезных атак на развертывание контейнеров не произошло, это действительно новая технология, и важно предполагать, что хакеры найдут способ, потому что они всегда это делают.
Люди ожидают, что контейнеры возьмут верх, а виртуальные машины исчезнут. Многие организации инвестируют в контейнеры, и, попав на крючок, они обычно довольно быстро расширяются. Это когда безопасность часто уступает место амбициям, пока не станет слишком поздно или не придет время решить проблему, которой можно было бы или нужно было избежать в первую очередь.
DevSecOps — это ключ
Много говорят о том, что DevOps опережает безопасность, поэтому добавление «Sec» к «DevOps» становится необходимостью. Организации продолжают бороться с контейнерами, потому что традиционные подходы к безопасности не строятся вокруг безопасности с нуля, и именно здесь в игру вступает DevSecOps. Организациям необходимо изменить свой подход к безопасности, интегрировав сканирование уязвимостей в самое сердце цикла DevOps. Таким образом, каждый контейнер можно сканировать на всех этапах его короткого жизненного цикла, чтобы обеспечить стопроцентное обнаружение уязвимостей.
Убедиться, что Sec не отстает от DevOps, — идея, которая постепенно завоевывает популярность. Многие команды DevOps интегрируют безопасность в свои рабочие процессы с нуля. Активное участие в обеспечении безопасности сетей и инфраструктуры является частью этой задачи, и эта задача будет только усугубляться, если ее не выполнять правильно. Поскольку контейнеры все еще молоды, и их количество и популярность будут только расти, крайне важно, чтобы безопасность не оставалась в стороне, и чтобы организации осознали и удовлетворили потребность в новом подходе к безопасности, который должен сделать безопасность неотъемлемой частью каждого процесса. процесс.
Думай, как твой оппонент
Отличный способ проверить наличие уязвимостей — думать как хакер, а в некоторых случаях даже взломать себя. Это то, что Netflix делает с программным обеспечением, которое фактически входит в их систему и случайным образом отключает критические системы и функции, поэтому все всегда готовы к такому повороту событий. Это также популярно среди разработчиков как способ протестировать код и убедиться, что все сервисы могут функционировать и выживать независимо друг от друга.
Важно адаптироваться к боевому стилю ваших врагов. Поскольку контейнеры любят быстро приходить и уходить, для их защиты важно иметь решения безопасности, которые в первую очередь могут не отставать от них. В случае сетевой защиты платформа, использующая SDN, может использовать более мощные инструменты для защиты такой системы, как, например, Calico. SDN также позволяют сегментировать сетевой трафик по разным пользователям, командам, приложениям и средам, что значительно повышает общую безопасность и идентификацию угроз.
Ешьте, дышите и спите в безопасности
Сама эфемерная природа контейнеров делает их идеальной единицей развертывания, но именно это бросает вызов нашим традиционным методам обеспечения безопасности. Это больше не запуск сканирования каждый раз, когда срабатывает напоминание, а скорее активный поиск способов взлома вашей собственной системы на каждом этапе вашего рабочего процесса. Делая безопасность делом каждого, вы не только убедитесь, что все осведомлены о безопасности, но и подготовите всех к возможному взлому. Простая ошибка, такая как открытие веб-страницы, контролируемой злоумышленником, может быть использована для получения корневого доступа к виртуальной машине Linux с помощью метода, называемого перепривязкой хоста. Хорошо информированный сотрудник поймет ошибку и сможет предупредить необходимые группы, чтобы они отреагировали до того, как будет нанесен большой ущерб.
Контейнеры сегодня намного безопаснее, чем год назад, и они становятся безопаснее с каждой минутой. Однако важно помнить, что хакеры тоже становятся лучше. Именно благодаря постоянному усердию и превращению безопасности в часть вашей жизни действительно достигаются высокие уровни безопасности. Кроме того, когда безопасность — это весело, интересно и сложно, каждая уязвимость воспринимается как опыт обучения, а это именно то отношение, которое вам нужно.