The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Уязвимости в сканерах безопасности образов Docker-контейнеров

03.09.2020 08:44

Опубликованы результаты тестирования инструментов для определения неисправленных уязвимостей и выявления проблем с безопасностью в образах изолированных контейнеров Docker. Проверка показала, что в 4 из 6 известных сканеров образов Docker присутствовали критические уязвимости, позволяющие атаковать непосредственно сам сканер и добиться выполнения своего кода в системе, в отдельных случаях (например, при использовании Snyk) с правами root.

Для атаки злоумышленнику достаточно инициировать проверку своего Dockerfile или manifest.json, включающего специально оформленные метаданные, или разместить внутри образа файлы Podfile и gradlew. Прототипы эксплоитов удалось подготовить для систем WhiteSource, Snyk, Fossa и Anchore. Наилучшую безопасность показал пакет Clair, изначально написанный с оглядкой на обеспечение безопасности. Проблем также не выявлено в пакете Trivy. В итоге сделан вывод, что сканеры Docker-контейнеров следует запускать в изолированных окружения или использовать только для проверки собственных образов, а также проявлять осторожность при подключении подобных инструментов к автоматизированным системам непрерывной интеграции.

В FOSSA, Snyk и WhiteSource уязвимость была связана с вызовом внешнего пакетного менеджера для определения зависимостей и позволяла организовать выполнение своего кода через указание команд touch и system в файлах gradlew и Podfile.

В Snyk и WhiteSource дополнительно были найдены уязвимости, связанные с организацией запуска системных команд при разборе Dockerfile (например, в Snyk через Dockefile можно было заменить утилиту /bin/ls, вызываемую сканером, а в WhiteSurce можно было подставить код через аргументы в форме "echo ';touch /tmp/hacked_whitesource_pip;=1.0'").

В Anchore уязвимость была вызвана использованием утилиты skopeo для работы с docker-образами. Эксплуатация сводилась к добавлению в файл manifest.json параметров вида '"os": "$(touch hacked_anchore)"', которые подставляются при вызове skopeo без должного экранирования (вырезались только символы ";&<>", но допускалась конструкция "$()").

Тем же автором проведено исследование эффективности выявления неисправленных уязвимостей сканерами безопасности docker-контейнеров и уровень ложных срабатываний (часть 1, часть 2, часть 3). Ниже показаны результаты тестирования 73 образов, содержащих известные уязвимости, а также дана оценка эффективности определения наличия типовых приложений в образах (nginx, tomcat, haproxy, gunicorn, redis, ruby, node).



  1. Главная ссылка к новости (https://medium.com/@matuzg/tes...)
  2. OpenNews: Cloudflare представил открытый сканер сетевой безопасности Flan Scan
  3. OpenNews: Релиз сканера сетевой безопасности Nmap 7.30
  4. OpenNews: Проект CoreOS представил Clair, инструмент для оценки уязвимостей в контейнерах
  5. OpenNews: Компания Yahoo представила Gryffin, открытый сканер безопасности для Web-приложений
  6. OpenNews: Треть образов контейнеров в Docker Hub содержит опасные уязвимости
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/53650-docker
Ключевые слова: docker, scanner, container, whitesource, snyk, fossa, anchore, trivy, clair
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (60) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Онаним (?), 09:25, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +18 +/
    "Уязвимости в сканерах безопасности".
    Смузихлёбы такие смузихлёбы.

    А вообще в последнее время, когда видишь слово "Docker", становится феерично смешно. Если бы не было так грустно.

     
     
  • 2.3, Аноним (3), 09:54, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Docker не про безопасность. Комментаторы на опеннете пробивают новое дно...
     
     
  • 3.6, Аноним (6), 10:10, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +16 +/
    Docker про опасность?
     
     
  • 4.18, Аноним (18), 12:31, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    Докер - про решение dependency hell, путем отвязывания методов сборки, доставки и запуска приложения и его окружения от особенностей хост-системы.

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

    Если приложение в докере запускается от непривилегированного пользователя, в контейнер не смонтировано чувствительных каталогов ФС хоста, и образ регулярно обновляется - в случае уязвимости приложения выход из контейнера малореален, нужна критичная дыра в ядре, позволяющая любому пользователю получить рута.
    А вот рут в контейнере - это практически рут на хосте.

     
     
  • 5.27, Аноним (27), 15:02, 03/09/2020 Скрыто ботом-модератором     [к модератору]
  • –3 +/
     
     
  • 6.33, Аноним (33), 16:14, 03/09/2020 Скрыто ботом-модератором     [к модератору]
  • +6 +/
     
     
  • 7.37, Michael Shigorin (ok), 18:14, 03/09/2020 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 5.41, Онаним (?), 19:17, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Про создание *Hell вместо dependencyHell, скорее.
     
  • 5.55, Аноним (-), 08:17, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > А вот рут в контейнере - это практически рут на хосте.

    user namespaces в докере не используются что ли?

     
     
  • 6.59, Аноним (18), 10:09, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Можно включить, но дыры в них находят регулярно
    https://www.opennet.ru/opennews/art.shtml?num=53656 не первая и не последняя.
     
  • 5.68, Аноним (68), 01:46, 07/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Изначально-то это задумывалось не так Микросервисные приложения и все тому подо... большой текст свёрнут, показать
     
  • 4.30, sssss (??), 15:54, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • –3 +/
    докер это про то, как сделать из линукса win xp.

    чтобы не пришлось линукс осиливать

     
  • 3.8, Аноним (-), 10:35, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +15 +/
    > Комментаторы на опеннете пробивают новое дно...

    Cамокритично.

    > Docker не про безопасность.

    Software: Docker
    Original author(s): Solomon Hykes
    Developer(s): Docker, Inc.

    https://www.docker.com/

    With Docker, you get an integrated __security__ framework for delivering __safer__ applications and improving policy automation without sacrificing performance. Docker adds an __extra layer of protection___ that travels with your applications in a __secure supply chain__ that traverses any infrastructure and across the application lifecycle.

     
     
  • 4.48, Онаним (?), 22:19, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    With our system, you get every f***ng benefit you can imagine without sacrificing any f***ng hair from you head, cutting nails, washing feet, feeding cat, whatever. Our SHIT(tm) adds so many layers of protection that you have never imagined in your life, a secure security chain that does not allow even kernel to traverse over any tiny bit in your precious big data containing milliards of visits to your ultimately(tm) necessary(tm) pages.

    (of course this all is a load of utter bullshit, but who cares? don't care, drink smoothies)

     
  • 3.9, Аноним (-), 10:38, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Docker не про безопасность.

    Так-так... Вы у нас девелопер-погроммист? Очень жаль... Лет 15 назад профессией программист можно было гордиться.

     
     
  • 4.21, Аноним (18), 12:52, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Лет 15 назад профессией программист можно было гордиться.

    1С:Предприятие был уже тогда.

     
     
  • 5.65, funny.falcon (?), 12:57, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Изучал программирование под 1С 8.3 . Мне понравилось. Иногда жалею, что не стал работать с ним.
     
  • 2.14, Аноним (14), 11:34, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > Уязвимости в сканерах безопасности образов...

    Да прочитай хоть заголовок новости. А смех без причины - признак закоренелого опеннетовца.

    Да, докер - это всего лишь система контейнеризации приложений, что по определению будет опаснее любой виртуальной машины.
    Но вот только к чему докер здесь? Вот приходилось мне когда-то blackduck гонять. В виртуалке... Я сканировал образа докера без использования самого докера.

     

  • 1.2, Аноним (2), 09:33, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +6 +/
    >В итоге сделан вывод, что сканеры Docker-контейнеров следует запускать в изолированных окружениях

    запускать сканер докера внутри докера

     
     
  • 2.22, Аноним (22), 13:17, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +5 +/
    но с начала нужно просканировать докер для запуска сканера докера.
     

  • 1.5, Аноним (5), 10:10, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Нужен сканер безопасности для сканера
     
     
  • 2.12, Брат Анон (?), 11:07, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +3 +/
    На JavaScript, или ещё лучше Rust!
     

  • 1.7, Gefest (?), 10:16, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Традициям Лаборатории Касперского Верны !!
     
  • 1.13, Аноним (13), 11:34, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Что ещё раз показывает, что дыры надо выявлять и чинить, а не оборачивать в 10 слоёв таких же дырявых "контейнеров" "песочниц" и "виртуальных машин".
     
     
  • 2.15, Аноним (14), 11:39, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > дыры надо выявлять и чинить

    Конечно надо! Даже при увеличении стоимости разработки в несколько раз из-за этого... Хотя... Вот я сейчас нахожусь в такой ситуации, когда просто невозможно перейти на третий питон.

    А ещё у одного из моих заказчиков какой-то начальничек говорил что код надо "сразу писать правильно!". Но он вроде потом понял почему над ним не только поржали, но и цитировали потом.

     
     
  • 3.31, Gefest (?), 16:06, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Увеличение ресурсопотребления в несколько раз. Но это же у юзера. Юзер стерпит (в прочем сейчас  могут резко закончится деньги на апгрейды/обломаться закон Мура)...
     
     
  • 4.32, Gefest (?), 16:07, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • –2 +/
    PS Достали. Написать что ли аддон для хрома, чтобы как только процесс с вкладкой жиреет до 500 мб, он начинал этот сайт ддосить ??
     
     
  • 5.35, Аноним (14), 17:12, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Ты там сверху не на тот вопрос ответил, наверное.

    > PS Достали. Написать что ли аддон для хрома, чтобы как только процесс с вкладкой жиреет до 500 мб, он начинал этот сайт ддосить ??

    Пиши, но без плагина можешь рразу начинать дудосить сайты аутглюка, зума и шлака.

     
  • 5.63, НяшМяш (ok), 11:59, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >  Написать что ли аддон для хрома, чтобы [...] сайт ддосить ??

    От всего сердца желаю удачи. Потому что скорее всего получится только свой комп заддосить отожранным хромом )

     
  • 3.47, Онаним (?), 22:15, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Вот я сейчас нахожусь в такой ситуации, когда просто невозможно перейти на третий питон

    Ну вы сами себе этот язычок выбрали. Страдайте.

     
  • 3.52, Юзер (??), 02:18, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Даже при увеличении стоимости разработки в несколько раз из-за этого

    Не экономь. За счёт. Моих. Ресурсов. Сcцука.

    Пусть увеличивается стоимость разработки, 6леaть - вы ж сами работой и баблом дольше будете обеспечены, deбилы.

     
     
  • 4.56, Онаним (?), 09:47, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вот кстати да, я всегда охреневаю с этих камикадзе, ратующих за уменьшение стоимости разработки.
    Во-первых, это понижает общий уровень разработки - обезьянки становятся востребованнее профессионалов.
    Во-вторых, говнокод в перспективе всегда оборачивается херовой тучей убытков - случаев тьма.
    В-третьих, скупой/слепой/жадный всегда платит дважды, просто в других местах. ССЗБ.
     
  • 2.20, Аноним (18), 12:34, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    >  Что ещё раз показывает, что дыры надо выявлять и чинить, а не оборачивать в 10 слоёв таких же дырявых "контейнеров" "песочниц" и "виртуальных машин".

    Ага, запускайте все от рута, и будет вам счастье. Если вас ломанут - подайте в суд, почему дыру не выявили и не починили.

     
     
  • 3.25, Аноним (-), 13:58, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +4 +/
    пффф. как будто вас не ломанут из под докера или виртуалки...
    это может быть даже проще сделать...
    экосистема какого-нить мелкого контейнера всяко проще исследовать, нежели монструозное ядро, сетевой стэк ос и тп. другой вопрос в том, что в виртуалках проще админить, бэкапить и тп.
     
     
  • 4.36, Аноним (14), 17:15, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Дядя, ты кагбэ вообще оторвался от реальности, или просто хороший тролль. Нужно просто инвертировать всё тобой сказанное.
     

  • 1.16, анонимко (?), 12:07, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хотите нормальной изоляции, берите тот же легковесный Alpine и вращайте на KVM.

    Докер это костыль.

     
     
  • 2.17, Аноним (18), 12:25, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Alpine точно не стоит. Там вместо libc здорового человека вкорячен musl, написанный крайне талантливым разработчиком. Переполнение буфера в функции printf - это надо уметь.
     
     
  • 3.26, Аноним (26), 14:00, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +6 +/
    Вот *все* CVE на musl:
    CVE-2012-2114 (5.0)
    CVE-2015-1817 (7.5)
    CVE-2016-8859 (7.5)
    CVE-2017-15650 (7.5)

    Вот CVE на glibc только за прошлый год:
    CVE-2019-9169 (7.5)
    CVE-2019-1010022 (7.5)
    CVE-2019-1010023 (6.8)
    CVE-2019-1010024 (5.0)
    CVE-2019-1010025 (5.0)

    И кто талантливее?

     
     
  • 4.42, erthink (ok), 20:57, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Там с обеих сторон хватает талантов.
    Тем не менее, в musl (пока) намного меньше кода, он (пока) сильно меньше засран слоями legacy и совместимости со всем сущим.
    С другой стороны, и щиплют musl пока в разы меньше.
     
  • 4.43, ALex_hha (ok), 21:39, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Забыл самое главное - количество хостов с glibc и musl
     
     
  • 5.60, Аноним (26), 11:54, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    Это ж надо все роутеры и прочую эмбедовку посчитать. У меня нет таких данных. Поделись, если у тебя есть.
     
  • 2.45, Hellscream (?), 22:06, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Alpine можно и на хосте вращать.
     

  • 1.19, Michael Shigorin (ok), 12:33, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –5 +/
    > изначально написанный с оглядкой на обеспечение безопасности

    Да уж, и впрямь девляпсы -- анализатор непоймичего писать левойногой, не включая голову...

    С дыркером всё стало ясно ещё после тех детских ошибок пятилетней давности в уже набирающем обороты "продукте", вылезшем там, куда не смогли добраться ovz-шники, увы.

     
     
  • 2.23, Аноним (-), 13:32, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +11 +/
    повторю вопрос тут, а то в оригинальной локации вы отвечать не спешите:

    >>> единственными нормальными контейнерами в плане изоляции были OpenVZ-шные
    >> и чем же OpenVZ-контейнеры безопасней тех, что на базе cgroups?
    > Изоляцией.

    поясните, пожалуйста, раз вы специалист в этом вопросе

     
     
  • 3.40, Michael Shigorin (ok), 19:10, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • –6 +/
    ovz изначально делался для хостинга, т е для агрессивной с обеих сторон среды с... большой текст свёрнут, показать
     
     
  • 4.58, Онаним (?), 09:50, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да всё нормально с OpenVZ, просто после проталкивания основной массы бэкграунда в ядро объём работы сильно подсократился, чего сами в общем-то не ожидали.

    Ну и то, что понауехал, это очень хорошо. По крайней мере хватило мозгов и, главное, смелости не задерживаться там, где перспектив 0. Red Hat - местечко куда лучше.

     

  • 1.28, Аноним (28), 15:39, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто бы сомневался.

    Надо больше дырявых контейнеров, контейнеров в контейнерах. И внутри ещё снапошлаков. Вот тогда заживём.

    Сначала наделают ерунды, а потом с ней героически сражаются.

     
     
  • 2.67, Легивон (?), 13:52, 06/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    О ужас, мы потеряли 3% производительности железа и получили 500% к скорости выпуска релиза.
    Конечно, вместо контейнеров нам нужно поддерживать 20 разных способов установки ПО, какие-то 3rd party репозитории которые постоянно падают и ломают обновление всей системы.
     

  • 1.29, Аноним (28), 15:41, 03/09/2020 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +3 +/
     
  • 1.38, Нанобот (ok), 18:14, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Предлагаю разработать сканеры безопасности для сканеров безопасности
     
  • 1.44, ALex_hha (ok), 21:44, 03/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    А почему тут все резко начали кукарекать про безопасность? Такого рода софт, как правило, запускают внутри сети и/или на ci/cd системах, куда у мамкиных хацкеров изначально не может быть доступа.

    К тому же началась школа и количество активных хакеров интернете уменьшилось на 60%

     
     
  • 2.46, Онаним (?), 22:14, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    То-то что ни девляпсная монга, то утечка.
    А мужики-то и не знают, что к CI/CD системам не то, что школота, NSA не подлезет.
     
  • 2.49, Аноним (-), 23:35, 03/09/2020 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А почему тут все резко начали кукарекать

    вот в таком виде вопрос уже достаточен
    и ответ очевиден - иксперты опеннет

     
  • 2.57, Testtest (?), 09:48, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Я вообще удивляюсь, чего на опеннете начали кукарекать про безопасность.
    Ранее тут повально были мнения от старожилов и почтенных бородачей в свитерах, что фаерволы - пустая трата времени, никто никому не нужен и никто никого ломать не будет.
    Переобулся опеннет.
     
     
  • 3.62, Аноним (62), 11:57, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    firewall не про безопасность
     
     
  • 4.64, Testtest (?), 12:28, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это как пример
     
  • 2.61, Аноним (26), 11:57, 04/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > Такого рода софт, как правило, запускают внутри сети и/или на ci/cd системах, куда у мамкиных хацкеров изначально не может быть доступа.

    Ну дык вот новость как раз о том, как он внезапно может появиться.

     
     
  • 3.66, ALex_hha (ok), 16:27, 05/09/2020 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >> Такого рода софт, как правило, запускают внутри сети и/или на ci/cd системах, куда у мамкиных хацкеров изначально не может быть доступа.
    > Ну дык вот новость как раз о том, как он внезапно может
    > появиться.

    Если не следить за софтом - то хацкеры внезапно могут появиться на любой системе, даже без докера

     

  • 1.69, user455 (?), 13:46, 07/09/2020 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    докер - это не про изоляцию, и не про безопасность. докер - это про то, что девелопер теперь может сам выкатывать свое приложение без помощи админа/девопса/инфраструктурного инженера и т.д.

    сам может управлять лимитами ресурсов, сам может управлять балансировкой и т.д.

    достаточно только написать yaml файл для клауд-хостет сверверлес кластера кубернетес.

    в россии правда это пока не очень очевидно.

     
     
  • 2.70, ALex_hha (ok), 20:34, 08/09/2020 [^] [^^] [^^^] [ответить]  
  • +/
    > докер - это не про изоляцию, и не про безопасность. докер -
    > это про то, что девелопер теперь может сам выкатывать свое приложение
    > без помощи админа/девопса/инфраструктурного инженера и т.д.
    > сам может управлять лимитами ресурсов, сам может управлять балансировкой и т.д.
    > достаточно только написать yaml файл для клауд-хостет сверверлес кластера кубернетес.

    Спасибо, но нет, спасибо. Насмотрелся на монстров от таких вот senior full stack архитекторов. Лучше пусть и дальше код пишут

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру