AI-enabled GitHub Actions zinaweza kutekwa kwa maoni (comment) moja tu, zikivuja funguo za API, tokeni za wingu na siri nyinginezo. Mtafiti wa usalama amegundua repository 22 za programu huru (open-source) ambapo kichocheo cha umma (public trigger), zana ya AI inayojiendesha kwa alama ya “skip prompts” na siri zilizofichuliwa vinatengeneza njia rahisi ya kutoa siri hizo nje.

Jinsi hitilafu inavyofanya kazi

Miradi sasa inaweka mawakala wa AI—Claude Code, GitHub Copilot CLI, na zana zinazofanana na hizo—moja kwa moja kwenye mifumo ya CI. Hatua ya mtiririko (workflow step) huendesha amri ya shell na mara nyingi huongeza alama (flag) inayoiambia zana hiyo kupuuza maombi ya ruhusa ya mwingiliano. Mtiririko unapoanza kutokana na ingizo lolote la umma—issue, comment, au kichwa cha pull-request—mshambuliaji anahitaji tu kuweka mstari mmoja wa maandishi ambao AI itautambua kama amri.

AI, ambayo tayari imepewa ufikiaji usio na kikomo wa shell kupitia alama ya “skip prompts”, husoma variable yoyote ya mazingira (environment variable) au faili ambayo mtiririko huo unaifichua. Ikiwa kazi hiyo pia inapakia siri—funguo za API, tokeni za huduma za wingu, au taarifa kamili za akaunti ya huduma (service-account credentials)—AI hupeleka thamani hizo kwenye seva inayodhibitiwa na mshambuliaji. Hakuna mabadiliko ya kodi, hakuna utegemezi (dependency) mpya, ni maoni tu yanayoonekana kuwa hayana madhara.

Mifano ya ulimwengu halisi

Mtafiti alithibitisha repository tatu zenye udhaifu ambazo tayari zimeshapata marekebisho:

  • pymc-labs/pymc-marketing – issue ya umma inaweza kutumika kufikia funguo ya Anthropic API kupitia uingizaji wa maelekezo (prompt injection).
  • MadAppGang/dingo – mtiririko uliipa Claude Code ufikiaji kamili wa Bash na kufichua siri mbili katika kazi hiyo hiyo.
  • MadAppGang/claudish – ilitumia kiolezo (template) kile kile chenye udhaifu kama mradi wa dingo.

Ugunduzi mmoja ulihusisha funguo ya akaunti ya huduma ya wingu iliyokuwa hai, ambayo mtafiti aliripoti moja kwa moja kwa timu ya usalama ya mtoa huduma mkubwa wa AI. Ripoti kumi na mbili za ziada zinazosubiriwa na watunza (maintainers); majina yao hayatawekwa wazi hadi marekebisho yatakapowekwa hewani.

Hatari iliyopo

Mshambuliaji anapotoa siri, uharibifu unaweza kuwa wa papo hapo na wa gharama kubwa. Funguo ya akaunti ya huduma ya wingu inatoa ufikiaji usio na kikomo wa rasilimali za kompyuta, sehemu za kuhifadhia data (storage buckets) na huduma nyingine za kulipia. Funguo ya API kwa mtoa huduma wa modeli kubwa ya lugha (large-language-model) inaweza kuendesha maswali yasiyo na kikomo, na huenda ikasababisha gharama za maelfu ya dola. Kwa sababu shambulio hili huendeshwa ndani ya mazingira ya CI, uvujaji unaweza kuenea: bidhaa yoyote (artifact) inayojengwa kwenye runner aliyeathiriwa inaweza kubeba kodi hasidi, na kugeuza repository moja kuwa njia ya kushambulia mnyororo wa ugavi (supply-chain vector).

Kwa timu zinazotegemea CI inayosaidiwa na AI, mabadiliko ya faida na hasara ni makubwa. Urahisi wa kodi inayozalishwa kiotomatiki, linting au nyaraka lazima uzingatiwe dhidi ya hatari kwamba maoni ya umma yanaweza kuwa mlango wa siri (backdoor).

Kwa nini udhaifu huu ni rahisi kuupuuza

Mtafiti hapo awali aliwasilisha ripoti sita ambazo baadaye zilifutwa. Kufutwa huko kulitokana na dhana kuhusu ukaguzi wa ruhusa wa GitHub Actions, na si kutokana na ukaguzi wa mstari kwa mstari wa kodi chanzo ya Action hiyo. Maelezo na hisia zinaweza kupotosha; njia pekee ya kuaminika ya kuthibitisha hali ya usalama ya hatua inayotumia AI ni kukagua kodi inayoiendesha zana hiyo na faili ya YAML ya mtiririko inayoiunganisha.

Orodha ya hatua za kuzuia

Ikiwa unaendesha AI CLI au zana inayofanana ndani ya mtiririko wa GitHub Actions, jibu maswali haya mawili kabla ya kuunganisha (merging):

  1. Nani anaweza kuchochea mtiririko? Weka vichocheo kwa matukio yanayoaminika (k.m., kusukuma kodi kwenye matawi yaliyolindwa) au hitaji idhini ya wazi kwa kazi zinazoanzishwa na wachangiaji wa nje. Epuka on: issue_comment au on: issues bila vizuizi vya ziada.

  2. Ni siri zipi zinapakia katika kazi hiyo hiyo? Usifichue kamwe funguo za API, tokeni za wingu, au taarifa za akaunti ya huduma katika kazi inayojiendesha pia na wakala wa AI mwenye ufikiaji usio na kikomo wa shell. Gawanya hatua zenye siri nyingi katika kazi au runners waliojitenga ambao hawaiti zana za AI.

Hatua za ziada za kuimarisha:

  • Ondoa alama inayopuuza maombi ya ruhusa, na kulazimisha zana ya AI kuomba uthibitisho wa wazi kabla ya kutekeleza amri za shell.
  • Ongeza hatua inayosafisha au kuficha variable yoyote ya mazingira ambayo zana ya AI inaweza kusoma.
  • Tumia runners wa kujihudumia (self-hosted) wenye udhibiti wa mtandao ili kuzuia kutoa siri nje (exfiltration) kwenda kwenye maeneo yoyote.

Upande wa pili: manufaa ya AI katika CI

Wanaunga mkono hoja kwamba ongezeko la tija linazidi hatari. Mapendekezo ya kodi ya kiotomatiki hupunguza muda wa ukaguzi, na upimaji unaoendeshwa na AI huibua hitilafu mapema. Hata hivyo, urahisi huo huo unaongeza eneo la mashambulizi. Siri si kuacha kutumia AI bali ni kutendea zana yoyote yenye mamlaka ya kiwango cha shell kama njia inayoweza kutumika kushambulia.

Nini cha kufuatilia baadaye

Matokeo haya tayari yamezua mijadala kwenye majukwaa ya usalama ya GitHub kuhusu ruhusa kali zaidi za kimsingi kwa Actions zinazowezeshwa na AI. Maboresho ya baadaye ya jukwaa yanaweza kujumuisha:

  • Alama inayozilazimisha zana za AI kufanya kazi katika mazingira ya sandboxed bila ufikiaji wa moja kwa moja wa shell.
  • Ugunduzi wa ndani wa mifumo ya prompt-injection katika maudhui ya issue au maoni.
  • Tahadhari za kiotomatiki wakati workflow inapochanganya vichocheo (triggers) vya umma na kazi (jobs) zenye siri.

Kwa sasa, jukumu linabaki kwa watunzaji wa repository. Repository 22 zilizotambuliwa zinaonyesha kuwa tatizo hili si la pekee; mradi wowote unaoiga mfumo huo huo wa workflow uko hatarini. Ukaguzi wa haraka wa mipangilio ya CI unaweza kufichua tatizo kabla ya mshambuliaji kulifanya.

Kiini cha jambo: Mstari mmoja tu wa maandishi kwenye issue ya umma ya GitHub unaweza kumpa wakala wa AI udhibiti kamili juu ya mazingira yako ya CI na kuiba siri unazohifadhi hapo. Hakikisha nani anaweza kuanzisha workflows zako, weka siri mbali na hatua zinazoendeshwa na AI, na ukague kila alama inayotoa ruhusa zisizodhibitiwa. Gharama ya uvunjifu wa usalama ni kubwa zaidi kuliko juhudi za ukaguzi wa nidhamu.