PDA

Просмотр полной версии : Microsoft снова "успешно справилась" с захватом зависимостей


alexzir
29.06.2021, 15:04
Microsoft снова была успешно поражена атакой захвата зависимостей.

Ранее, как впервые сообщил BleepingComputer, исследователь этично взломал более 35 крупных технологических фирм (https://www.bleepingcomputer.com/news/security/researcher-hacks-over-35-tech-firms-in-novel-supply-chain-attack/), включая Microsoft, используя уязвимость, называемую «путаницей зависимости».

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

После публикации общедоступной зависимости с тем же именем он начал получать сообщения с серверов Microsoft.

Захвачена таинственная зависимость «swift-search»

На прошлой неделе исследователь Рикардо Ирамар душ Сантос проверял пакет с открытым исходным кодом SymphonyElectron на наличие ошибок, когда он наткнулся на загадочную зависимость, используемую пакетом.

Эта зависимость называлась «быстрый поиск (https://github.com/symphonyoss/SymphonyElectron/blob/main/package.json#L182)», но этот пакет отсутствовал в открытом реестре npmjs.com.

https://www.bleepstatic.com/images/news/u/1164866/2021/Jun%202021/msft-swift-search-dep-confusion/swift-search-dep-github-outline.jpeg

Осознав это, дос Сантос зарегистрировал пакет с тем же именем в реестре npm со своим пользовательским кодом (показанным ниже в этой статье).

Прежние статьи (https://www.bleepingcomputer.com/tag/dependency-confusion/) BleepingComputer о путанице зависимостей объясняют, что этот термин представляет собой неотъемлемую слабость различных менеджеров репозитория с открытым исходным кодом, когда речь идет о получении зависимостей, указанных для пакета программного обеспечения.

Если проект использует частную, внутренне созданную зависимость и зависимость с тем же именем также существует в публичном репозитории, это создаст «путаницу» для инструментов разработки относительно того, на какую зависимость ссылаются.

Таким образом, общедоступная зависимость с тем же именем будет втягиваться в среду разработки вместо предполагаемой частной зависимости.

Таким образом, «dependency confusion» или hijacking attacks позволяют злоумышленникам вводить свой вредоносный код во внутреннее приложение при автоматизированной атаке на цепочку поставок.

В марте этого года злоумышленники использовали эту технику, чтобы нацеливаться на известные компании с вредоносным кодом (https://www.bleepingcomputer.com/news/security/malicious-npm-packages-target-amazon-slack-with-new-dependency-attacks/), расширяя масштабы этой слабости за пределы доброкачественных исследований багов.

Фальшивая версия пакета «swift-search», опубликованного dos Santos 'в рамках этого исследования, давно удалена (https://www.npmjs.com/package/swift-search)из публичного реестра npm.

Тем не менее, как исследователь безопасности Sonatype, я смог получить версию из автоматизированных систем обнаружения вредоносных программ Sonatype, где она была помечена как «вредоносная» с апреля 2021 года:

https://www.bleepstatic.com/images/news/u/1164866/2021/Jun%202021/msft-swift-search-dep-confusion/swift-search-contents.jpg

Код, содержащийся в пакете dos Santos, обращается к чувствительным параметрам из системы, уязвимой для путаницы зависимостей, и загружает их на PoC-сервер исследователя.

Эти поля и файлы включают:


System hostname and account username

Environment variables (env)

OS name and version information

System's public IP address (IPv4 or IPv6)

/etc/hosts file

/etc/passwd file

/etc/shadow file
Взломанный сервер игр Microsoft Halo отвечает

В течение нескольких часов после публикации пакета в реестре npm исследователь заметил получение ping-back с серверов Microsoft.

"DNS-запросы поступали с 13.66.137.90, который является DNS-сервером Microsoft, и после этого запрос POST от 51.141.173.203, который также является IP-адресом от Microsoft (Великобритания)", - объясняет дос Сантос в своем блоге (https://ricardoiramar.medium.com/msrc-is-confused-5d86b23c2e88).

Исследователь утверждает, что обращение к https ://51.141.173.203 предоставило ему SSL-сертификат, в котором в качестве организации указана Microsoft, а в поле Common Name (CN) - * .test.svc.halowaypoint.com.

Домен halowaypoint.com представляет серию видеоигр Halo (https://en.wikipedia.org/wiki/Halo_(franchise)), изданную студией Xbox Game Studios от Microsoft.

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

Некоторые данные, возвращенные с сервера Microsoft, включали имя пользователя системы, пути к средам разработки приложений, различные идентификаторы и т.д.

Хотя, как показано в коде выше, исследователь попытался также получить доступ к конфиденциальным системным файлам, включая :/etc/passwd и/etc/shadow.


DEPLOYMENT_BASEPATH=/opt/runner
USER=runner
npm_config_user_agent=npm/6.14.12 node
/v12.22.1 linux x64 ci/github-actions
GITHUB_ENV=/home/runner/work/_temp/
_runner_file_commands/set_env_73c3242d-
3ebe-4fef-b35e-4c01f044ff0b
PIPX_HOME=/opt/pipx
GRAALVM_11_ROOT=/usr/local/graalvm
/graalvm-ce-java11–21.0.0.2
AZURE_EXTENSION_DIR=/opt/az
/azcliextensions
npm_package_description=swift-search
ImageVersion=20210412.1
SWIFT_PATH=/usr/share/swift/usr/bin
GITHUB_RUN_ID=773121366
GOROOT_1_16_X64=/opt/hostedtoolcache/go
/1.16.3/x64
ANT_HOME=/usr/share/ant
RUNNER_TRACKING_ID=github_ade7a12e-
905e-4b34-b09e-b3ddda770183
HOMEBREW_CELLAR="/home/linuxbrew
/.linuxbrew/Cellar"
npm_package_name=swift-search


Как подтверждено BleepingComputer, в сертификатах SSL, представленных в halowaypoint.com поддоменах, корпорация Майкрософт указана в качестве организации, за которой она стоит, а в записях WHOIS для 51.141.173.203 также указана корпорация Майкрософт в качестве ответственной организации.

https://www.bleepstatic.com/images/news/u/1164866/2021/Jun%202021/msft-swift-search-dep-confusion/msft-ssl(1).jpeg

Subdomains of *.halowaypoint.comMicrosoft, указанный в SSL-сертификате

Тем не менее, мы не смогли найти запись обратного просмотра, непосредственно связывающую IP-адрес 51.141.173.203 с доменом Microsoft или SSL-сертификатом, что указывает на то, что IP, возможно, был переведен в автономный режим после отчета исследователя.

BleepingComputer обратился к Microsoft за комментариями, и нам сказали:

«Мы исследовали и определили, что основная проблема уже была решена до отчета», - сказал представитель Microsoft изданию BleepingComputer.

Кроме того, компания заявляет, что в этом отчете содержится ссылка на краткую проблему, возникшую в результате стороннего изменения, и нет никаких признаков влияния на клиента.

За последний год атаки на репозитории с открытым исходным кодом, включая npm (https://www.bleepingcomputer.com/news/security/new-linux-macos-malware-hidden-in-fake-browserify-npm-package/), PyPI (https://www.bleepingcomputer.com/news/security/malicious-pypi-packages-hijack-dev-devices-to-mine-cryptocurrency/)и RubyGems (https://www.bleepingcomputer.com/news/security/malicious-rubygems-packages-used-in-cryptocurrency-supply-chain-attack/), показали устойчивый рост.

Теперь, с путаницей зависимостей и акторами, активно публикующими тысячи пакетов подражания этим экосистемам, возникла дополнительная проблема для организаций и мейнтейнеров репозитариев, чтобы обуздать вредоносную деятельность.

Источник: https://www.bleepingcomputer.com/ne...ccessfully-hit-by-dependency-hijacking-again/ (https://www.bleepingcomputer.com/news/security/microsoft-successfully-hit-by-dependency-hijacking-again/)