Израильские исследователи изучили безопасность Visual Studio Code и в рамках эксперимента сумели «заразить» более 100 организаций, создав клона популярной темы Dracula Official с вредоносным кодом. Дальнейший анализ VSCode Marketplace и вовсе выявил тысячи опасных расширений с миллионами установок.

Visual Studio Code (VSCode) — редактор исходного кода, выпускаемый компанией Microsoft, который используется разработчиками по всему миру. Также Microsoft управляет магазином Visual Studio Code Marketplace, в котором предлагаются расширения, увеличивающие функциональность приложения и предоставляющие больше возможностей для кастомизации.

В ходе эксперимента ИБ-исследователи Амит Ассараф (Amit Assaraf), Итай Крук (Itay Kruk) и Идан Дардикман (Idan Dardikman) создали расширение, имитирующее Dracula Official — популярную тему, насчитывающую более 7 млн установок в VSCode Marketplace.

Фальшивое расширение использовало тайпсквоттинг и называлось «Darcula», и исследователи зарегистрировали соответствующий домен по адресу darculatheme.com. Этот домен позволил им получить статус проверенного издателя на VSCode Marketplace, что придало подделке убедительности.

Фейк в VSCode Marketplace

Расширение использовало код легитимной темы Darcula, но также содержало дополнительный скрипт, который собирал информацию о системе, включая имя хоста, количество установленных расширений, доменное имя устройства и информацию об ОС, а затем передавал все это на удаленный сервер через HTTPS POST-запрос.

Поскольку эксперимент не преследовал вредоносных целей, аналитики собрали только опознавательную информацию, а также включили соответствующее предупреждение в Read Me, лицензию и код расширения.

Исследователи отмечают, что вредоносный код не обнаруживается EDR-решениями, поскольку к VSCode зачастую относятся снисходительно.

«К сожалению, традиционные средства защиты конечных точек (EDR) не обнаруживают эту активность. VSCode создан для чтения большого количества файлов, выполнения множества команд и создания дочерних процессов, поэтому EDR не могут определить, является ли эта активность VSCode легитимной деятельностью разработчика или признаком вредоносного расширения», — пишет Амит Ассараф.

В итоге фальшивое расширение быстро набрало популярность: по ошибке его установили множество крупных организаций, включая неназванную компанию с рыночной стоимостью 483 млрд долларов, ряд крупных охранных компаний и национальную судебную сеть. Исследователи не стали раскрывать названия пострадавших организаций.

Жертвы Darcula на карте

Уже после проведения эксперимента эксперты решили изучить другие угрозы в VSCode Marketplace, используя разработанный ими инструмент ExtensionTotal, предназначенный для поиска потенциально опасных расширений, их распаковки и тщательного изучения подозрительных фрагментов кода. В итоге они выявили:

  • 1283 расширения с известным вредоносным кодом (суммарно 229 млн установок);
  • 8161 расширение, связывающееся с жестко закодированными IP-адресами;
  • 1452 запущенных неизвестных исполняемых файла;
  • 2304 расширения, использующие GitHub-репозитории других издателей, что свидетельствует о том, что это лишь подражатели.
Реверс-шелл, найденный в CWL Beautifer

Эксперты предупреждают, что из-за отсутствия строгих механизмов контроля и проверки кода в VSCode Marketplace злоумышленники могут беспрепятственно злоупотреблять платформой, причем ситуация ухудшается по мере роста ее популярности.

«Цифры говорят о том, что в магазине Visual Studio Code существует огромное количество расширений, представляющих опасность для организаций, — предупреждают исследователи. — Расширения для VSCode — это вектор атак с нулевой видимостью, которым злоупотребляют и который может иметь серьезные последствия и нести серьезные риски. Эта проблема представляет прямую угрозу для организаций и заслуживает внимания ИБ-сообщества».

Информация обо всех вредоносных расширениях, обнаруженных исследователями, была передана специалистам Microsoft. Однако пока подавляющее большинство из них все еще доступно в VSCode Marketplace.

В ближайшие дни исследователи планируют бесплатно опубликовать ExtensionTotal, вместе с подробным описанием его рабочих возможностей. Инструмент должен помочь разработчикам проверить свои среды на наличие потенциальных угроз.

  • Подпишись на наc в Telegram!

    Только важные новости и лучшие статьи

    Подписаться

  • Подписаться
    Уведомить о
    6 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии