Исследователи Datadog Security Research зафиксировали несколько скоординированных кампаний, направленных на массовое перечисление корпоративных организаций, репозиториев и учетных записей пользователей GitHub. Активность наблюдается с октября 2025 года и представляет собой комбинацию автоматизированных сканеров, злоупотребления утекшими учетными данными и сетей так называемых ghost-аккаунтов (учетных записей-призраков, зарегистрированных задолго до атаки). Отдельные запросы выглядят легитимными, но их совокупность и синхронность указывают на организованную разведку.
Описание
Операторы применяют автоматические инструменты с произвольными или правдоподобными идентификаторами клиентского приложения (user agent). Многие запросы нацелены на публичные данные, что позволяет им маскироваться под обычный трафик API GitHub. В единичных, но наиболее опасных случаях активность переходила от перечисления к успешному клонированию приватных репозиториев. Исследователи подчёркивают: обнаружение таких действий возможно при мониторинге полей user agent, типа токена, исходного автономного номера системы (ASN) и выполняемых операций.
Основная масса атакующего трафика приходится на открытые конечные точки GitHub. Перечислить публичные репозитории организации, просмотреть подписчиков пользователя, прочитать gist-файлы или выполнить запросы GraphQL (язык запросов к API) - всё это возвращает код ответа 200 и не оставляет сигналов о неудачной аутентификации. Злоумышленник может построить детальную карту организации, её сотрудников и их проектов, используя только публичные данные. GitHub не передаёт геолокацию для запросов из внешних ресурсов, что ограничивает возможности привязки к VPN или прокси. В логах фиксируется только сам пользователь GitHub и тип использованного токена доступа.
Наиболее широкая волна активности исходит от ghost-аккаунтов. Это профили, созданные два-пять лет назад, оставленные бездействующими, а затем активированные для отправки API-запросов сразу по множеству организаций. Учётная запись с многолетней историей выглядит более доверенной, чем та, что зарегистрирована в ту же неделю, когда начинается сбор данных. С октября 2025 года исследователи подтвердили более 50 таких ghost-аккаунтов, действующих под разными user agent. Имена аккаунтов часто группируются в семейства: префикс amazon-data-*, повторяющиеся короткие хендлы (BirdWithDreams, BirdWithPlan), серия *-orb (kuku-orb, lolo-orb, lulu-orb, ruru-orb, zouzou-orb, meme-orb), а также user432023, user412023 и подобные. Аккаунты работают в течение одной-трёх недель, после чего активность прекращается.
Инструментарий этих кампаний использует как откровенно "экфильтрационные" user agent - например, GitHub-Company-Scraper или GitHub-Scraper-Tool/1.0, - так и маскирующиеся под легитимную аналитику, вроде GitHubAnalytics/1.5. Один из замеченных инструментов передаёт запрос без версии, что выделяется на фоне стандартной нумерации. Основная масса запросов направлена на /graphql, что удобно для массовых запросов по организациям, пользователям и репозиториям. На этом этапе атака ограничивается разведкой, без прямого доступа к закрытым данным.
Параллельно с ghost-аккаунтами фиксируются кампании, эксплуатирующие скомпрометированные токены. Операторы используют персональные токены доступа (PAT) и OAuth-токены, полученные от легитимных пользователей GitHub, которые случайно опубликовали свои учётные данные, подверглись компрометации конечного устройства или иным образом раскрыли токен. В данных Datadog Security Research описан один такой случай в период с конца декабря 2025 по начало января 2026 года. Злоумышленники применяли последовательность user agent: сначала GitHub-Commit-Fetcher/1.3, затем /1.4, и наконец GitHub-Event-Fetcher/2.2. Версии менялись в течение нескольких дней. Инфраструктура работала на хостинге 3xK Tech, который неоднократно фигурировал в сообщениях о злоупотреблениях.
Активность демонстрировала повторное использование одних и тех же скомпрометированных OAuth- и PAT-токенов. Десятки разных легитимных учётных записей GitHub отправляли API-запросы к одной организации в течение нескольких минут. Целью были конечные точки для получения списка репозиториев, извлечения коммитов и пробные обращения к приватным путям. В этом конкретном случае доступ к приватным ресурсам был заблокирован, но сам факт использования множества скомпрометированных токенов указывает на систематическую проверку украденных учётных данных.
В редких случаях разведка переходила в успешную эксфильтрацию данных. Исследователи зафиксировали один эпизод, когда инструмент с user agent repo-dumper выполнил действия с git.clone и api.request внутри приватного репозитория одной организации. Обе учётные записи GitHub, задействованные в этой атаке, ранее уже были замечены в неудачных попытках доступа. Этот случай подтверждает, что даже при низкой частоте успешных пробивов риск утечки данных реален.
Для обнаружения подобных угроз Datadog Security Research рекомендует сосредоточиться на мониторинге успешного доступа к приватным ресурсам. Подозрительные user agent часто содержат фальшивые версионные строки (вроде /1.0 или /1.1) в сочетании с названиями, имитирующими легитимные инструменты. Аналитикам предлагается проверять логи GitHub на предмет аномального поведения user agent для действий, затрагивающих приватные репозитории. Примеры поисковых запросов включают фильтрацию по source:github, evt.action:api.request с кодом состояния 200 и признаком public_repo:false, а также по programmatic_access_type, содержащему OAuth или персональные токены. Аналогичные фильтры применимы для событий git.clone и repo.download_zip.
Общая картина показывает, что атаки на GitHub носят многослойный характер. Первый слой - массовая разведка с помощью ghost-аккаунтов и публичных данных. Второй - перебор скомпрометированных токенов для доступа к приватным ресурсам. Третий, самый опасный, - успешное клонирование приватных репозиториев. Каждый из этих этапов требует отдельного подхода к защите. Компаниям следует внедрить мониторинг аномальных user agent, отслеживать одновременные запросы с разных учётных записей и оперативно отзывать токены при малейшем подозрении на компрометацию. Только системный контроль GitHub-трафика и своевременная реакция на инциденты позволят снизить риск утечки кода и корпоративной информации через этот канал.
Индикаторы компрометации
User agent
- gha-injection-scanner/1.0
- gh-repo-lister/1.0
- githarvester/1.0
- GitHubAnalytics/1.5
- GitHub-Commit-Fetcher/1.3
- GitHub-Commit-Fetcher/1.4
- GitHub-Company-Scraper
- GitHubDashboard/1.8
- GitHub-Display/1.0
- GitHub-Event-Fetcher/2.2
- GitHub-Insights/3.2
- GitHub-Inspector/2.9
- GitHubMetrics/1.9
- GitHub-Monitor/2.5
- GitHub-Repo-Crawler/1.0
- GitHubReporter/2.0
- GitHub-Scanner/1.6
- GitHub-Scraper-Tool/1.0
- GitHub-Tracker/3.1
- GitHubVisualizer/2.7
- OrgSearchAndInspect/1.1
- RepoAnalyzer/1.7
- repo-dumper
- RepoExplorer/2.1
- request
Tooling
- GitHarvester
Hosting Provider
- cherryservers.com
- 3xktech.cloud