Как стать автором
Обновить
92.66
Swordfish Security
Информационная безопасность, DevSecOps, SSDL

Анонс: Ломаем приложение в Docker и строим безопасный пайплайн в Gitlab

Время на прочтение2 мин
Количество просмотров3.7K

20 ноября пройдет ежегодная конференция Archdays, где мы c Пашей Канн в рамках демонстрации покажем пример того, как может быть взломано приложение в Docker и как с нуля собрать пайлпайн с проверками безопасности на базе GitLab CI.

Взлом будет проходить в соответствии с инструкцией репозитория Pentest-In-Docker, который мы подготовили специально для Archdays. Есть также версия на русском языке, попробовать получить root на linux-хосте можно уже сейчас.

Эксплуатация уязвимости состоит из следующих этапов:

  • Получение доступа в shell контейнера под пользователем www-data, используя RCE - CVE-2014-6271 (Shellshock);

  • Повышение привилегий до root через FakePip exploit;

  • Подключение к docker.sock и развертывание нового контейнера ubuntu с сервисом SSH для дальнейшего подключения (с маунтом /:/host и максимальными привилегиями);

  • Создание пользователя hidle на хосте;

  • Подключение к хосту с новым пользователем;

  • Разворачивание Weave Scope.

Это один из сценариев того, как может действовать злоумышленник, которому удалось обнаружить RCE внутри приложения вместе с подключенным docker.sock. Другой сценарий выхода за пределы контейнера в случае, если docker.sock отсутствует, - воспользоваться уязвимостью на уровне ядра, например, CVE-2016-5195 или CVE-2020-14386. И наконец, самый простой способ, воспользоваться публично доступным незащищенным Docker API. Здесь защищенность инфраструктуры будет зависеть от настроенной аутентификации и авторизации, версии Docker и наличии тех 0-day уязвимостей, про которых вы еще не знаете.

Кстати, развертывание Weave Scope здесь не случайно. Именно так поступала группировка TeamTNT для получения контроля над инфраструктурой.

Образ также может быть использован для пилотирования коммерческих и open-source решений по Container Security, чтобы посмотреть, как они обнаруживают вредоносные действия.

Во второй части мы продемонстрируем создание пайплайна с проверками безопасности образа на примере GitLab CI. В этот пайплайн входят проверки утилитами Hadolint, Dockle и Trivy, которые помогают предотвратить выкладывание небезопасных образов в производственную среду. Это, в свою очередь, уменьшает шансы на успешную компрометацию инфраструктуры по примеру, который мы показали в первой части. Инструкции по встраиванию и пайплайн можно найти на другом нашем репо.

Ссылка на программу: https://archdays.ru/speakers/#track-bezopasnost-v-raspredelennyh-sistemah

Если вы вдруг хотите прийти на конференцию, но по каким-то причинам еще не купили билет, то вот вам промокод на скидку 50%: SwordfishSecurityArchdays20

Полезные материалы

A Methodology for Penetration Testing Docker Systems - хорошая методичка по тестированию приложений в Docker

Awesome DevSecOps на русском - большая подборка материалов по DevSecOps на русском языке

Awesome Docker Security - подборка по безопасности Docker

Cloud Security Tools - подборка инструментов по Cloud Security

CloudSecDocs - Wiki по Kubernetes, Docker и Cloud Security, в том числе по подходам при тестировании на проникновение

Теги:
Хабы:
+4
Комментарии0

Публикации

Информация

Сайт
swordfish-security.ru
Дата регистрации
Дата основания
Численность
101–200 человек
Местоположение
Россия
Представитель
SwordfishTeam