Преглед на приватноста

Оваа веб-страница користи колачиња за да ви обезбеди најдобро можно корисничко искуство. Информациите за колачињата се складираат во вашиот прелистувач и извршуваат функции како препознавање кога се враќате на нашата веб-страница и им помагаат на нашите програмери да разберат кои делови од веб-страницата ви се најинтересни и најкорисни.

Строго неопходни колачиња

Строго неопходните колачиња треба да бидат овозможени во секое време за да можеме да ги зачуваме вашите поставки за колачиња.

Напаѓачите со „GhostAction“ поставиле крадец на акредитиви маскиран како фонт во 94 репозиториуми на GitHub

Заканата зад ланецот на снабдување со напади „GhostAction“ се прошири надвор од инјектирањето на злонамерни работни процеси (workflows) на GitHub Actions во компромитирани проекти за да врши фишинг врз програмери на отворен код (open-source) и да испорача малвер-крадец маскиран во лажна датотека со фонт.

Најновата еволуција, детализирана од платформите за разузнавање „OpenSourceMalware“, сигнализира дека напаѓачите активно го усовршуваат својот начин на дејствување како одговор на чекорите преземени од GitHub за спречување на извршувањето на работниот процес.

Според платформите за разузнавање за закани, актерот зад заканата го регистрирал доменот „my-github[.]com“ и го насочил кон „193.32.204[.]199“, истата IP адреса што се користи како крајна точка за екстракција (exfiltration) на податоци собрани од извршувањето на злонамерниот работен процес.

Доменот бил регистриран на 9 октомври 2026 година, 17 дена откако бил регистриран „my-gitlab[.]com“. Во оваа фаза нема докази што сугерираат дека овие два домена со теми за хостирање код се управувани од истиот актер.

„Овој потег го следи истиот шаблон за именување my-.com, што го прави корисен pivot (премин), но сегашната инфраструктура не го поврзува директно со GhostAction“, изјави безбедносниот истражувач Пол Мекарти (Paul McCarty). „Тие користат различни регистратори, записи за регистранти, парнери со имиња на сервери на Cloudflare, IP адреси, ASN и DNS дизајни, а не е пронајден ниту еден заеднички сертификат или артефакт од сметката.“

Оттогаш, доменот „my-github[.]com“ е искористен во фишинг-порака со лажно претставување како безбедносно предупредување од GitHub, со цел да се таргетира одржувач на отворен код. Пораката, испратена од „noreply@my-github[.]com“ истиот ден кога доменот бил регистриран, предупредувала за ново сомнително најавување на нивната сметка на GitHub од Москва, Русија, и ги упатувала да кликнат на линк за да ја обезбедат својата сметка.

Измамничката страница, според „OpenSourceMalware“, функционирала како реверзен прокси (reverse proxy), собирајќи ја лозинкта на жртвата и кодот за двофакторна автентикација (2FA), и инјектирајќи JavaScript што овластувал OAuth апликација со дозволи за модифицирање на нивните работни процеси со цел да се олесни напад од типот на „GhostAction“.

Лажната страница за најава исто така вклучува JavaScript за тивко овластување на протокол за уреди на GitHub OAuth со опсези за репозиториум (repo), работен процес (workflow) и читање организација (read:org), со што и се доделуваат широки дозволи за читање/пишување во репозиториумите, модифицирање на датотеките со работни процеси на Actions и добивање видливост во членството на организацијата и поврзаните организациони податоци.

Идејата е иста како кај фишингот со кодови за уреди, каде што крајната цел е да се добие пристапен токен (access token) од GitHub и да се екстрахира на „my-github[.]com“ преку TCP/8443.

„Скриптата прима код за уред и кориснички код, го вчитува /login/device, ги екстрахира формулярите на GitHub од вратениот HTML и ги поднесува автоматски“, објаснува Мекарти. „Го вметнува корисничкиот код, лоцира формулар за овластување, додава authorize=1 и го објавува одобрението преку автентикуваната прокси-сесија на жртвата.“

„Жртвата не треба да го пишува кодот за уредот ниту свесно да ја одобрува OAuth апликацијата. Овој сет оди чекор понатаму преку автоматизирање на чекорите за корисничкиот код и овластувањето преку сесијата со реверзен прокси.“

Со крадењето на OAuth токен со опсег на репозиториум, на напаѓачот му се дава API акредитив што може повторно да се користи. Покрај тоа, дозволите доделени преку скриената OAuth авторизација се во согласност со способноста на GhostAction да ги енумерира репозиториумите и да инјектира злонамерни датотеки со работни процеси под „.github/workflows/“.

„Актерот сега може да ја комбинира автоматизацијата од размер на репозиториум со индивидуално социјално инженерирање против луѓе чии сметки обезбедуваат пристап до проекти, организации, регистри и корисници надолу по ланецот“, велат од „OpenSourceMalware“.

За работите да бидат полоши, забележано е дека кампањата вклучува и компонента од втора фаза која опстојува на машините на програмерите дури и откако злонамерниот работен процес ќе биде отстранет.

Конкретно, овој пристап позајмува метод од прирачникот на Северна Кореја преку зачувување (committing) на три различни датотеки:

  • Датотека tasks.json за Microsoft Visual Studio Code (VS Code) со активатор „runOn: folderOpen“ што предизвикува таа да се изврши автоматски кога папката ќе се отвори во апликацијата.
  • Датотека „public/fonts/fa-solid-400.woff2“ која содржи товарен малвер-крадец дизајниран да собира AWS клучеви, PyPI токени, npm токени, најави за Git, акредитиви за Kubernetes кластери, SSH приватни клучеви и акредитиви за провајдери за вештачка интелигенција за Anthropic Claude и Google Gemini. Името на датотеката со фонт е исто како она што се користеше во севернокорејската кампања „Fake Font / PolinRider“ од јануари 2026 година.
  • Втор работен процес на GitHub Actions што се активира ако крадецот на информации (infostealer) никогаш не се изврши.

Задачата за VS Code е поставена автоматски да го извршува крадецот на акредитиви, кој, покрај собирањето податоци, инсталира cron задача што извршува код обезбеден од напаѓачот на секои пет минути. Собраните податоци се испраќаат до истиот сервер преку обичен HTTP на порт 8080. Идентификувани се вкупно 94 компромитирани репозиториуми со компонентата од втора фаза.

Што се однесува до вториот CI работен процес, тој е ист како оригиналниот злонамерен работен процес, но со додадени формати на акредитиви што треба да се бараат и резервна опција (fallback) што ги подигнува наодите во таен GitHub gist ако POST барањето не успее. Вториот работен процес се појавува под следните имиња:

  • lint.yml
  • ci-check.yml
  • build-check.yml
  • repo-health.yml
  • audit.yml
  • code-review.yml
  • test-suite.yml
  • cache-cleanup.yml

Од „OpenSourceMalware“ велат дека 94-те репозиториуми му припаѓаат на 66 сопственици, од кои 15 во меѓувреме се избришани, преименувани или направени приватни. Од репозиториумите што сè уште се достапни, повеќето изгледаат главно напуштени, при што едно од нив не е допрено повеќе од девет години. Шеесет и пет од 79-те немале commit повеќе од една година.

„Фазата 1 бара GitHub да го изврши работниот процес“, велат од „OpenSourceMalware“. „На 9 октомври, GitHub започна да го спречува извршувањето на злонамерниот работен процес, а брановите на 10 и 12 октомври не извлекоа никакви тајни. Фазата 2 додава лансирач кој воопшто не бара извршувач (runner), а пристигна шест дена по блокадата. Не можеме да тврдиме дека блокадата го предизвикала тоа. Можеме да кажеме дека операторот се преселил на место до кое контролите на GitHub не допираат.“

За да ја ублажат заканата, програмерите треба да го отповикаат пристапот до GitHub и токените од чист уред, да ги сменат своите лозинки, да ги ревидираат своите репозиториуми, да ги ротираат сите акредитиви до кои работните процеси можат да стигнат и да ги предупредат корисниците кои ги клонирале репозиториумите.

„Не знаеме кој е операторот, но нивната работа сугерира ограничено искуство“, изјави Џен Гил (Jenn Gile), соосновачка на „OpenSourceMalware“, за The Hacker News. „Филтерот за променливи на средината (environment-variable) на крадецот пропушта повеќето API клучеви, пребарувањето на домашниот директориум може да истече (timeout) и да ги отфрли сопствените резултати, а една единствена IP адреса раководи со екстракцијата, фишингот и бучното скенирање на интернет. Последната грешка е причината зошто пребарувањето на IP адресата сè уште наоѓа зарази.“

Извори:

  • The Hacker News – GhostAction Attackers Plant Credential Stealer Disguised as Font in 94 GitHub Repositories The Hacker News