Buɗaɗɗen Tushen Maƙaryata: Hanyar Xygeni

Wannan shine kashi na huɗu a cikin shirin jerin posts game da abubuwan da ke cutarwa, inda muke gabatar da su Xygeni hanyar magance wannan barazanar, a matsayin wani ɓangare na tsarinmu na Open Source Security. 

Mun ga cewa yawan amincewa da abubuwan da ba a san su ba na tushen budewa na tushen da ba shi da tabbas yana amfani da masu laifi iri-iri don samar da halayen da ba a zata ba ko dai a cikin injunan haɓakawa, CI/CD tsarin, ko kuma an saka shi cikin manhajar ƙungiyar da abin ya shafa, don haka ana isar da shi ga abokan cinikin ƙungiyar. Mun bincika a cikin kashi na 2 hare-haren da ake amfani da su wajen yin rajistar jama'a don isar da malware da kuma abin da muka koya bayan mun kalli yadda miyagun masu aikata laifuka ke aiki, da kuma a baya kashi na 3 An yi nazari kan ikon da ke aiki (da waɗanda suka gaza) a kan wannan barazanar. 

Yanzu lokaci ya yi da za mu duba hanyar da za mu bi don magance matsalar. A cikin wannan shirin, za mu gabatar da dabarun da muke bi a Xygeni don namu Gargaɗin Farko game da Malware tsarin (MEW). Yadda wannan tsarin matakai da yawa ke aiki a ainihin lokacin da aka fitar da sabon sigar fakiti, yadda ake ɗaukar shaida daga tushe daban-daban, yadda ake yin rarrabuwa, waɗanne sharuɗɗan rarrabuwa muke bi, da kuma dalilin da yasa har yanzu ake buƙatar wasu bincike da hannu don tabbatar da yanayin ɗan takarar fakitin da ba shi da kyau. Haka nan za mu bayyana yadda muke taimaka wa NPM, GitHub, PyPI, da sauran manyan ababen more rayuwa a cikin yanayin tushen buɗewa don rage lokacin zama don malware. 

The pipeline

Gargaɗin Farko na Xygeni Malware (MEW) yana ci gaba da sarrafa kayan aiki, ko dai fakitin tarballs don ɗakunan karatu da tsarin tsarin don tsarin shirye-shirye masu goyan baya kamar JavaScript/Node ko Python, hotunan kwantena na Docker / OCI, ko kari da plugins don kayan aiki kamar IDE ko CI/CD tsarin. Ana buga irin waɗannan sassan a cikin rajistar jama'a tare da matakai daban-daban na tantance masu amfani.

Ga yadda tsarin yake aiki:

The mai ganowa Tsarin aiki yana samun ci gaban abubuwan da suka faru na bugawa. Taron bugawa shine ƙirƙirar sabon sigar wani sabon abu ko wanda ke akwai. Ganin cewa shahararrun rajista ba sa samar da tsarin mashaya ga masu sha'awar amfani da shi, ana yin hakan sau da yawa ta hanyar yin zaɓen rajista don abubuwan da suka faru kwanan nan. Kyakkyawan aiki daga OSSF, ciyarwar fakiti, tallafi Shahararrun rajista kamar PyPI ko Maven Central, kuma suna samar da hanyar haɗin kai ta hanyar ciyarwa. A cikin MEW mun ƙara wasu takamaiman aiwatarwa waɗanda ke rage lokacin jira, misali tare da kwafin bayanan CouchDB da NPM ke amfani da su wanda ke aiki tare da bayanan rajista na jama'a.

A cikin Xygeni, muna da kaya[1] na dukkan sassan (kai tsaye ko a kaikaice) da manhajar abokan cinikinmu ke amfani da su. Ana ciyar da daidaitattun sassan abokan ciniki akai-akai zuwa MEW don fifita nazarin: sassan da abokan cinikinmu ke amfani da su ana sarrafa su da wuri. Fifiko kuma ya dogara ne akan suna na mai wallafawa da kuma mahimmancin ɓangaren, don haka ana fifita sassan da suka fito daga masu wallafawa marasa suna.

The manazarta sannan a cinye abubuwan da ke jiran a cikin jerin gwanon fifiko. Lokacin da aka zaɓi sigar kayan aiki don bincike, ana sauke tarball ɗinsa daga rajista. Lura cewa ana nazarin kayan aiki na binary da aka haɗa: Yawancin abubuwan da ke cikin tushen buɗewa galibi suna fitowa ne daga ma'ajiyar tushen buɗewa, sau da yawa a github.com, wanda ake amfani da shi don mahallin kawai, kuma koyaushe ana neman malware a cikin tarball ɗin kayan aiki saboda masu barazanar suna yin ƙarya game da tushen da suke da'awar sun yi amfani da su don gina tarball ɗin kayan aikin da suka saki. 

Daga mahangar mai amfani

Ina jin kana tunani: Ta yaya zan iya amfana daga sanin wani nau'in fakiti mai cutarwa da wuri? "Tsarin Fakitin Mugunta: Menene Yanayin?" Mun ga cewa jimillar lokacin zama yana cikin kewayon kwanaki, yayin da sanarwar farko daga MEW ga abokan ciniki da ke amfani da ɓangaren da abin ya shafa tana cikin kewayon mintuna. Tare da madaidaicin shinge mai sauƙi.[2] Za ka iya toshe ginin (akwai matakan faɗakarwa guda biyu, ɗaya gaba ɗaya yana aiki ta atomatik lokacin da injin ya kammala da cewa akwai yuwuwar malware da kuma sanarwa daga baya lokacin da ƙungiyar tsaronmu ta tabbatar da kasancewar malware ta hanyar duba da hannu). Jira har sai rajistar ta tabbatar da malware kuma ta cire shi daga rajista yawanci ya yi latti saboda tsawon lokacin da aka fallasa shi.

Ƙungiyar na iya amfani da tsarin tsaro wanda ke duba ko akwai wani ɓangare da ke da yuwuwar malware (a cikin kowane ɗayan matakan faɗakarwa guda biyu) ko, ta hanyar API, da sauri gano ko wani daga cikin dogaro kai tsaye ko a kaikaice a cikin aikin software yana amfani da ɓangaren mugunta.

Yadda MEW ke Aiki: Cikakkun Bayanai

Babban Bayani: Injin Gano Malware

Mai nazarin yana amfani da na'urori daban-daban don kama shaidar aikata ba daidai ba. Masu ganowa suna haɗa nazarin da ba ya canzawa, nazarin iyawa, da nazarin mahallin.[3], kamar yadda aka bayyana a cikin rubutun da ya gabata na wannan jerin. 

A Xygeni, muna da ƙungiyar injiniya mai dogon gogewa a cikin nazarin tsaye, kuma wannan shine babban bambanci da sauran hanyoyin magance malware. Lura cewa ga wasu halittu, tarball ɗin da aka shirya ya ƙunshi ko dai lambar tushe (misali lambar JavaScript ko lambar TypeScript don fakitin NPM, tushen Python don fakitin PyPI), ko lambar da aka tattara kusa da lambar tushe don nazarin tsaye (misali lambar byte a cikin fayilolin JAR don Maven). Ga wasu, kamar hotunan kwantena, aiwatarwa ta binary abu ne gama gari, don haka ƙididdigar iya aiki ita ce dabarar da ake amfani da ita, tare da gano malware na al'ada bisa ga ƙa'idodin YARA da sa hannun malware. 

Lura cewa fasahohi masu sauƙi kamar maganganu na yau da kullun ko sa hannu ba su dace da gano halayen mugunta ba. Ka yi tunanin gano dropper ko mai saukewa: Akwai wani lamba ko binary a cikin fakitin ko an sauke shi daga wani yanki na waje, ba shi da alaƙa da ɓangaren (zai iya zama ɗaya daga babban jerin yankuna da mai barazanar ya saya[4], ko a yanki na halal don guje wa ganowa). Sannan ana aiwatar da wannan lambar ta amfani da ɗaya daga cikin ayyukan don hakan. Ana iya canza lambar don ɓoye URL ɗin saukewa ko aikin da ake amfani da shi don gudanar da lambar da aka sauke. Ana buƙatar cikakken nazarin kwararar bayanai don gano ta, ta amfani da cikakken injin bincike na tsaye, ko aiwatar da yashi a cikin akwatin (idan an cika sharuɗɗan da ake buƙata don gudanar da mummunan hali) zai iya gano wannan a cikin yanayin gabaɗaya.

Masu barazanar suna bin irin dabarun da aka tsara kuma aka aiwatar da na'urorin gano su. Akwai kuma wasu matakai kafin a sarrafa su, misali don cire ɓoyewar da ke ɓoye, waɗanda galibi ake buƙata don gano ɓoyayyun halayen. 

Ƙara Ma'ana

Wasu na'urorin gano bayanai suna amfani da bayanan mahallin. Misali, rashin daidaito tsakanin sigar da ke cikin rajistar sassan da kuma alamar/sakin da ke cikin ma'ajiyar GitHub da ke da alaƙa ya zama shaida mai ƙarfi cewa wataƙila wani mummunan ɗan wasa ya sami takardun shaidar bugawa don rajistar amma ba don ma'ajiyar GitHub ba. Hare-hare kamar wanda ke shafar mai siyar da walat ɗin crypto Ledger za a iya gane wannan rashin daidaito cikin sauƙi.

A maki na mugunta Ana ƙididdige (MS) daga binciken da aka gudanar da na'urorin gano cutar, bisa ga ƙarfin shaidar da aka kama. Ba duk binciken iri ɗaya bane, kuma tsarin aiwatarwa ya dace. 

Suna Mai Amfani da Sashe

Ba dukkan masu haɓaka tushen budewa aka ƙirƙira su daidai ba! 

Mai haɓaka manhaja mai suna zai iya samun damar satar asusun NPM ɗinsa (wannan yana faruwa ko da a cikin mutanen da ke da masaniyar tsaro), kuma a buga malware ta amfani da wannan asusun. Babu shakka suna ya kamata ya faɗi ba zato ba tsammani, kuma ya dawo da martabarsa ta baya ne kawai lokacin da aka dawo da asusun da aka sace kuma mai haɓaka ya gyara yanayin da ya haifar da karɓar asusun. Suna yana da wahalar samu amma ana iya rasa shi nan take.  

A MEW, mun aiwatar da cikakken tsarin kula da suna don ladabtar da ɗabi'u masu kyau da kuma hukunta ayyukan da ake zargi. Wannan tsarin yana farawa da sabbin masu amfani a tsaka-tsaki kuma yana daidaita sunansu bisa ga ayyukan da suke ci gaba da yi.

Sunar mai amfani tana inganta ta hanyar ayyuka masu kyau kamar riƙe asusun kafofin watsa labarun da ke aiki, ba da damar tantance abubuwa da yawa, ba da gudummawa akai-akai ga ayyuka, da sanya hannu commits tare da maɓallan da za a iya tantancewa. Akasin haka, suna yana taɓarɓarewa saboda ayyukan ƙiyayya kamar buga malware, amfani da adiresoshin imel da za a iya zubarwa, rashin sa hannu commits, ko kuma nuna alamu marasa ban mamaki a cikin gudummawar.

Babban burin tsarinmu shine tabbatar da yanayi mai aminci da aminci. Yana cimma wannan ta hanyar daidaita suna mai amfani bisa ga dalilai daban-daban, tare da girmama damuwar sirri da iyakokin rajista daban-daban.

Ana ƙididdige maki na suna na ciki ga mai amfani (shiga rajista da asusun github idan zai yiwu), tare da maki na mugunta da aka yi amfani da shi yayin rarrabuwar ɓangaren da ake nazari a kai, da kuma don samun cancantar wanda ke ƙarƙashin wallafa ɓangaren.

An Samu Shaida Kan Halayyar Mugunta. To Me? Tsarin Bita na Jagora

Mai rarrabawa na yanzu yana saita sigar ɓangaren da aka bincika zuwa ɗaya daga cikin nau'ikan "wanda aka tabbatar da cutarwa", "mai yiwuwa cutarwa", "babban haɗari", "ƙananan haɗari" ko "marasa cutarwa" bisa ga ƙa'idodi akan maki waɗanda ke tattara sakamakon da suna mai amfani/ɓangaren. Rarraba zuwa nau'ikan "babban haɗari" ko "mai yiwuwa cutarwa" yana haifar da bita da sanarwa ta hannu. Ana saita nau'in "wanda aka tabbatar da cutarwa" bayan bita da hannu ko lokacin da shaidar ta yi daidai da shaida ɗaya ga sigar da ta gabata wacce aka tabbatar da cutarwa. 

Idan akwai isassun shaidu game da yiwuwar mummunan hali, ana aika faɗakarwa ta farko (faɗakarwar keɓewa) ga ƙungiyoyin da abin ya shafa. Kamar yadda aka ambata a baya, hakan na iya toshe shigarwa ko gina software wanda ya dogara da ɓangaren keɓewa. 

Wannan yana haifar da matsala a cikin MEW na ciki dashboard don haka masu nazarin tsaro za su iya fara aiwatar da bitar hannu don ɓangaren. Ƙungiyar tana da kayan aiki na musamman (sandbox, deobfuscators, rarrabawa don binciken malware, bayar da rahoton kayan aikin malware) don tantance yanayin sigar kayan aikin da ake bincike cikin sauri. Yawancin malware ("anchovies" ko abubuwan da ba su da ƙwarewa a cikin ɓarna) ana sake duba su.  

Sakamakon bitar ya ƙare a cikin ɗayan biyun lafiya, don haka injin bincike na atomatik ya sami kuskure mai kyau wanda ake amfani da shi azaman ra'ayi ga mai rarraba koyo na na'ura don koyon tsarin; ko an tabbatar da rashin adalci, don haka ana bayyana ɓangaren a matsayin wanda ba shi da kyau ga rajistar jama'a, bayan an kammala bayar da rahoto. Ana aika sanarwa ta biyu ga ƙungiyoyin da abin ya shafa, waɗanda kuma za su iya zama cire kayan aikin, ko kuma tabbas toshe shi daga tsarin haɓaka sigar su ko kuma firewall ɗin kayan aikin da ake amfani da su a cikin rajistar su ta ciki.

Wannan saitin yana ba mu damar bincika dubban sabbin sigar kowace rana kuma mu gano goma da wataƙila suna da lahani, waɗanda daga nan muke sake dubawa da hannu. Ku tuna daga shirin da ya gabata cewa ɗaya cikin dubu goma shine adadin abubuwan da ke haifar da lahani da muke gani a cikin daji a yanzu. 

Ba da rahoto ga Rijista

Mun gano cewa yawancin rajistar jama'a, ɗaya daga cikin ginshiƙan tsarin buɗaɗɗen tushe, suna ba da hanyoyi masu iyaka don bayar da rahoton matsalolin tsaro, da kuma musamman abubuwan da suka shafi mugunta. Muna ƙoƙarin inganta tsarin da ke cikin tsarin bayar da rahoto. Yawanci muna karɓar imel na ra'ayi daga ƙungiyar tsaro a cikin rajista wanda ke tabbatar da cewa an cire ɓangaren daga rajista. 

A wasu lokutan ana amfani da rajistar wajen cin zarafi, ta hanyar karya sharuɗɗan amfaninta, amma ba ta haifar da mummunan hali a cikin manhajar da aka kawo ba. Haka kuma ana bayar da rahoton wannan ga rajistar, amma ba a sanar da shi ga ƙungiyoyi don iyakance hayaniya ba.  

Aiki na gaba

Akwai ci gaba da yawa a halin yanzu a kan taswirar hanya. Da farko dai, shafin jama'a don lafiyar sashin OS, musamman ma da ke da alaƙa da shaidar da aka samu game da yiwuwar aikata mugunta, a halin yanzu ana kan ci gaba da haɓaka ta. An yi nufin wannan a matsayin ƙaramin gudummawa ga al'ummar da ke buɗe hanyar sadarwa. Ku kasance tare da mu. 

Wani ci gaba da ake ci gaba da samu shine ingantacce mai rarraba koyon injin. MEW za ta koya daga rarrabuwar da ta gabata. Ana amfani da na'urar gano abubuwan da aka samu daga na'urorin gano injin, tare da makin mugunta da aka samo da kuma makin suna ga bangaren da kuma mai bugawa ("shaidar da aka samu") a matsayin shigarwa ga tsarin koyon injin wanda ke sabunta samfurin rarrabuwa. Makin fitarwa kawai idan rajistar ta tabbatar ko bangaren yana da cutarwa. Wannan ana kiransa da lambar "Oracle" kuma zai taimaka tare da ƙarin bayanicise qualifier, an tsara shi don ya zama mai kyau (maimaita yawan tunawa wato kada ku rasa abubuwan da ke cutarwa) amma tare da ƙarancin abubuwan da ke cutarwa (kar a bayar da rahoton abubuwan da ke lafiya a matsayin abubuwan da ke cutarwa). 

A maki mai mahimmanci za a ƙara shi don sharuɗɗan fifiko, ban da kasancewa cikin jerin dogaro da abokan ciniki, da ƙarancin suna na mai wallafa. A bayyane yake cewa ya kamata a yi la'akari da ayyukan da ke da ƙarin tasiri da mahimmanci tun da farko don yin nazari. Ba za mu sake ƙirƙirar dabarar a nan ba, kuma mu bi diddigin Maki na Muhimmancin Aikin Buɗaɗɗen Tushe.

Ana ci gaba da haɓaka tallafi ga ƙarin yanayin halittu. Fasaha da kayan aiki masu faɗi kamar PHP ko Jenkins plugins suna cikin taswirar hanya.

Muna kuma bincike ko za a iya taimakawa tsarin bita da hannu tare da AI don sauƙaƙe bincike don ƙananan abubuwan da suka fi rikitarwa. 

A kashi na gaba kuma na ƙarshe na wannan jerin, "Amfani da Tushen Buɗaɗɗe: Abin da Za a Yi Tsammani Daga Mugayen Mutane", za mu mayar da hankali kan sabbin hanyoyin da maƙiyan ke ɗauka don sa hare-haren su zama masu ɓoye, masu wahalar ganowa, waɗanda aka fi mayar da hankali kan takamaiman masana'antu, da kuma samun riba. Shin za a kai hare-haren ransomware ta amfani da wannan motar? Ta yaya miyagun mutane ke amfani da kayan aikin AI don isar da malware mai rikitarwa? Shin manyan ayyukan da aka fi sani suna cikin haɗari? Wannan don bai wa masu karatu jin daɗin wannan tseren makamai, da abin da za su yi tsammani a cikin ɗan gajeren lokaci (rabin na biyu na 2024) da kuma matsakaicin lokaci (2025). 

Za mu kammala da wasu tunani kan matakan da al'umma za ta iya ɗauka ba tare da canza yanayin buɗewar duniyar buɗe ba. Misali, wata hanya mafi inganci don bayar da rahoton malware ga rajistar jama'a, da kuma raba shaidar abubuwan da za su iya zama masu cutarwa ga rajistar da al'umma zai zama ƙaramin mataki a kan hanya madaidaiciya zuwa ga burin rufe ƙofofin ga masu barazana. 

Bai kamata malware da ke cikin sassan bude-tushen ya kawo cikas ga fa'idodin da al'ummar bude-tushen ta kawo wa al'ummarmu ba.  

  • [1] Na'urar daukar hoton mu tana gano sassan tushen budewa da ayyukan software da aka yi nazari a kansu suka ambata, don haka an san cikakken jadawalin dogaro na zamani, aƙalla ga ayyukan da ake duba akai-akai. Xygeni OSS tana fallasa API wanda abokan ciniki suma zasu iya amfani da shi yayin yin rajistar wani ɓangare na sha'awa, gami da bayanai game da rauni da shaidar cutarwa.
  • [2]  Layin kariya na iya karya ginin idan aka gano wani yanayi da ya dace da matsalolin tsaro. Sakamakon tsaro kamar rauni mai mahimmanci da za a iya isa gare shi ko amfani da kayan da aka keɓe za a iya ɗaukarsa da tsanani don karya ginin ga software ɗin da abin ya shafa.
  • [3]Masu nazarin tsaronmu suna gudanar da ɓangaren ko rubutun shigarwarsa a cikin yanayi mai yashi idan ya cancanta. Duk da haka, MEW ba ya yin nazarin motsi, musamman saboda ba koyaushe ake yin mummunan ɗabi'ar a cikin hare-haren da aka yi niyya ba kuma saboda dabarun gujewa da masu barazanar ke amfani da su don guje wa nazarin motsi. 
  • [4]  An ba wa wannan dabarar suna, Rijistar Tsarin Domain ko RDGA, da kuma sabbin masu barazana kamar abin da ake kira Revolver Zomo An zuba jari har dala miliyan 1 a cikin domains 500, wanda hakan ya nuna yadda masana'antar laifukan yanar gizo ke da riba. 

Tsarin Fakitin Mugunta: Menene Yanayin?

Kariya Daga Fakitin Mugunta na OSS: Me Yake Aiki (Ba Ya Aiki)

kayan aikin nazarin kayan aikin sca-tools-composition
Fifiko, gyara, da kuma kare haɗarin software ɗinka
Sami Asusunka Kyauta.
Babu katin bashi da ake bukata.

Tabbatar da haɓaka software da isar da shi

tare da Xygeni Product Suite