Методы обеспечения безопасности при работе с Docker
- Authors: 1, 1
-
Affiliations:
- Поволжский государственный университет телекоммуникаций и информатики
- Issue: Vol 1 (2023)
- Pages: 418-418
- Section: Цифровые технологии: настоящее и будущее
- URL: https://journals.eco-vector.com/osnk-sr2023/article/view/409869
- ID: 409869
Cite item
Full Text
Abstract
Обоснование: Docker — это мощная платформа для упаковки и запуска приложений в изолированных средах, которая может помочь обеспечить безопасность основной машины. Однако по умолчанию контейнеры не полностью безопасны, и необходимо использовать настройки безопасности для минимизации угроз. При создании контейнера необходимо использовать некоторые настройки безопасности, которые в будущем усложнят жизнь злоумышленнику.
Цель: вывести основные методы, которые помогут улучшить безопасность контейнеров и предотвратить возможные атаки.
Методы:
- Установить лимит ресурсов доступных контейнеру, чтобы защититься от атак типа DDoS, которые могут заставить контейнер максимально загрузить ЦП.
Пример опции для ограничения использования ЦП четырьмя ядрами: --cpuset-cpus="0-3"
- Использовать непривилегированного пользователя внутри контейнера. Docker по умолчанию в каждом контейнере использует пользователя root с максимальными правами, что может упростить дальнейшее продвижение для злоумышленников [1].
- Ввести запрет на повышение привилегий пользователей внутри контейнера, это позволит предотвратить повышения привилегий в контейнере путем использования setuid и setgid путем добавления опции: --security-opt=no-new-privileges
- Не предоставлять доступ к UNIX-сокету Docker. При получении доступа к сокету злоумышленник сможет получить root права, связаться с операционной системой хоста и контролировать её.
- Использовать в качестве образов, на которых основаны контейнеры, легковесные образы заранее проверенных издателем систем, с минимальным числом компонентов.
Результаты: применив данные методы можно достичь увеличение уровня безопасности Docker-контейнеров. Были уменьшены возможности атак с использованием повышения привилегий пользователей и атак типа DDoS, а также был предотвращен доступ к UNIX-сокету Docker. Использование легковесных образов также помогло уменьшить количество возможных уязвимостей. В целом, применение данных методов позволяет достичь более высокого уровня безопасности в среде Docker, что в свою очередь может уменьшить риск потенциальных угроз для приложений и данных, работающих в контейнерах.
Выводы: В данной статье было рассмотрено несколько методов, которые помогут защитить контейнеры. Несмотря на то, что компания Docker уже предоставляет контейнеры с минимальным количеством возможностей, все еще остаются потенциальные векторы атак [2]. Для реализации защиты используется правило уменьшения количества привилегий контейнера, выдаваемых ему по умолчанию.
Keywords
Full Text
Обоснование: Docker — это мощная платформа для упаковки и запуска приложений в изолированных средах, которая может помочь обеспечить безопасность основной машины. Однако по умолчанию контейнеры не полностью безопасны, и необходимо использовать настройки безопасности для минимизации угроз. При создании контейнера необходимо использовать некоторые настройки безопасности, которые в будущем усложнят жизнь злоумышленнику.
Цель: вывести основные методы, которые помогут улучшить безопасность контейнеров и предотвратить возможные атаки.
Методы:
- Установить лимит ресурсов доступных контейнеру, чтобы защититься от атак типа DDoS, которые могут заставить контейнер максимально загрузить ЦП.
Пример опции для ограничения использования ЦП четырьмя ядрами: --cpuset-cpus="0-3"
- Использовать непривилегированного пользователя внутри контейнера. Docker по умолчанию в каждом контейнере использует пользователя root с максимальными правами, что может упростить дальнейшее продвижение для злоумышленников [1].
- Ввести запрет на повышение привилегий пользователей внутри контейнера, это позволит предотвратить повышения привилегий в контейнере путем использования setuid и setgid путем добавления опции: --security-opt=no-new-privileges
- Не предоставлять доступ к UNIX-сокету Docker. При получении доступа к сокету злоумышленник сможет получить root права, связаться с операционной системой хоста и контролировать её.
- Использовать в качестве образов, на которых основаны контейнеры, легковесные образы заранее проверенных издателем систем, с минимальным числом компонентов.
Результаты: применив данные методы можно достичь увеличение уровня безопасности Docker-контейнеров. Были уменьшены возможности атак с использованием повышения привилегий пользователей и атак типа DDoS, а также был предотвращен доступ к UNIX-сокету Docker. Использование легковесных образов также помогло уменьшить количество возможных уязвимостей. В целом, применение данных методов позволяет достичь более высокого уровня безопасности в среде Docker, что в свою очередь может уменьшить риск потенциальных угроз для приложений и данных, работающих в контейнерах.
Выводы: В данной статье было рассмотрено несколько методов, которые помогут защитить контейнеры. Несмотря на то, что компания Docker уже предоставляет контейнеры с минимальным количеством возможностей, все еще остаются потенциальные векторы атак [2]. Для реализации защиты используется правило уменьшения количества привилегий контейнера, выдаваемых ему по умолчанию.
About the authors
Поволжский государственный университет телекоммуникаций и информатики
Email: mikop63@gmail.com
студент, группа ИБТС-01, факультет кибербезопасности и управления (факультет № 1)
Russian Federation, СамараПоволжский государственный университет телекоммуникаций и информатики
Author for correspondence.
Email: i.pozdnyak@psuti.ru
References
- docs.docker.com [Электронный ресурс]. Isolate containers with a user namespace. Доступ по: https://docs.docker.com/engine/security/userns-remap/
- medium.com [Электронный ресурс]. On the security of containers. Доступ по: https://medium.com/@ewindisch/on-the-security-of-containers-2c60ffe25a9e