ѕодпишитесь на наш Telegram-канал Ѕудьте в курсе последних новостей 👇 😉 ѕодписатьс€
ѕоддержим в трудное врем€ —пециальное предложение на техническую поддержку вашей »“ - инфраструктуры силами наших экспертов ѕодобрать тариф
ѕоставка оборудовани€ √аранти€ и помощь с настройкой. —кидка дл€ наших читателей по промокоду WIKIMERIONET  упить
»нтерфейс статистики Merion Mertics показывает ключевые диаграммы и графики по звонкам, а также историю звонков в формате, который легко поймет менеджер ѕопробовать бесплатно
¬недрение
офисной телефонии
Ўаг на пути к созданию доступных унифицированных коммуникаций в вашей компании ¬недрить
»нтеграци€ с CRM ѕомогаем навести пор€док с данными
и хранить их в единой экосистеме
ѕодключить
»“ Ѕезопасность ”мна€ информационна€ безопасность дл€ вашего бизнеса «аказать
ћерион Ќетворкс

5 минут чтени€

 онтейнеры Docker и Kubernetes - движуща€ сила современного жизненного цикла разработки программного обеспечени€. ’от€ Docker - более безопасный вариант, чем работа непосредственно на главном компьютере, при работе с контейнерами может возникнуть множество потенциальных проблем безопасности.

10 лучших практик безопасности Docker

¬ эту статью включены дес€ть рекомендаций по безопасности контейнеров, которые помогут предотвратить атаки и нарушени€ безопасности.


1. –егул€рно обновл€йте Docker и хост

”бедитесь, что ваш хост и Docker обновлены. »спользуйте последнюю версию ќ— и программное обеспечение дл€ контейнеризации, чтобы предотвратить у€звимости системы безопасности.  аждое обновление включает критические исправлени€ безопасности, необходимые дл€ защиты хоста и данных.

ќбновление Docker не ограничиваетс€ самой платформой. «апущенные контейнеры не обновл€ютс€ автоматически. ¬ы также должны обновить контейнеры и образы, на которых они основаны.


2. Ќастройте квоты ресурсов.

„тобы избежать взлома контейнеров, которые чрезмерно потребл€ют ресурсы, установите ограничени€ на использование пам€ти и ÷ѕ Docker.

Ќе настраива€ квоты ресурсов, вы предоставл€ете контейнеру доступ ко всем ресурсам ќ«” и ÷ѕ хоста. ѕоскольку это настройка по умолчанию, рекомендуетс€ ограничить количество ресурсов, которые может использовать контейнер, чтобы это не нарушило работу других служб.

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


3. »спользуйте пользователей без полномочий root

Docker позвол€ет запускать контейнер в привилегированном режиме. ’от€ это может быть более быстрый способ обойти некоторые протоколы безопасности, вы всегда должны воздерживатьс€ от использовани€ этой практики.

ќпасность запуска привилегированного контейнера заключаетс€ в том, что он открывает дверь дл€ потенциальной вредоносной активности. ѕривилегированный пользователь Docker имеет те же привилегии, что и root. Ёто означает, что у него есть доступ к функци€м €дра и другим устройствам на хосте. «лоумышленник может войти в вашу хост-систему через контейнер и подвергнуть опасности все, что находитс€ на ней.

ѕридерживатьс€ исключительно пользователей без полномочий root просто, так как это настройки Docker по умолчанию. „тобы изменить конфигурацию по умолчанию, вам нужно будет добавить флаг --privileged в команду docker run. ќднако это серьезна€ угроза безопасности и не должна использоватьс€.


4. ќграничьте возможности

 онтейнеры имеют ограниченный набор возможностей Linux. Ќапример, они могут позволить пользователю запускать контейнер с эффективностью root, но без полных привилегий root.

ќграниченные возможности Docker €вл€ютс€ настройками безопасности по умолчанию, и они одинаковы дл€ каждого контейнера. ѕоэтому рекомендуетс€ изменить возможности, чтобы включить только то, что необходимо. јдминистратор управл€ет ими с помощью параметров --cap-add и --cap-drop.

—амый безопасный способ настроить возможности контейнера - удалить все (использу€ параметр --cap-drop = ALL), а затем добавить необходимые.


5. «апретить новые привилегии

 ак видно из приведенного выше примера, Docker позвол€ет измен€ть возможности и привилегии контейнеров после их запуска. „тобы предотвратить атаки повышени€ привилегий, рекомендуетс€ определить привилегии контейнера.

„тобы запретить процессам-контейнерам получать новые привилегии, используйте флаг --security-opt со значением no-new-privileges: true. ƒобавление флага в команду docker run перезаписывает все правила, которые вы установили с помощью параметров --cap-add и --cap-drop.

 роме того, вы можете удалить или отключить двоичные файлы setuid и setgid в образах. Ёто гарантирует, что функци€ не будет использоватьс€ дл€ обхода/инъекции пути, переполнени€ буфера и атак с повышением привилегий.


6. »спользуйте надежные образы

ѕри извлечении образа из онлайн-реестров убедитесь, что оно из безопасного и надежного источника. —амый безопасный вариант - использовать официальный центр Docker. »збегайте общедоступных сторонних реестров, в которых отсутствуют политики контрол€.

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

Ћучше всего зайти в Docker Hub и посмотреть, сможете ли вы найти там нужный образ. Ёто крупнейша€ в мире библиотека и сообщество Docker с более чем 100 000 образов контейнеров.


7. ƒержите образы и контейнеры легковесными

—ведите к минимуму поверхность атаки контейнеров Docker, использу€ минимальный базовый образ и уменьшив количество компонентов контейнера. —охранение небольшого размера образа помогает предотвратить нарушени€ безопасности и ускор€ет работу контейнера.


8. Ѕезопасные реестры

–еестр Docker - это система доставки контента, используема€ дл€ хранени€ и предоставлени€ образов дл€ ваших контейнеров. ¬ы можете использовать официальный онлайн-реестр Docker или настроить частный реестр на своем хосте.

ƒл€ решени€ дл€ хранени€ образов корпоративного уровн€ следует использовать доверенный реестр Docker (DTR - Docker Trusted Registry ). ¬ы можете установить реестр за брандмауэром, чтобы предотвратить возможные нарушени€.


9. Ќе открывайте сокет демона Docker

Docker взаимодействует с сокетом домена UNIX, который называетс€ /var/run/docker.sock. Ёто основна€ точка входа дл€ Docker API. Ћюбой, у кого есть доступ к сокету демона Docker, также имеет неограниченный root-доступ.

–азрешение пользователю писать в /var/run/docker.sock или открывать сокет контейнеру - это серьезна€ угроза безопасности дл€ остальной системы. ѕо сути, это дает ему привилегии root.

”становка сокета Docker внутри контейнера не ограничивает его привилегированным доступом внутри контейнера. Ёто позвол€ет контейнеру полностью контролировать хост и все другие контейнеры. —ледовательно, это не рекомендуема€ практика.


10. ќтслеживайте API и сетевую активность.

API и сети играют решающую роль в безопасности Docker.  онтейнеры Docker обмениваютс€ данными через API и сети. —ледовательно, чтобы избежать вторжени€, архитектура должна быть настроена безопасно.

јдминистраторы безопасности недавно обнаружили новый тип атаки, использующий неправильно настроенные API-интерфейсы Docker. ’акеры используют плохо настроенные API-интерфейсы и сетевую безопасность, используют их дл€ развертывани€ образа и запуска вредоносного контейнера в хост-системе.

ѕомимо безопасной настройки сетей и API, вам также необходимо отслеживать действи€ дл€ вы€влени€ потенциальных аномалий.