Зловредные npm-пакеты для Amazon, Slack используют путаницу зависимостей

Зловредные npm-пакеты для Amazon, Slack используют путаницу зависимостей

Зловредные npm-пакеты для Amazon, Slack используют путаницу зависимостей

В репозитории npm обнаружены вредоносные NodeJS-пакеты, предназначенные для использования в приложениях Amazon, Zillow, Lyft и Slack. Внедрение зловредов, нацеленных на кражу паролей, осуществляется посредством эксплуатации уязвимости, известной как dependency confusion (путаница зависимостей).

Новый способ атаки на цепочку поставок, использующий dependency confusion, обнаружил ИБ-исследователь Алекс Бирсан (Alex Birsan). Разрабатывая свой PoC, он использовал тот факт, что при подключении компонента, размещенного и в открытом, и во внутреннем репозитории компании, приложение отдает предпочтение первому. Если пакет в публичном хранилище окажется зараженным, злоумышленнику удастся внедрить зловреда в сеть атакуемой компании.

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

По именам эти фейки (amzn, zg-rentals, lyft-dataset-sdk, serverless-slack-app) схожи с легитимными проектами, размещенными на GitHub и во внутренних хранилищах целевых компаний. Проведенное в Sonatype тестирование показало, что amzn и zg-rentals крадут файл паролей из папки /etc/shadows, а также внедряют шелл-код, открывающий удаленный доступ к зараженной системе.

Пакеты lyft-dataset-sdk и serverless-slack-app нацелены на кражу файла .bash_history, в котором хранится история данных и команд, введенных с использованием командной строки Bash, — в том числе пароли, передаваемые в качестве аргумента.

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

В МАКС нашли вход без пароля и СМС через токен в браузере

Вокруг российского мессенджера МАКС разгорелась новая дискуссия о безопасности. Пользователь Хабра под ником sansmaster рассказал, что для входа в веб-версию сервиса можно обойтись без пароля, СМС-кода и даже QR-аутентификации.

Правда, речь идёт не о взломе и не об уязвимости в классическом понимании.

Автор публикации обратил внимание, что после успешного входа в web.max.ru браузер сохраняет токен сессии в локальном хранилище (localStorage). Этот токен позволяет серверу идентифицировать пользователя и поддерживать активную сессию.

Через консоль разработчика браузера пользователь может извлечь сохранённый токен, а затем импортировать его в другой браузер или на другой компьютер. После перезагрузки страницы веб-версия МАКС откроется уже под нужной учётной записью, и всё это без ввода пароля, получения СМС или сканирования QR-кода.

 

По сути, речь идёт о переносе уже существующей сессии между браузерами. Сам автор подчёркивает, что никаких эксплойтов или обходов защиты здесь нет. Используются штатные механизмы браузера и данные, которые приложение само сохраняет на устройстве пользователя. Аналогичные принципы работы применяются и во многих других веб-сервисах.

 

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

При этом есть важный нюанс. Для выполнения всей процедуры злоумышленнику уже необходим доступ к устройству или браузеру пользователя, где активна сессия МАКС. Без этого получить токен не получится.

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

 

Фактически история стала ещё одним напоминанием о том, что токен аутентификации зачастую представляет не меньшую ценность, чем пароль. Если он попадает в чужие руки, то может открыть доступ к аккаунту без каких-либо дополнительных проверок.

RSS: Новости на портале Anti-Malware.ru