В настоящее время все они имеют непропатченные компоненты и отмечены красным https://hub.docker.com/r/library/nginx/tags/
Любой дистрибутив Linux, обновленный до последней версии со всеми примененными исправлениями безопасности, будет иметь уязвимости. Исправления безопасности часто создаются после обнаружения уязвимости. И каждый дистрибутив будет иметь некоторую задержку с момента выпуска исправления вышестоящей библиотекой до его включения в дистрибутив. Когда вы изучите многие из перечисленных уязвимостей, вы часто обнаружите, что для этого дистрибутива еще нет исправления.
Тот факт, что изображение содержит уязвимости, не означает, что его можно использовать. Часто уязвимости связаны с различными включенными библиотеками, которые даже не могут быть вызваны при доступе к контейнеру через любой из опубликованных портов.
Например, некоторые эксплойты списков, которые позволяют эскалацию привилегий от пользователя до root, но многие контейнеры уже работают как root, поскольку пользователь root добавил ограничения и может получить доступ только к одному приложению. А для других эксплойтов может потребоваться библиотека для синтаксического анализа файла, и если ваш веб-сервер не анализирует изображения из неизвестных источников, возможно, будет невозможно использовать этот эксплойт против вашего контейнера.
Лично я считаю, что Docker просто проливает свет на проблему, которая существовала всегда, но которую легко игнорировать. Без этих отчетов люди предполагают, что применение всех доступных исправлений безопасности означает, что они устранили все известные уязвимости. И без Docker они запускают приложения в этих системах без какой-либо изоляции между различными приложениями, что позволяет легко расширить эксплойт в одном приложении и раскрыть все другие приложения и включенные данные на том же компьютере.
Существуют технические аргументы в поддержку вашего вопроса, но я считаю, что в конечном итоге проблема заключается в модели Devops в этом докере, который был разработан, чтобы помочь `` разработчикам '', а не `` Ops '', это о том, чтобы получить код из двери и `` отмеченные '' списки быстро. По состоянию на начало 2017 года с докером все еще намного сложнее работать, чем со многими другими традиционными методами развертывания кода, я уверен, что по мере его развития это изменится, но если вы всегда будете сосредоточены на скорости, вы всегда будете упускать элементы управления, которые хорошая операционная команда может дать вам - это один из них.
Образы настолько же безопасны, насколько и их наименее защищенный компонент. Все эти образы создаются из базового образа, к которому добавляются зависимости, а затем запускается приложение. Если одна из этих зависимостей уязвима, то после этого будет и весь стек.
Вы можете точно увидеть, какие компоненты уязвимы, просмотрев страницу «Теги». Например официальный образ nginx.