Un atac de tip supply chain asupra larg utilizatului ‘tj-actions/changed-files’ GitHub Action, folosit de 23.000 de repository-uri, a permis potențial actorilor de amenințare să fure secrete CI/CD din jurnalele de construcție GitHub Actions.
GitHub Action este o unealtă de automatizare foarte populară proiectată pentru fluxurile de lucru GitHub Actions. Aceasta le permite dezvoltatorilor să identifice fișierele modificate într-un pull request sau commit și să ia acțiuni bazate pe acele modificări, fiind în general folosită în testare, declanșarea fluxului de lucru și validarea automată a codului.
Conform primelor raportări de la StepSecurity, atacatorii au adăugat un commit malițios la unealta pe 14 martie 2025, la 4:00 PM UTC, care a descărcat secrete CI/CD din procesul Runner Worker către depozitul oricărui proiect care folosea acțiunea. În consecință, dacă jurnalele fluxului de lucru erau accesibile public, oricine ar fi putut citi și fura secretele expuse.
Atacatorii au modificat codul acțiunii și au actualizat retroactiv mai multe etichete de versiune pentru a face referire la un commit malițios, astfel încât toate versiunile unei unelte au fost compromise.
Conform celei mai recente actualizări făcute de dezvoltatori, atacatorul a compromis un token de acces personal GitHub (PAT) folosit de un bot (@tj-actions-bot), care avea acces privilegiat la depozitul uneltei. Cu toate acestea, nu este clar în prezent cum a fost compromis exact PAT-ul.
Pe 15 martie, la 2:00 PM UTC, GitHub a eliminat acțiunea compromisă, iar la 10:00 PM UTC în aceeași zi, depozitul a fost restaurat cu codul malițios eliminat.
Cu toate acestea, compromisul are repercusiuni de durată pentru proiectele software afectate, astfel că a fost asignat un ID CVE (CVE-2025-30066) incidentului pentru urmărire.
În mod ciudat, codul malițios nu a exfiltrat ieșirea din memorie către un server remote, ci doar a făcut-o vizibilă în depozitele accesibile public.
‘Acțiunea compromisă a injectat cod malițios în orice fluxuri de lucru CI care o foloseau, descărcând memoria CI runner care conținea secretele fluxului de lucru,’ explică Wiz într-o descriere a incidentului.
‘În depozitele publice, secretele ar fi fost apoi vizibile tuturor ca parte a jurnalelor de flux de lucru, deși obfuscate ca o sarcină de codificare base64 dublu codată.’
Depozitul tj-actions restaurat a fost actualizat mai devreme astăzi pentru a include instrucțiuni privind ceea ce potențialii utilizatori afectați ar trebui să facă, care includ:
Pentru a preveni expunerea secretelor la compromiteri similare în viitor, GitHub recomandă ca toate acțiunile GitHub să fie direcționate către anumite hash-uri de commituri în loc de etichete de versiune.
De asemenea, GitHub oferă funcționalitate de listă albă care poate fi exploatată pentru a bloca acțiunile GitHub neautorizate/neîncredere.
Bazat pe o analiză a 14M de acțiuni malițioase, descoperiți primele 10 tehnici MITRE ATT&CK din spatele a 93% din atacuri și cum să vă apărați împotriva lor.
Leave a Reply