Дело в том, что репозитории на GitHub получают уникальные URL-адреса, привязанные к учетной записи владельца. Когда пользователь меняет имя учетной записи, на сервисе создаются специальные перенаправления. Компания Checkmarx придумала, как получить контроль над перенаправляемым трафиком, и назвала свой метод RepoJacking. Этой уязвимости были подвержены все переименованные пользователи GitHub, включая более 10000 пакетов в пакетных менеджерах Go, Swift и Packagist.
Уязвимость была устранена платформой в прошлом месяце. В результате на GitHub появился дополнительный механизм защиты, который отвечает за удаление популярных, но устаревших пространств имен (сопоставлений имен пользователей и репозиториев), чтобы они не использовались злоумышленниками. Этот механизм срабатывает, когда еженедельное количество клонов проекта с открытым исходным кодом превышает сотню.