Изследвания разкриха координирани кампании, които използват десетки неактивни акаунти в GitHub за картографиране на корпоративни организации, хранилища и разработчици.

Дейността разчита на API на GitHub за събиране на публична информация. Въпреки това, някои оператори също са се опитали да получат достъп до частни хранилища за изходен код и в редки случаи са успели.

Кампаниите са активни поне от октомври. Вместо да включват единствен хакерски субект, изследователите са наблюдавали множество застъпващи се операции, които използват автоматизирани инструменти, компрометирани токени за достъп и мрежи от дълго неактивни акаунти фантоми („ghost“ акаунти).

Много от акаунтите са създадени преди две до пет години. Те са останали неактивни, докато внезапно не са започнали да правят заявки към API в няколко организации в GitHub. Тази стратегия на изчакване може да помага на атакуващите да изглеждат по-легитимни в сравнение с новосъздадените акаунти, използвани за масово извличане на данни (scraping).

Акаунтите са следвали разпознаваеми модели на именуване, включително префикса amazon-data-*, фамилията *-orb и повтарящи се потребителски имена като BirdWithDreams, BirdWithPlan, user432023 и user412023. От Datadog потвърдиха, че повече от 50 такива акаунта са участвали в разузнавателна дейност, като често са работили само една до три седмици, преди да утихнат.

Атакуващите са правили заявки основно към GraphQL крайната точка на GitHub (/graphql), която поддържа групови заявки за информация за организации, потребители и хранилища. Те също така са използвали REST API маршрути за изброяване на публични хранилища, членства в организации, последователи, gists, проекти с отбелязани звезди и потребителска активност.

Тъй като голяма част от тези данни са публични, заявките често връщат успешни HTTP отговори и могат да изглеждат като легитимна употреба на API на GitHub. Нападателите могат да използват тази информация, за да изградят детайлна картина за разработчиците на дадена компания, нейните проекти, технологичен стек, излагането на софтуер с отворен код и потенциални цели за по-нататъшно компрометиране.

Няколко кампании са използвали подозрителни потребителски агенти (user-agent), включително GitHub-Company-Scraper, GitHub-Scraper-Tool/1.0 и GitHubAnalytics/1.5. Между края на декември и началото на януари са били компрометирани идентификационните данни на десетки легитимни потребители на GitHub, които са използвани за достъп до една организация в рамките на минути. Документиран е и един потвърден инцидент, при който инструмент, идентифициран като repo-dumper, успешно е изпълнил git clone и API действия срещу частно хранилище.

Кампанията подчертава как публичните метаданни на GitHub могат да подпомогнат корпоративното разузнаване, преди нападателите да се опитат да злоупотребят с идентификационни данни или да откраднат изходен код. Екипите по сигурността трябва да активират поточно предаване на регистрационните файлове за одит на GitHub (audit log streaming) и да установят базова линия за нормална API активност в своите среди.