Ievads: GitHub spēļu uzplaukums un riski, kas slēpjas aiz jautrības
Ja kādreiz esat meklējis GitHub spēles, jūs, iespējams, esat saskāries ar visu, sākot no pārlūkprogrammā balstītām šāvējām līdz retro kloniem, kas veidoti, izmantojot JavaScript vai Python. Šos projektus ir jautri izmēģināt, viegli palaist, un tie bieži parādās YouTube pamācībās vai forumos. Tā rezultātā tie ir kļuvuši īpaši populāri skolās, kur izstrādātāji un skolēni bieži vien tiem piekļūst, izmantojot GitHub neatbloķētas spēles vai dakšveida tos no GitHub io spēles lpp.
Šīs popularitātes dēļ gan izstrādātāji, gan studenti klonē šīs repozitoriju kopijas, palaiž kodu un bez īpašas domāšanas turpina darbu. Taču problēma ir šāda: ne visas šīs spēles ir tādas, kā šķiet.
Dažas spēļu krātuves izmanto aizdomīgus instalēšanas skriptus. Citas izmanto novecojušas vai neaizsargātas atkarības. Dažas pat slēpj ļaunprogrammatūru līdzekļos, konteineros vai izvietošanas failos. Tā kā daudzi izstrādātāji šos projektus mitina, izmantojot GitHub io spēles, risks izplatās ātri un bieži vien paliek nepamanīts.
Šajā ierakstā mēs izpētīsim, kā spēļu krātuves var kļūt par nopietnu drošības apdraudējumu. Mēs arī parādīsim, kā saglabāt drošību, nezaudējot savu zinātkāri vai... CI/CD.
Kāpēc uzbrucēji mērķē uz GitHub spēlēm un neatbloķētām krātuvēm
No pirmā acu uzmetiena spēļu repozitoriji vietnē GitHub šķiet nekaitīgi. Galu galā tie bieži vien ir mazi eksperimenti vai izglītojoši projekti, kas izveidoti izklaidei. Tomēr uzbrucēji tos uztver citādi. Patiesībā daudzi šādi repo tiek izmantoti kā ļaunprogrammatūras piegādes platformas, bieži maskējoties kā GitHub spēles or Github atbloķētas spēles.
Piemēram, draudu izpildītājs, kas pazīstams kā Zvaigžņu vērotājs Goblins pārvalda tīklu, kurā ir vairāk nekā 3,000 GitHub spoku kontu, kas nodēvēta par “Stargazers Ghost Network”. Šī grupa apzināti veido zvaigznītes, veido atzarojumus un uzrauga ļaunprātīgas repozitorijus, lai palielinātu savu redzamību un leģitimitāti, parasti vēršoties pret lietotājiem, kas meklē rīkus vai spēļu krāpšanos. Šīs repozitoriji ir izmantoti, lai izplatītu informācijas zagļus un izspiedējvīrusus, piemēram, Atlantida Stealer, Rhadamanthys, Lumma Stealer un RedLine.
Turklāt vēl viena sarežģīta kampaņa ar nosaukumu Ūdens lāsts ir vismaz apbruņojis 76 GitHub konti, ieguldot daudzpakāpju ļaunprogrammatūru šķietami likumīgos rīkos. Lētākā slodze ir paslēpta Visual Studio projekta failos (PreBuildEvent), izvietojot apmulsinātus skriptus un uz Electron balstītus bināros failus akreditācijas datu zādzībai, pārlūkprogrammas datu ieguvei un ilgtermiņa saglabāšanai. Mērķu vidū ir izstrādātāji, DevOps komandas un spēļu veidotāji.
Uzbrucēji izmanto faktu, ka daudzi izstrādātāji klonē GitHub spēles, lai tās pārbaudītu vai mācītos no tām, nepārskatot kodu. Līdzīgi GitHub IO spēles, kas ir GitHub lapu krātuves, var mitināt ļaunprātīgu JavaScript, attēlus vai pāradresācijas skriptus, kas tiek izpildīti, ielādējot tos pārlūkprogrammā. Tā kā daudzas GitHub IO spēles tiek atdalītas un atkārtoti izmantotas bez dziļas pārbaudes, uzbrucēji tās izmanto, lai ienestu apmulsinātu kodu, slēptus izsekotājus vai lejupielādes aktivizētājus. Šī taktika izmanto izstrādātāju uzticību atvērtā pirmkoda projektiem.
Īsāk sakot, spēļu repozitoriju un neatbloķētu spēļu projektu popularitāte padara tos par auglīgu augsni uzbrucējiem. Bez pienācīgas pārbaudes zinātkārs izstrādātājs var ieviest ļaunprogrammatūru savā vidē, vienkārši klonējot vai mitinot spēļu repozitoriju.
Vai vēlaties aizsargāt visus savus GitHub projektus?
Ja vēlaties uzzināt, kā aizsargāt savus GitHub repozitorijus ārpus spēļu modifikācijām, nepalaidiet garām mūsu padziļināto ierakstu par atļaujām. pull requests, CI/CD integrācija un vēl vairāk.
Ļaunprogrammatūras modeļi GitHub atbloķētajās spēlēs un GitHub IO spēlēs
Kad izstrādātāji pēta projektus, kas apzīmēti kā github unblocked gamesdaudzi šķiet nekaitīgi. Tomēr vairāki atkārtoti modeļi atklāj nopietnus draudus, kurus var viegli nepamanīt.
Kampaņa: Ūdens lāsts
Trend Micro atklāja kampaņu ar nosaukumu Ūdens lāsts, kurā vismaz 76 GitHub konti mitinātas ieroču krātuves, kas maskējas kā izstrādātāju rīki vai spēļu modifikācijas. Šīs krātuves iegulda ļaunprātīgu slodzi, izmantojot <PreBuildEvent> tagus Visual Studio projekta failos. Veidošanas laikā apmulsināti PowerShell vai VBS skripti lejupielādē šifrētus ZIP arhīvus, instalē uz Electron balstītus bināros failus un izgūst akreditācijas datus, pārlūkprogrammas datus un sesijas žetonus. Ļaunprogrammatūra arī ievieš noturību, izmantojot ieplānotus uzdevumus un reģistra izmaiņas.
Pseidokods GitHub spēlēs: Āķis
Pseidokods: Aptumšota PowerShell izpilde
Šis vienkāršotais piemērs parāda, kā ļaunprātīgs kods izvairās no ierakstīšanas diskā, dekodējot un izpildot tieši atmiņā.
Kampaņa: Ūdens lāsts
Trend Micro identificēja apdraudējuma operāciju, kas pazīstama kā Ūdens lāsts, kur uzbrucēji izmantoja vismaz 76 GitHub konti lai mitinātu ieroču krātuves. Šie projekti šķita kā izstrādātāju rīki vai spēļu modifikācijas. Iekšēji tie iestrādāja ļaunprātīgu loģiku būvēšanas failos, īpaši izmantojot <PreBuildEvent> tags programmā Visual Studio .csproj faili.
Starp uzbrucējiem bija iekļauti daudzpakāpju skripti, kas lejupielādēja šifrētus ZIP failus, izvilka failus un izpildīja aizmugures durvis. Turklāt uzbrucēji pievienoja saglabāšanas mehānismus, izmantojot Windows reģistra rediģēšanu un ieplānotos uzdevumus.
Pseidokoda piemērs: Visual Studio būvēšanas āķis
Pseidokods: Izpilde atmiņā, izmantojot PowerShell
Šī metode ļauj izvairīties no ierakstīšanas diskā, kas palīdz uzbrucējiem apiet pretvīrusu noteikšanu un iegūt slepenību.
Kampaņa: Zvaigžņu vērotāja goblina un spoku konti
Vēl vienu liela mēroga uzbrukumu dokumentēja Check Point Research, kas atklāja, ka Stargazers Ghost tīklsŠajā kampaņā tika izmantots vairāk nekā 3,000 viltus GitHub kontu lai ļaunprātīgās krātuvēs palielinātu zvaigznes, atzarus un vērotājus. Mērķis bija radīt nepatiesu leģitimitātes sajūtu.
Šie spoku konti palīdzēja reklamēt ļaunprogrammatūru, piemēram, Atlantijas zaglis, Lumma, Rhadamantis, un Sarkanā līnija, galvenokārt mērķējot uz izstrādātājiem un spēlētājiem. Tikai četru dienu laikā viens uzbrukuma vilnis inficēja vairāk nekā 1,300 cietušie izplatot modificētus spēļu modifikāciju komplektus, izmantojot Discord un README saites.
Pseidokoda piemērs: ļaunprātīgs README fails
Bieži sastopamas ļaunprogrammatūras shēmas GitHub spēļu krātuvēs
| Modelis | Apraksts |
|---|---|
| Skriptu iepriekšēja instalēšana/veidošana | Skripti, kas instalēšanas vai izveides laikā tiek palaisti automātiski, lai ielādētu un izpildītu attālās vērtās slodzes, bieži vien bez lietotāja ziņas. |
| Typosquatting un viltus dakšiņas | Ļaunprātīgi projekti, kas atdarina populāru rīku vai spēļu repozitoriju nosaukumus vai struktūru, lai maldinātu izstrādātājus tos instalēt. |
| GitHub lapu ļaunprātīga izmantošana | JavaScript, attēli vai pāradresācijas, kas paslēptas `github io games` lapās, kuras lapas ielādes laikā aktivizē ļaunprātīgu skriptu izpildi. |
| Viltus popularitātes signāli | Spoku konti mākslīgi palielina zvaigznes, atzarus un vērotājus, lai ļaunprātīgas krātuves izskatītos uzticamas. |
Šīs metodes nav teorētiskas. Tās jau ir novērotas dzīvajos apstākļos. ļaunprogrammatūras kampaņas, no kuriem daudzi bija vērsti uz izstrādātājiem, kuri kā ieejas punktus izmanto spēļu krātuves.
Par laimi, dažas drošības platformas var pamanīt šīs tendences, pirms tās rada kaitējumu. Nākamajā sadaļā mēs parādīsim, kā Xygeni atklāj, bloķē un novērš šos draudus jūsu ierīcē. SDLC.
Kā Xygeni aizsargā GitHub spēles, atbloķētus projektus un CI/CD Pipelines
Kad GitHub spēļu repozitorijos parādās riskanti modeļi, Xygeni nodrošina pilna spektra aizsardzību, lai apturētu draudus, pirms tie apdraud jūsu sistēmas vai piegādes ķēdi.
1. Agrīna brīdināšana: ļaunprogrammatūras noteikšana reāllaikā GitHub spēlēs un atkarībās
Ksigēni nepārtraukti skenē jaunas pakotnes NPM, Maven, PyPI un citur. Tas ietver pakotnes, kas iegultas neparedzētās vietās, piemēram, spēļu krātuvēs vai Github nebloķētos spēļu projektos, kas koplietoti forumos vai skolu tīklos. Ja tiek atrasta aizdomīga sastāvdaļa, Xygeni to automātiski ievieto karantīnā, bloķē tās izmantošanu jūsu atkarībās un nosūta jūsu komandai reāllaika brīdinājumus. Tas novērš ļaunprātīgu vērtumu iekļūšanu jūsu koda bāzē vai CI/CD pipeline.
2. Sasniedzamības apzināšanās SCA ar viedu prioritāšu noteikšanu
Tā vietā, lai pārslogotu savu komandu ar brīdinājumiem, Ksigēni novērtē, vai jūsu kodā faktiski tiek izmantota ievainojamība (sasniedzamība) un ietver riska vērtēšanu (EPSS, ietekme uz uzņēmējdarbību), lai atklātu vissvarīgākās problēmas. Tas ievērojami samazina troksni un nodrošina, ka jūsu komanda rīkojas pie tā, kas patiešām ir svarīgs.
3. Automatizēta labošana, izmantojot Pull Requests
Kad tiek atklāta ievainojamība vai ļaunprātīga atkarība ar zināmu labojumu, Xygeni automātiski izveido Pull Request lai uzlabotu vai novērstu problēmu. Tas paātrina reakcijas laiku, ierobežo manuālo darbu un nodrošina jūsu pipeline droša.
4. CI/CD Drošības kontroles ļaunprātīgu versiju bloķēšanai
Xygeni integrējas ar būvējumu pipelineizmantojot GitHub Actions, Jenkins, GitLab, Azure Pipelines un citi. Tas skenē būvēšanas skriptus, Dockerfiles un CI/CD konfigurācijas aizdomīgām komandām, piemēram, apgrieztām čaulām vai instalēšanas skriptiem, un var bloķēt būvējumus, ja tiek atklāts bīstams kods.
5. Veidojiet integritāti, izmantojot SLSA atbilstošas apliecināšanas
The Build Security modulis izveido parakstītas atestācijas pēc SLSA un in-toto standardmetadatu iegulšana avotā, atkarības, SBOMun testus. Ja notiek neatļautas izmaiņas, apliecinājuma validācija neizdodas un pipeline apstājas automātiski.
6. Anomāliju noteikšana SCM un CI artefakti
Xygeni nepārtraukti uzrauga jūsu pirmkodu un CI vidi, lai atklātu neparastu uzvedību, piemēram, commitapejot filiāles aizsardzību, nezināmus lietotājus vai negaidītas žetonu piešķiršanas. Apvienojumā ar tās SAST dzinējs, tas identificē slēptas aizmugurējās durvis vai injicētie skripti pirms apvienošanas vai izvietošanas.
7. Automatizēta aktīvu atklāšana un ASPM redzamība
Xygeni būvē a tiešraides inventārs no visa jūsu SDLC ekosistēma, tostarp krātuves, līdzstrādnieki, pipelines, atkarības un mākoņa infrastruktūra. Šī redzamība nodrošina dinamisku risku prioritāšu noteikšanu, atbilstības kartēšanu (piemēram, NIS2, DORA) un auditam gatavus pierādījumus, netraucējot esošās darbplūsmas.
Ko GitHub spēles nozīmē drošiem izstrādātājiem: Esiet zinātkāri, esiet drošībā
- Ja repozitorijs satur slēptu veidošanas skriptu, kas lejupielādē ļaunprātīgu kodu (piemēram, PowerShell skriptu pēc instalēšanas), Xygeni to atzīmēs un bloķēs pirms izpildes.
- Apvienojot kodu, kas atsaucas uz aizdomīgu atkarību, Xygeni to gan bloķē, gan piedāvā automātisku labošanu, izmantojot Pull Request.
- Ja GitHub Pages mitinātajā projektā ir paslēpti ļaunprātīgi skripti, Xygeni SCA un ļaunprogrammatūras noteikšana tos identificē pat tad, ja tie tiek izpildīti tikai lapas ielādes laikā.
- būvēt pipelines noraidīs commitJa izveidotie artefakti vai konfigurācijas neiztur atestācijas pārbaudes, tas neļauj kompromitētajām versijām sasniegt ražošanas vidi.
Ar Xygeni jūs varat turpināt atklāt un izmēģināt Github spēles ar pārliecību. Katrs solis, sākot no klonēšanas līdz izvietošanai, ir aizsargāts. Izstrādātāji saglabā zinātkāri, pipelinesaglabājiet drošību, un jūsu piegādes ķēde paliek tīra.





