Уязвимость 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 сентября.

Android 17 запретит приложениям внезапно включать звук из фона

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

В Google называют это Background Audio Hardening. Функция уже появилась в Android 17 Beta 4.

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

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

Android 17 также ограничит приложения, которые пытаются автоматически запускать аудио после включения смартфона. Если программа не соблюдает новые правила, система может просто заблокировать её аудиодействия.

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

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