Специалисты компании Aqua Security пытаются привлечь внимание к проблеме публичного раскрытия конфигурационных секретов Kubernetes. По их словам, сотни организаций, включая крупные компании из списка Fortune 500, регулярно «сливают» секреты в общедоступные репозитории и в результате могут подвергаться атакам на цепочку поставок.
Для своего исследования специалисты задействовали API GitHub и искали записи, содержащие .dockerconfigjson и .dockercfg, в которых хранятся учетные данные для доступа к реестру образов контейнеров.
В итоге обнаружилось, что такие утечки допустили опенсорсные проекты, две неназванные ведущие блокчейн-компании и ряд других организаций из списка Fortune-500.
Дальнейший анализ показал, что из 438 обнаруженных записей, которые потенциально могли содержать учетные данные, 203 записи (почти 46%) действительно содержали актуальные учетные данные, предоставляющие доступ к соответствующим реестрам.
При этом 93 пароля были заданы вручную, а еще 345 — сгенерированы компьютером. К сожалению, почти половина из 93 сгенерированных вручную паролей были признаны слабыми. Так, среди них обнаружились пароли password, test123456, windows12, ChangeMe, dockerhub и так далее. Аналитики подчеркивают, что это лишний раз демонстрирует острую необходимость использования в организациях парольных политик, обеспечивающих соблюдение строгих правил для создания паролей.
«В большинстве случаев эти учетные данные позволяли использовать pull и push привилегии. Более того, в большинстве реестров мы обнаружили приватные образы», — пишут исследователи.
По словам экспертов, также были выявлены случаи, когда организации не удаляли секреты из файлов, которые коммитили в публичные репозитории на GitHub, что тоже приводило к непреднамеренному раскрытию информации.
Зато все найденные учетные данные, связанные с AWS и Google Container Registry (GCR), оказались временными и просроченными, а для GitHub Container Registry требовалась двухфакторная аутентификация.
«В некоторых случаях ключи были зашифрованы, а следовательно, с ними ничего нельзя было сделать, — отмечают исследователи. — В других случаях, хотя ключ был действителен, он имел минимальные привилегии, часто предназначенные только для извлечения или загрузки определенного артефакта или образа».