Уязвимость GitHub позволяла угнать чужой репозиторий в обход защиты

Уязвимость GitHub позволяла угнать чужой репозиторий в обход защиты

Уязвимость GitHub позволяла угнать чужой репозиторий в обход защиты

Команда Checkmarx обнаружила брешь в защите облачного хостинга GitHub от клонирования репозиториев в рамках атак на цепочку поставок. Как оказалось, создать такой источник вредоносного кода все еще можно, притом легко — путем переименования.

Хранилища на GitHub получают уникальные URL, которые привязываются к аккаунту владельца. Когда пользователь меняет имя аккаунта, на веб-сервисе создаются редиректоры. В Checkmarx придумали, как угнать перенаправленный трафик, сломав логику редиректа, и назвали свой способ RepoJacking.

В итоге на GitHub появился дополнительный механизм защиты, отвечающий за удаление популярных, но устаревших пространств имен (связок имя пользователя / имя репозитория) — чтобы ими не воспользовались злоумышленники. Эта контрмера пускается в ход, когда недельная норма клонов opensource-проекта перевалит за сотню.

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

  • злоумышленник создает репозиторий с именем (условно repo), выведенным из обихода, но под другим аккаунтом, разрывая связку (например, вместо прежнего юзернейма victim использует helper);
  • helper_account передает репозиторий repo новому владельцу (attacker) в соответствии с принятым регламентом;
  • тот переименовывает свой аккаунт в victim;
  • новоявленный victim_account принимает запрос на передачу права собственности.

В итоге пространство имен victim/repo попадает под контроль авторов атаки — из-за того, что специализированная защита GitHub считает устаревшей только комбинацию юзернейм / имя репозитория. По словам Checkmarx, подобным образом можно угнать любой популярный софт, если его владелец менял имя пользователя.

Просмотр каталогов Go, Swift и Packagist выявил более 10 тыс. пакетов, находящихся в зоне риска. Оператор GitHub устранил опасную уязвимость в прошлом месяце — 19 сентября.

Опасный троян SparkCat снова пробрался в App Store и Google Play

Троян SparkCat снова вернулся в официальные магазины приложений. Эксперты «Лаборатории Касперского» сообщили, что обнаружили новый вариант этого зловреда в App Store и Google Play спустя примерно год после того, как его уже находили и удаляли оттуда.

На этот раз вредонос маскировался под вполне обычные приложения, которые не вызывают особых подозрений с первого взгляда: корпоративные мессенджеры и сервисы доставки еды.

А сценарий у операторов всё тот же: пользователь скачивает вроде бы безобидное приложение, а внутри оказывается троян, который охотится за данными пользователя.

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

По данным «Лаборатории Касперского», в App Store нашли два заражённых приложения, а в Google Play — одно. О находке сообщили Apple и Google, и в Google Play вредоносное приложение уже удалили. При этом проблема не ограничивается только официальными магазинами: приложения со SparkCat также распространяются через сторонние сайты. Некоторые из них, как отмечают исследователи, даже мимикрируют под App Store, если открыть их с iPhone.

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

С технической точки зрения зловред тоже стал хитрее. В «Лаборатории Касперского» говорят, что новая Android-версия использует несколько уровней обфускации, в том числе виртуализацию кода и кросс-платформенные языки программирования. Для мобильного зловреда это уже довольно серьёзный уровень подготовки, который помогает ему дольше оставаться незамеченным и проходить проверки.

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

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