«Атакующий воспользовался похищенными пользовательскими токенами OAuth, выпущенными для сторонних интеграторов OAuth, Heroku и Travis-CI, для загрузки данных нескольких десятков организаций, включая NPM», - сообщил представитель GitHub Майк Хэнли (Mike Hanley).
Токены доступа OAuth как правило выпускаются приложениями и сервисами для авторизованного доступа к определенным пользовательским данным и связи друг с другом без необходимости обмениваться учетными данными. Это один из наиболее распространенных методов передачи авторизации от сервиса единого входа (single sign-on, SSO) к другому приложению.
По состоянию на 15 апреля 2022 года список затронутых приложений OAuth включал:
Heroku Dashboard (ID: 145909);
Heroku Dashboard (ID: 628778);
Heroku Dashboard – Preview (ID: 313468);
Heroku Dashboard – Classic (ID: 363831);
Travis CI (ID: 9216).
Токены не были похищены путем взлома GitHub или его систем, поскольку сервис не хранит их в оригинальном, доступном для использования формате.
Ранние свидетельства атаки были обнаружены 12 апреля, когда GitHub зафиксировал множественные попытки несанкционированного доступа к своей производственной среде NPM с использованием скомпрометированного ключа AWS API.
Этот ключ предположительно был получен путем загрузки неназванных приватных NPM-репозиториев с помощью похищенного токена OAuth одного из двух затронутых приложений. GitHub уже отозвал токены доступа этих приложений.
«На данный момент мы установили, что атакующий не модифицировал какие-либо пакеты и не получил доступ к каким-либо данным пользовательских аккаунтов или учетным данным», - заявили в компании.