Исследователю удалось опубликовать на сайте Azure SDK поддельный пакет

Исследователю удалось опубликовать на сайте Azure SDK поддельный пакет

По словам исследователя, это не атака «несоответствия используемых зависимостей», а нечто гораздо более простое.

Исследователю безопасности удалось добавить поддельный тестовый пакет в официальный список последних релизов Microsoft Azure SDK. Как оказалось, с помощью простого трюка злоумышленник может выдать свой вредоносный пакет за часть пакета Azure SDK.

Ранее в этом месяце исследователь безопасности Алекс Бирсан (Alex Birsan) продемонстрировал , как любой желающий может добавить собственный пакет в список официальных последних релизов Azure SDK.

Несколько дней назад на странице релизов Azure SDK наряду с подлинными выпусками Microsoft Azure SDK отображался загадочный пакет alexbirsantest. Вдобавок один из пользователей заметил, что коммит был добавлен на GitHub ботом «azure-sdk», который также добавил пакет alexbirsantest в файл CSV, предположительно использующийся для наполнения страницы релизов Microsoft Azure SDK. То есть, кому-то удалось обманом заставить бота автоматически получить вышеупомянутый неофициальный тестовый пакет.

В прошлом месяце Бирсан рассказал, как с помощью новой атаки на экосистему с открытым исходным кодом ему удалось в исследовательских целях взломать 35 крупных технологических компаний. За атаку исследователь получил вознаграждение в размере $130 тыс. в рамках программ Bug Bounty. Microsoft представила свое описание атаки, которую назвала «несоответствие используемых зависимостей» (dependency confusion) или «атака с подменой» (substitution attack). Однако Бирсан отметил, что это не «атака с подменой», а нечто гораздо более простое.

Исследователь опубликовал пакет alexbirsantest в npm, а затем в качестве соавтора добавил в него npm-аккаунт azure-sdk, следуя простой инструкции от npm.

«В этом конкретном случае используемые в npm и GitHub учетные записи «azure-sdk» выглядят как боты, настроенные для сбора любых без исключения npm-пакетов, для которых эти учетные записи были указаны в качестве соавторов. Хотя с тех пор alexbirsantest был удален, как исследователь безопасности Sonatype я смог получить копию исходного npm-пакета из архивов автоматизированной системы обнаружения вредоносных программ Sonatype», — сообщил исследователь изданию BleepingComputer.

Файл index.js в alexbirsantest версии 2100.4.2 содержит тот же проверочный код, что и ранее опубликованные Бирсаном пакеты для «атаки с подменой», но в пакете несколько раз встречается заявление о том, что это «НЕ тест на несоответствие используемых зависимостей».

«Я просто добавил к моему пакету несколько компаний в качестве соавторов, чтобы посмотреть, что произойдет. Это был единственный интересный результат», — сообщил исследователь.

Несмотря на то, что вышеупомянутый инцидент не может иметь прямого воздействия на безопасность системы, он все же заслуживает внимания. Злоумышленник может добавить вредоносный пакет с именем, аналогичным другим пакетам Azure SDK, и легко замаскировать свое вредоносное ПО под часть официальных выпусков Azure SDK. Если ничего не подозревающий разработчик или пользователь загрузит это ПО, вредонос потенциально может стать причиной атаки на цепочку поставок.

Источник: Securitylab