Платформа отказывается исправлять уязвимость ради мнимого удобства.
Иногда опасная атака держится не только на украденных паролях, но и на мелких деталях интерфейса, которым разработчики привыкли доверять. GitHub отклонил два отчёта Deep Specter Research о механизмах, которые, по данным специалистов, помогают вариантам червя Shai-Hulud заражать пакеты и аккаунты разработчиков по всему миру.
Shai-Hulud вырос из инструмента группировки TeamPCP, а после публикации кода в начале мая появились подражатели с немного изменёнными версиями. Deep Specter Research заявила, что по открытым данным нашла 516 вредоносных пакетов в пяти экосистемах, включая npm, PyPI и RubyGems, более 3000 затронутых репозиториев GitHub и свыше 200 скомпрометированных аккаунтов разработчиков.
Первый спорный механизм связан с датами коммитов. GitHub принимает время коммита как данные со стороны клиента, поэтому атакующий может добавить вредоносный код сегодня, но показать правку как изменение многолетней давности. Такой приём мешает защитным системам, которые ищут подозрительные свежие изменения в истории проекта.
Второй механизм касается авторства. На странице коммита GitHub показывает имя, фото и имя пользователя автора, хотя эти поля можно свободно задать в git . Червь использует такую особенность, чтобы вредоносные изменения выглядели как работа доверенных инженеров, которые не трогали код.
GitHub не признал оба сообщения уязвимостями. Компания указала, что произвольные даты и авторы коммитов заложены в git, а реальная проблема связана с украденными учётными данными. Разработчикам предложили использовать подпись коммитов через GPG или SSH и режим Vigilant Mode, но разработчики, чьи личности подделали в кампании Shai-Hulud, такие меры не включали.
GitHub всё же хранит отдельную запись о том, какой аккаунт фактически отправил коммит. Эти данные нельзя подделать, но они доступны через Events API, не показываются прямо на странице коммита и исчезают из публичного доступа примерно через 90 дней. Deep Specter Research предложила сделать такие записи заметнее для проверяющих, однако GitHub счёл идею запросом на новую функцию, а не исправлением безопасности.
По состоянию на 16 июня специалисты нашли на GitHub 1729 одноразовых репозиториев Shai-Hulud для хранения украденных учётных данных и 151 репозиторий, который всё ещё раздавал активные вредоносные нагрузки. Чтобы снизить риск, разработчикам стоит включить подпись коммитов и Vigilant Mode, проверять фактического отправителя через Events API, не доверять только имени автора и дате коммита, а также быстро отзывать скомпрометированные токены и ключи.
Иногда опасная атака держится не только на украденных паролях, но и на мелких деталях интерфейса, которым разработчики привыкли доверять. GitHub отклонил два отчёта Deep Specter Research о механизмах, которые, по данным специалистов, помогают вариантам червя Shai-Hulud заражать пакеты и аккаунты разработчиков по всему миру.
Shai-Hulud вырос из инструмента группировки TeamPCP, а после публикации кода в начале мая появились подражатели с немного изменёнными версиями. Deep Specter Research заявила, что по открытым данным нашла 516 вредоносных пакетов в пяти экосистемах, включая npm, PyPI и RubyGems, более 3000 затронутых репозиториев GitHub и свыше 200 скомпрометированных аккаунтов разработчиков.
Первый спорный механизм связан с датами коммитов. GitHub принимает время коммита как данные со стороны клиента, поэтому атакующий может добавить вредоносный код сегодня, но показать правку как изменение многолетней давности. Такой приём мешает защитным системам, которые ищут подозрительные свежие изменения в истории проекта.
Второй механизм касается авторства. На странице коммита GitHub показывает имя, фото и имя пользователя автора, хотя эти поля можно свободно задать в git . Червь использует такую особенность, чтобы вредоносные изменения выглядели как работа доверенных инженеров, которые не трогали код.
GitHub не признал оба сообщения уязвимостями. Компания указала, что произвольные даты и авторы коммитов заложены в git, а реальная проблема связана с украденными учётными данными. Разработчикам предложили использовать подпись коммитов через GPG или SSH и режим Vigilant Mode, но разработчики, чьи личности подделали в кампании Shai-Hulud, такие меры не включали.
GitHub всё же хранит отдельную запись о том, какой аккаунт фактически отправил коммит. Эти данные нельзя подделать, но они доступны через Events API, не показываются прямо на странице коммита и исчезают из публичного доступа примерно через 90 дней. Deep Specter Research предложила сделать такие записи заметнее для проверяющих, однако GitHub счёл идею запросом на новую функцию, а не исправлением безопасности.
По состоянию на 16 июня специалисты нашли на GitHub 1729 одноразовых репозиториев Shai-Hulud для хранения украденных учётных данных и 151 репозиторий, который всё ещё раздавал активные вредоносные нагрузки. Чтобы снизить риск, разработчикам стоит включить подпись коммитов и Vigilant Mode, проверять фактического отправителя через Events API, не доверять только имени автора и дате коммита, а также быстро отзывать скомпрометированные токены и ключи.
- Источник новости
- www.securitylab.ru