PDA

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


Suicide
03.09.2020, 20:00
Опубликованы (https://medium.com/@matuzg/testing-docker-cve-scanners-part-2-5-exploiting-cve-scanners-b37766f73005) результаты тестирования инструментов для определения неисправленных уязвимостей и выявления проблем с безопасностью в образах изолированных контейнеров Docker. Проверка показала, что в 4 из 6 известных сканеров образов Docker присутствовали критические уязвимости, позволяющие атаковать непосредственно сам сканер и добиться выполнения своего кода в системе, в отдельных случаях (например, при использовании Snyk) с правами root.

Для атаки злоумышленнику достаточно инициировать проверку своего Dockerfile или manifest.json, включающего специально оформленные метаданные, или разместить внутри образа файлы Podfile и gradlew. Прототипы эксплоитов удалось подготовить (https://github.com/gmatuz/cve-scanner-exploiting-pocs) для систем WhiteSource (https://www.whitesourcesoftware.com/whitesource-for-containers/), Snyk (https://hub.docker.com/r/snyk/snyk-cli), Fossa (https://hub.docker.com/r/fossa/fossa-cli) и Anchore (https://hub.docker.com/u/anchore). Наилучшую безопасность показал пакет Clair (https://github.com/quay/clair), изначально написанный с оглядкой на обеспечение безопасности. Проблем также не выявлено в пакете Trivy (https://github.com/aquasecurity/trivy). В итоге сделан вывод, что сканеры Docker-контейнеров следует запускать в изолированных окружения или использовать только для проверки собственных образов, а также проявлять осторожность при подключении подобных инструментов к автоматизированным системам непрерывной интеграции.

В FOSSA, Snyk и WhiteSource уязвимость была связана с вызовом внешнего пакетного менеджера для определения зависимостей и позволяла организовать выполнение своего кода через указание команд touch и system в файлах gradlew (https://github.com/gmatuz/cve-scanner-exploiting-pocs/tree/master/snyk/gradle) и Podfile (https://github.com/gmatuz/cve-scanner-exploiting-pocs/tree/master/fossa/cocoa).

В Snyk и WhiteSource дополнительно были найдены (https://github.com/gmatuz/cve-scanner-exploiting-pocs/tree/master/whitesource/pip) уязвимости (https://github.com/gmatuz/cve-scanner-exploiting-pocs/tree/master/snyk/docker), связанные (https://github.com/gmatuz/cve-scanner-exploiting-pocs/tree/master/whitesource/generic) с организацией запуска системных команд при разборе Dockerfile (например, в Snyk через Dockefile можно было заменить утилиту /bin/ls, вызываемую сканером, а в WhiteSurce можно было подставить код через аргументы в форме "echo ';touch /tmp/hacked_whitesource_pip;=1.0'").

В Anchore уязвимость была вызвана (https://github.com/gmatuz/cve-scanner-exploiting-pocs/tree/master/anchore) использованием утилиты skopeo (https://github.com/containers/skopeo) для работы с docker-образами. Эксплуатация сводилась к добавлению в файл manifest.json параметров вида '"os": "$(touch hacked_anchore)"', которые подставляются при вызове skopeo без должного экранирования (вырезались только символы ";&<>", но допускалась конструкция "$()").

Тем же автором проведено исследование эффективности выявления неисправленных уязвимостей сканерами безопасности docker-контейнеров и уровень ложных срабатываний (часть 1 (https://medium.com/@matuzg/testing-docker-cve-scanners-part-1-false-negatives-and-what-they-mean-for-your-security-77fc4eb1b2cf), часть 2 (https://medium.com/@matuzg/testing-docker-cve-scanners-part-2-how-good-is-package-detection-f68d7230b830), часть 3 (https://medium.com/@matuzg/testing-docker-cve-scanners-part-3-test-it-yourself-conclusions-6de868124d3d)). Ниже показаны результаты тестирования 73 образов, содержащих известные уязвимости, а также дана оценка эффективности определения наличия типовых приложений в образах (nginx, tomcat, haproxy, gunicorn, redis, ruby, node).

https://www.opennet.ru/opennews/pics_base/0_1599114324.png (https://miro.medium.com/max/840/1*4CS8SAbix-domsIWNgrk5A.png)https://www.opennet.ru/opennews/pics_base/0_1599114897.png (https://miro.medium.com/max/840/1*Xxbob0nabha6N6ZBfBuSLg.png)

03.09.2020

https://www.opennet.ru/opennews/art.shtml?num=53650


devton
03.09.2020, 20:03
уязвимость в сканере уязвимостей 0_о

http://t0.gstatic.com/images?q=tbn:ANd9GcQOby2sgripdaMyD7YtPu12jYXjA-EVNvAWaimFmk9orKntLqKLnOYss8KDBFY&s

altblitz
04.09.2020, 08:49
Вот это всё - dockers containers node.js и прочие frameworks, что по сути своей - гадкое зло индусов poo in loo.

https://i.imgur.com/c5bJnrv.png