Компания МТС RED, входящая в ПАО «МТС», опубликовала исследование более 4,7 млн уникальных публичных репозиториев программного кода. Команда перспективных исследований МТС RED ART (Advanced Research Team) выявила около 1000 уязвимых библиотек, которыми злоумышленники могут воспользоваться для заражения легитимного программного обеспечения вредоносным кодом.
В современной разработке широко распространено использование внешних компонентов от сторонних разработчиков — библиотек. Если они подключаются из внешнего репозитория, то существует риск захвата этого хранилища кода злоумышленником — атака типа repository hijacking или repojacking (захват репозитория).
Уязвимость при использовании внешних компонентов возникает, если их разработчик перенёс, удалил или продал свою учётную запись — например, в связи с прекращением поддержки проекта или передачей репозитория с кодом заказчику. В ряде случаев злоумышленники способны зарегистрировать на себя «заброшенное» имя учетной записи и разместить в нем вредоносный код. В этом случае программы, использующие компонент по старой ссылке, будут обращаться уже к новому содержимому, контролируемому злоумышленником. Таким образом в легитимную и популярную программу незаметно для разработчика может быть встроен код с различными вредоносными функциями — от кражи данных и слежения за пользователями до полного контроля над пользовательскими устройствами.
Эксперты МТС RED ART проанализировали свыше 6,3 миллиона репозиториев из таких популярных источников, как Google Cloud Console, PyPi, NPM. Анализ позволил выделить 4,7 миллиона уникальных репозиториев, по ссылкам на 7820 из них содержимое отсутствует. В 986 случаях аккаунт, под которым изначально создавались репозитории, неактивен. Такие репозитории уязвимы к захвату злоумышленниками, которые могут повторно зарегистрировать их на себя, в том числе с применением инструментов автоматизации.
Аккаунты, уязвимые к кибератакам класса repojacking, могли быть использованы в большом количестве программ, в том числе и российскими разработчиками, которые не подозревают о потенциальной опасности. Чтобы сторонние компоненты не стали входной точкой хакерской атаки на разработчиков, МТС RED ART опубликовала методику и ссылки на ряд инструментов, которые позволяют проверять исходный код на корректность ссылок на используемые внешние репозитории.
«Мы предлагаем сообществу разработчиков присоединиться к инициативе и еще раз проверить наличие в своих зависимостях прямых ссылок на сторонние репозитории, которые могут быть уязвимы к repojacking-атакам. Наша общая цель — создание реестра доверенных зависимостей, в которых все сторонние компоненты и их артефакты проверены сообществом», — подчеркнул Денис Макрушин, технический директор компании МТС RED.