Обзор сканеров безопасности контейнеров для поиска уязвимостей

Обзор сканеров безопасности контейнеров для поиска уязвимостей

Life-Hack [Жизнь-Взлом]/Хакинг

#Обучение

Безопасны ли ваши контейнеры и образа Docker? 

Хакеры стали очень активными в последние несколько лет. 

Даже крупные организации, такие как Facebook, Google и Yahoo, стали жертвами атак, потеряв миллионы долларов. 

Вот почему сегодня безопасность приложения – это самое важное в любой организации. 

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

Таким образом, фактор безопасности этих контейнеров очень важен. 

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

У небольших образов контейнеров меньше шансов подвергнуться потенциальным уязвимостям. 

Контейнеризация – это один из основных этапов процесса DevOps, на котором безопасность требует серьезного внимания. 

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

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

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

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

Давайте изучим доступные варианты. 

Clair


Clair – это проект с открытым исходным кодом, который предлагает сканирование уязвимостей контейнеров Docker и приложений (appc). 

Это механизм анализа, управляемый API, который слой за слоем проверяет наличие недостатков безопасности в контейнерах. 

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

Также он уведомляет о потенциальной угрозе в контейнере. 

А именно, он уведомляет вас о потенциальной угрозе в контейнере на основе базы данных Common Vulnerabilities and Exposures (CVE) и аналогичных баз данных. 

Если выявляется какая-либо угроза или проблема, которая уже есть в Национальной базе данных уязвимостей (NVD), инструмент извлекает подробности и предоставляет их в отчете. 

Особенности Clair: 

  • Сканирует существующие уязвимости и предотвращает их появление в будущем. 
  • Предоставляет REST API для интеграции с другими инструментами 
  • Отправляет уведомление при обнаружении любой уязвимости 
  • Предоставляет отчет в формате HTML со всеми деталями сканирования 
  • Регулярно обновляет метаданные 

Trivy

Trivy – это простой и комплексный сканер уязвимостей для контейнеров и других артефактов. 

Он помогает обнаруживать уязвимости пакетов операционной системы (Alpine, RHEL, CentOS и т. д.) и зависимости приложений (Bundler, Composer, npm, yarn и т. д.). 

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

Особенности Trivy 

  • Обнаружение комплексных уязвимостей 
  • Простота – укажите только имя образа или имя артефакта. 
  • Быстрота – первое сканирование завершится в течение 10 секунд (в зависимости от вашей сети). Последующее сканирование завершится за считанные секунды 
  • DevSecOps – подходит для CI, таких как Travis CI, CircleCI, Jenkins, GitLab CI и т. д. 
  • Поддержка нескольких форматов – в том числе: образ контейнера, локальная файловая система, удаленный репозиторий git. 
  • Простая установка – возможна установка apt-get, yum install и brew без предварительных условий, таких как установка БД, библиотек и т. д.

Anchore

Anchore – это проект с открытым исходным кодом для глубокого анализа образов Docker. 

Он также удостоверяет образ, сообщая, защищен он или нет. 

Anchore может работать как на отдельной платформе, так и на платформах оркестровки, таких как Kubernetes, Rancher, Amazon ECS, Docker Swarm. 

Anchore также доступен в плагинах Jenkins для сканирования пайплайнов CI/CD. 

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

Вы также можете использовать свою собственную политику безопасности для оценки образов.

Dagda

Dagda – это инструмент с открытым исходным кодом для статического анализа известных уязвимостей, таких как трояны, вредоносное ПО, вирусы и т. д., в образах и контейнерах. 

Он использует антивирусный движок ClamAV для обнаружения таких уязвимостей. 

Сначала он импортирует все известные уязвимости из CVE, Red Hat Security Advisories (RHSA), Red Hat Bug Advisories (RHBA), идентификаторов Bugtraq (BID), базы данных безопасности Offensive в MongoDB. 

Затем в соответствии с импортированными уязвимостями анализируются образы и контейнеры. 

Особенности Dagda: 

  • Поддерживает несколько образов Linux (CentOS, Ubuntu, OpenSUSE, Alpine и т. д.) 
  • Анализирует зависимости от java, python node js, javascript, ruby, PHP
  • Интегрируется с Falco для мониторинга работающих контейнеров 
  • Сохраняет каждый отчет анализа в MongoDB для ведения истории каждого образа докера или контейнера. 

Falco

Falco – это проект с открытым исходным кодом как механизм обнаружения угроз в Kubernetes. 

Это инструмент безопасности во время выполнения для обнаружения аномальной активности на хостах и контейнерах, работающих в Kubernetes. 

Он обнаруживает любое неожиданное поведение в вашем приложении и предупреждает вас об угрозах во время выполнения. 

Он использует синтаксис, подобный tcpdump, для создания правил и использует библиотеки, такие как libscap и libinsp, которые могут входить и извлекать данные с вашего сервера API Kubernetes или среды выполнения контейнера. 

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

Правила фокусируются на системных вызовах и на том, какие системные вызовы разрешены и запрещены в системе. 

Aqua Security

Aqua Security защищает приложения, созданные с использованием облачных технологий, таких как контейнеры. 

Он обеспечивает сканирование уязвимостей и управление для таких оркестраторов, как Kubernetes. 

Это комплексная платформа безопасности, обеспечивающая безопасность приложений, работающих в контейнерах, и их выполнение в безопасной среде. 

Когда разработчики создают образы, у них есть набор технологий и библиотек для их создания. 

Aqua security позволяет им сканировать эти образа, чтобы убедиться, что они “чистые”, в них нет известных уязвимостей, в них нет открытых паролей или секретов, а также нет угроз безопасности, которые могли бы сделать этот образ уязвимым. 

Если обнаружена какая-либо уязвимость, aqua security сообщает о них разработчику и рекомендует, что им нужно сделать, чтобы исправить эти уязвимые образы. 

Aqua Security также имеет технологии, гарантирующие, что образ не подвергнется атаке или проникновению с какой-либо угрозой безопасности, когда контейнер запущен в продакшен. 

Docker Bench 

Docker Bench Security – это скрипт с несколькими автоматическими тестами для проверки лучших практик развертывания контейнеров в производственной среде. 

Чтобы запустить систему безопасности Docker Bench, вам понадобится Docker 1.13.0 или новее. 

Вам необходимо выполнить приведенную ниже команду, чтобы запустить систему безопасности Docker Bench. 

docker run -it --net host --pid host --userns host --cap-add audit_control \
-e DOCKER_CONTENT_TRUST=$DOCKER_CONTENT_TRUST \
-v /var/lib:/var/lib \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /usr/lib/systemd:/usr/lib/systemd \
-v /etc:/etc --label docker_bench_security \
docker/docker-bench-security 

После этого скрипт запустится, и он поделится деталями по северети INFO, WARN, PASS. 

После запуска скрипта вы можете проверить все предупреждающие сообщения и внести исправления. 

Harbor

Harbour – это облачный реджестри с открытым исходным кодом, который предоставляет политики безопасности и управление доступом на основе ролей (RBAC).r 

Он хранит, подписывает и сканирует образы Docker на наличие уязвимостей.

JFrog Xray

JFrog Xray – это универсальный инструмент безопасности с открытым исходным кодом и универсальный инструмент анализа артефактов. 

С JFrog Xray вы можете постоянно сканировать свои артефакты и зависимости на предмет уязвимостей безопасности и проблем с лицензионным соответствием. 

Как универсальное решение для анализа артефактов, Xray проактивно выявляет уязвимости безопасности и лицензионные риски. 

Перед внедрением в производство Xray изначально интегрируется с JFrog Artifactory, обеспечивая видимость всех метаданных артефактов, включая состояние безопасности, на одном экране. 

Qualys

Qualys container security – это инструмент, используемый для обнаружения, отслеживания и постоянной защиты контейнерных сред. 

Он сканирует уязвимости внутри образов или контейнеров в пайплайне DevOps и развертываниях в облачных или локальных средах.

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

Фри версия дает вам представление об образах и контейнерах, работающих в вашей среде.

Если вы хотите их сканировать, вам нужно купить их платную подписку. 

Он также обеспечивает безопасность выполнения для контейнеров, предоставляя брандмауэр на уровне функций контейнеров.

Он обеспечивает всестороннюю видимость поведения контейнера и защищает образ и работающие контейнеры с помощью уровня Qualys CRS (безопасность времени выполнения контейнера).

Docker Scan

Тем не менее, в бета-версии Docker Scan использует механизм Synk и способен сканировать локальный файл Dockerfile, образы и его зависимости для поиска известных уязвимостей. 

Вы можете запустить docker scan с рабочего дестктопа с Docker.

docker scan mydockerimage

Заключение

Теперь вы знаете, что такое сканер безопасности контейнеров и что они могут.

Если мы что-то упустили, просьба добавить инструменты в поле комментариев ниже.

Источник



Report Page