Специалисты кибербезопасности обнаружили уязвимость эскалации привилегий в Google Cloud Platform (GCP), которая может позволить злоумышленникам внедрять вредоносный код в образы приложений и инфицировать пользователей, приводя к атакам на цепочки поставок.
Как выяснилив компании Orca Security, обнаружившей и сообщившей о баге, уязвимость, получившая название “Bad.Build”, затрагивает в первую очередь сервис Google Cloud Build (GCB).
“Злоупотребляя уязвимостью и выдавая себя за сервис Cloud Build по умолчанию, хакеры могут манипулировать образами в Google Artifact Registry (GAR) и внедрять вредоносный код”, – сообщили исследователи.
“Любые приложения, собранные из изменённых образов, оказываются заражены. Если такие приложения развёртываются у клиентов поставщика, риск переходит из среды поставщика в среду клиентов, представляя серьёзную угрозу для всей цепочек поставок”, – добавили в Orca Security.
После раскрытия уязвимости Google выпустилачастичный фикс, который, впрочем, не устраняет вектор эскалации привилегий, а лишь отзывает уязвимое разрешение. Сама компания охарактеризовала уязвимость как незначительную. От клиентов не требуется никаких дополнительных действий.
Уязвимость обусловлена тем, что Cloud Build автоматически создаёт сервисный аккаунт по умолчанию для выполнения сборок проектов от имени пользователей. В частности, этот аккаунт получает чрезмерные разрешения, позволяющие доступ к журналам аудита со списком всех прав в проекте.
“Такая информация очень ценна, поскольку сильно облегчает горизонтальное перемещение и эскалацию привилегий в среде. Знать, какой аккаунт GCP может выполнить то или иное действие – всё равно что решить большую часть головоломки о том, как запустить атаку”, – объяснил Рой Нисими из Orca.
Злоумышленники могут злоупотребить разрешением “cloudbuild.builds.create”, полученным иным путём, чтобы выдать себя за аккаунт Cloud Build, повысить привилегии, эксфильтровать используемый в Google Kubernetes Engine (GKE) образ и модифицировать его, добавив вредоносный код.
“Как только заражённый образ развёрнут, атакующий может эксплуатировать его и запускать код в контейнере docker с правами
Root-пользователь имеет все права и полный доступ к функциям и файлам. Он может устанавливать и удалять программное обеспечение, менять системные настройки, создавать, изменять и удалять файлы в любой части системы и т.д.
Root-доступ может быть полезен для опытных пользователей и разработчиков, так как предоставляет больше гибкости и контроля над устройством. Однако использование root-прав может быть рискованным, так как неправильные изменения или установка вредоносного программного обеспечения могут повредить устройство или нарушить его безопасность.