Ev beşê çaremîn e di rêzefîlmê de rêze postên derbarê pêkhateyên xerabkar de, ku em pêşkêş dikin Xygeni rêbaza ji bo çareserkirina vê gefê, wekî beşek ji vegirtinên me ji bo Open Source Security.
Me dît ku baweriya zêde bi pêkhateyên çavkaniya vekirî yên çavkaniya ne diyar ji hêla sûcdarên her cûre ve tê bikar anîn da ku tevgerên nediyar derxînin holê ku an di makîneyên pêşdebiran de werin xebitandin, an jî CI/CD sîsteman, an jî di nav nermalava rêxistina mexdûr de hatine bicîhkirin, da ku ew ji xerîdarên rêxistinê re were şandin. Me di nav de analîz kir beşê #2 êrîşên ku qeydên giştî bikar tînin da ku malware belav bikin û tiştên ku me piştî temaşekirina ka aktorên xirab çawa dixebitin, û di yên berê de fêr bûne beşê #3 kontrolên ku li dijî vê tehdîdê dixebitin (û yên ku têk diçin) hatin lêkolînkirin.
Niha dem hatiye ku em li nêzîkatiya xwe ya ji bo pirsgirêkê binêrin. Di vê beşê de, em pêşkêş dikin ka em li Xygeni kîjan stratejiya ji bo me dişopînin. Hişyariya Zû ya Malware Sîstema (MEW). Ev sîstema pir-qonaxî çawa di wextê rast de dixebite dema ku guhertoyek pakêtek nû tê berdan, delîl çawa ji çavkaniyên cûda têne girtin, triyaj çawa tê kirin, em kîjan pîvanên dabeşkirinê dişopînin, û çima hîn jî hin analîzên destî hewce ne ku xwezaya namzetek pakêtek xerabkar piştrast bikin. Em ê her weha rave bikin ka em çawa alîkariya NPM, GitHub, PyPI, û binesaziyên din ên sereke di ekosîstemên çavkaniya vekirî de dikin da ku dema mayîna malware kêm bikin.
Ew pipeline
Hişyariya Zû ya Xygeni Malware (MEW) pêkhateyek bi berdewamî pêvajo dike, an pakêtên tarball ji bo pirtûkxane û çarçove ji bo ekosîstemên bernamekirinê yên piştgirîkirî yên wekî JavaScript/Node an Python, wêneyên konteynerê Docker / OCI, an jî dirêjkirin û pêvekên ji bo amûrên mîna IDE an CI/CD sîsteman. Ev pêkhate di qeydên giştî de bi astên cûda yên kontrolkirina bikarhêneran têne weşandin.
Dîtinek şematîk a çawaniya xebitandina pergalê li jêr e:
Ew keşfkar pêvajo çavkaniya bûyerên weşanê werdigire. Bûyerek weşanê afirandina guhertoyek nû ya pêkhateyek nû an heyî ye. Ji ber ku qeydên populer mekanîzmayek pub-sub ji bo xerîdarên eleqedar peyda nakin, ev yek pir caran bi anketkirina qeydê ji bo bûyerên dawî tê kirin. Projeyek hêja ji OSSF, pakêt-xwarin, piştgirî tomarên populer ên wekî PyPI an Maven Central, û navrûyek yekgirtî ya li ser bingeha xwarinê peyda dikin. Di MEW de me hin pêkanînên taybetî zêde kirin ku dema li bendê kêm dikin, mînakî bi kopiyek databasa CouchDB-ê ku ji hêla NPM-ê ve tê bikar anîn ku bi databasa qeyda giştî re hevrêz e.
Li Xygeniyê, me envanterek heye[1] ji hemû pêkhateyan (rasterast an nerasterast) ku ji hêla nermalava xerîdarên me ve têne bikar anîn. Koordînatên pêkhateyên xerîdaran bi rêkûpêk ji MEW re têne şandin da ku analîzan pêşîn bikin: pêkhateyên ku ji hêla xerîdarên me ve têne bikar anîn zûtir têne pêvajo kirin. Pêşanî her weha li ser navûdengê weşanger û krîtîkbûna pêkhateyê ye, ji ber vê yekê pêkhateyên ku ji weşanxaneyên bi navûdengek nizm têne jî pêşîn têne girtin.
Ew analîzker dûv re pêkhateyên li bendê yên di rêza pêşîniyê de biqedînin. Dema ku guhertoyek pêkhateyek ji bo analîzê tê hilbijartin, tarball-a wê ji qeydê tê daxistin. Bala xwe bidinê ku pêkhateya pakêtkirî, duqatî tê analîzkirin: Piraniya pêkhateyên çavkaniya vekirî bi gelemperî ji depoyek çavkaniya vekirî têne, pir caran li github.com, ku tenê ji bo çarçoveyê tê bikar anîn, û malware her gav di tarball-a pêkhateyê de tê lêgerîn ji ber ku aktorên gefê bi awayekî sîstematîk derewan dikin li ser çavkaniyên ku ew îdîa dikin ku ji bo avakirina tarball-a pêkhateyê ku ew berdidin bikar anîne.
Ji perspektîfa bikarhêner
Ez dibihîzim ku hûn difikirin: Ez çawa dikarim sûdê ji zanîna zû ya guhertoya pakêtek zirardar werbigirim? Di beşê de "Anatomiya Pakêtên Xerabkar: Trend Çi ne?" me dît ku tevahiya dema mayînê di nav rêza rojan de ye, lê agahdariya yekem ji MEW ji xerîdarên ku pêkhateya bandorkirî bikar tînin re di nav rêza deqîqeyan de ye. Bi rêgehek parastinê ya hêsan[2] dibe ku hûn avakirinê asteng bikin (du astên hişyariyê hene, yek bi tevahî otomatîk e dema ku motor digihîje wê encamê ku malware potansiyel heye û agahdariyek paşê dema ku tîma ewlehiyê ya me bi vekolîna destî hebûna malware piştrast dike). Li bendê bimînin heta ku qeyd malware piştrast bike û wê ji qeydê rake bi gelemperî pir dereng e ji ber pencereya dirêj a eşkerekirinê.
Dibe ku rêxistin parzûnek bikar bîne da ku kontrol bike ka pêkhateyek bi potansiyela malware heye (di yek ji her du astên hişyariyê de) an jî, bi rêya API-yê, zû bizanibe ka yek ji girêdayîbûnên rasterast an nerasterast di projeyek nermalavê de pêkhateyek zirardar bikar tîne.
MEW Çawa Dixebite: Hûrguliyên Hundir
The Core: Motora Tesbîtkirina Malware
Analîzker ji bo girtina delîlên xeletiyan detektorên cûda bikar tîne. Detektor analîza statîk, analîza şiyanan, û analîza çarçoveyê li hev dicivînin.[3], wekî ku di nivîsa berê ya vê rêzenivîsê de hatiye vegotin.
Li Xygeni, tîmek endezyariyê ya me heye ku xwedî ezmûnek dirêj di analîza statîk de ye, û ev cûdahiya sereke bi çareseriyên din ên dijî-malware re ye. Bala xwe bidinê ku ji bo hin ekosîsteman tarball-a pakêtkirî an koda çavkaniyê (mînak koda JavaScript an TypeScript ji bo pakêtên NPM, çavkaniyên Python ji bo pakêtên PyPI), an jî koda berhevkirî ya ku têra xwe nêzîkî koda çavkaniyê ji bo analîza statîk e (mînak bytecode di pelên JAR de ji bo Maven). Ji bo yên din, wekî wêneyên konteynerê, pelên bicîhkirî yên dualî gelemperî ne, ji ber vê yekê teknîka ku tê bikar anîn, digel tespîtkirina malware ya kevneşopî li ser bingeha qaîdeyên YARA û îmzeyên malware, têgîna texmînkirina kapasîteyan e.
Ji kerema xwe not bikin ku teknolojiyên hêsan ên wekî îfadeyên rêkûpêk an îmzeyan ji bo tespîtkirina tevgerên xerabkar ne guncaw in. Xeyal bikin ku hûn dropper an dakêşkerek tespît dikin: Hin kod an binary di pakêtê de ye an ji domainek derveyî hatî dakêşandin, ne girêdayî pêkhateyê ye (dibe ku yek ji navnîşek mezin a domainên ku ji hêla aktorê gefê ve hatine kirîn[4]an jî domainek rewa ji bo dûrketina ji tespîtkirinê). Dûv re ew kod bi karanîna yek ji fonksiyonên wê tê bicîhanîn. Kod dikare were veguheztin da ku URL-ya dakêşanê an fonksiyona ku ji bo xebitandina koda dakêşandî tê bikar anîn veşêre. Ji bo tespîtkirina wê, analîzek tevahî ya herikîna daneyan hewce ye, bi karanîna makîneya tevahî ya analîza statîk, an jî pêkanînek sandboxkirî (eger şertên ji bo xebitandina tevgera xerabkar bi rastî werin bicîhanîn) dikare vê yekê di rewşa gelemperî de tespît bike.
Aktorên gefê heman teknîkan dişopînin û detektor ji bo wan hatine sêwirandin û bicîhkirin. Her wiha hin gavên pêş-pêvajoyê jî hene, mînakî ji bo rakirina nezelaliyê, ku pir caran ji bo eşkerekirina tevgerên veşartî hewce ne.
Zêdekirina Kontekstê
Hin detektor agahiyên çarçoveyê bikar tînin. Bo nimûne, nelihevhatinek di navbera guhertoya di qeyda pêkhateyan de û tag/berdana di depoya GitHub-ê ya têkildar de delîlek xurt pêk tîne ku dibe ku aktorek xirab ji bo qeydê bawernameyên weşanê bi dest xistibe lê ne ji bo depoya GitHub-ê. Êrîşên mîna yên ku bandorê li firoşkarê berîka krîpto dikin. Ledger dikaribû bi hêsanî bi vê nelihevhatinê were tespît kirin.
A puana xerabkariyê (MS) ji encamên detektorên xebitandinê, li gorî hêza delîlên hatine girtin, tê hesibandin. Ne hemû encam wek hev in, û rêza pêkanînê girîng e.
Navûdengê Bikarhêner û Pêkhateyan
Ne hemî pêşdebirên çavkaniya vekirî wekhev têne afirandin!
Pêşdebirêkî navdar dibe ku hesabê NPM-ê yê wî/wê were dizîn (ev yek bi kesên ku ewlehiyê hişyar dikin re jî dibe), û malware bi karanîna wî/wê hesabê were weşandin. Bê guman divê navûdeng ji nişka ve têk biçe, û tenê dema ku hesabê dizînkirî were vegerandin û pêşdebir şert û mercên ku bûne sedema desteserkirina hesabê rast bike, ew ê dîsa vegere rewşa xwe ya berê. Qezenckirina navûdengê dijwar e lê dikare di cih de winda bibe.
Li MEW, me pergaleke rêveberiya navûdengê ya berfireh bicîh kiriye da ku tevgerên erênî xelat bike û çalakiyên gumanbar ceza bike. Ev pergal bi bikarhênerên nû yên di helwesteke bêalî de dest pê dike û navûdengê wan li gorî çalakiyên wan ên berdewam diguherîne.
Navûdengê bikarhênerek bi çalakiyên erênî yên wekî domandina hesabên medyaya civakî yên çalak, çalakkirina pejirandina pir-faktorî, beşdarbûna birêkûpêk a projeyan, û îmzekirina ... baştir dibe. commitbi mifteyên piştrastkirî. Berevajî vê, navûdeng ji ber kiryarên dijminane yên wekî weşandina malware, karanîna navnîşanên e-nameyên yekcar bikarhatî, neîmzekirinê xirab dibe. commits, an jî nîşandana qalibên neasayî di beşdariyan de.
Armanca sereke ya sîstema me ew e ku hawîrdorek ewle û pêbawer misoger bike. Ew vê yekê bi awayekî dînamîk navûdengên bikarhêneran li gorî faktorên cûrbecûr sererast dike, di heman demê de rêz li fikarên nepenîtiyê û sînorkirinên qeydên cûda digire.
Pûanek navûdengê navxweyî ji bo bikarhêner tê hesibandin (tevlîbûna qeydê û hesabê githubê dema ku gengaz be), û ligel pûana xerabkariyê ya ku di dema dabeşkirina pêkhateya di bin analîzê de tê bikar anîn, û ji bo destnîşankirina çêtir a kesên ku di bin weşana pêkhateyê de ne.
Delîlên li ser Reftarên Xerabkar Hatin Dîtin. Ma Çi? Pêvajoya Nirxandina Destî
Dabeşkerê heyî guhertoya pêkhateyê ya ku hatiye analîzkirin li gorî sînorên puanan û navûdengê bikarhêner/pêkhateyê yên ku dîtinan kurt dikin, dixe nav yek ji kategoriyên "xerabkar a piştrastkirî", "îhtîmaleke mezin xerabkar", "rîska bilind", "rîska nizm" an "ne-xerabkar". Dabeşkirinek di nav kategoriyên "xerabkar" an "îhtîmaleke mezin xerabkar" de nirxandina destanî û agahdariya yekem dide destpêkirin. Kategoriya "xerabkar a piştrastkirî" piştî nirxandina destanî an jî dema ku delîl bi heman delîlên ji bo guhertoyek berê ya ku wekî xerabkar hatiye piştrastkirin re li hev dike tê danîn.
Dema ku delîlên têr ji bo tevgerên potansiyel ên xerabkar hebin, hişyariyek yekem (hişyariya karantînayê) ji rêxistinên bandordar re tê şandin. Wekî ku berê jî hate gotin, ev dikare sazkirin an avakirina nermalava ku bi pêkhateya karantînayê ve girêdayî ye asteng bike.
Ev yek di navxweyî ya MMU de pirsgirêkek çêdike. dashboard ji ber vê yekê analîstên ewlehiyê dikarin pêvajoya nirxandina destî ya ji bo pêkhateyê dest pê bikin. Tîmê amûrên taybetî hene (sandbox, deobfuscator, belavkirina lêkolîna malware, amûrên ragihandina malware) ji bo nirxandina bilez a cewhera guhertoya pêkhateyê ya di bin lêkolînê de. Piraniya malware ("ançûvî" an pêkhateyên xerabkar ên ne sofîstîke) têne nirxandin.
Encama nirxandinê bi van herduyan jî tê bi dawîkirin: emîn, ji ber vê yekê motora analîza otomatîk encamek erênî ya derewîn dît ku wekî bersiv ji bo dabeşkerê fêrbûna makîneyê tê bikar anîn da ku qalibê fêr bibe; an jî zirardarbûna piştrastkirî, ji ber vê yekê pêkhate piştî pêvajoya ragihandinê bi berpirsiyarî wekî zirardar ji qeyda giştî re tê eşkerekirin. Agahdariyek duyemîn ji rêxistinên bandordar re tê şandin, ku dibe ku di encamê de pêkhateyê ji karantînayê derxînin, an jî teqez wê ji pêvajoya nûvekirina guhertoya xwe an jî ji dîwarê agir ê pêkhateyê yê ku di qeyda wan a navxweyî de tê bikar anîn asteng bikin.
Ev mîheng dihêle ku em rojane bi deh hezaran guhertoyên nû analîz bikin û bi dehan guhertoyên ku muhtemelen zirardar in destnîşan bikin, ku em dûv re bi destan dinirxînin. Ji beşa berê bi bîr bînin ku rêjeya pêkhateyên zirardar ên ku em niha di xwezayê de dibînin yek ji deh hezar e.
Raporkirina ji bo Qeyda Registry
Me dît ku piraniya qeydên giştî, ku yek ji stûnên binesaziya çavkaniya vekirî ye, mekanîzmayên pir sînorkirî ji bo ragihandina pirsgirêkên ewlehiyê, û bi taybetî jî pêkhateyên xerabkar, peyda dikin. Em ji bo baştirkirina rêxistina bingehîn a pêvajoya ragihandinê têdikoşin. Bi gelemperî em herî zêde e-nameyek bersivê ji tîmê ewlehiyê yê di qeydê de distînin ku piştrast dike ku pêkhate ji qeydê hatiye rakirin.
Carinan qeyd bi awayekî xerab tê bikaranîn, şertên karanîna wê dişkîne, lê di nermalava radestkirî de reftarên xerab çênake. Ev yek ji qeydê re jî tê ragihandin, lê ji bo sînordarkirina deng ji rêxistinan re nayê ragihandin.
Karê pêşerojê
Niha gelek pêşketin di nexşerêyê de ne. Berî her tiştî, a portala giştî ji bo tenduristiya pêkhateyên OS-ê, bi taybetî têkildarî delîlên ku ji bo zirara potansiyel hatine dîtin, niha di bin pêşveçûnê de ye. Ev wekî beşdariyek piçûk ji bo civaka çavkaniya vekirî tê armanc kirin. Li bendê bin.
Pêşveçûnek din a ku berdewam dike başbûnek e dabeşkerê fêrbûna makîneyê. MEW dê ji dabeşkirinên berê fêr bibe. Vektora dîtinên ji detektorên motorê, digel puana xerabkariyê û puana navûdengê ya ji bo hem pêkhateyê û hem jî weşanger ("delîlên hatine dîtin") wekî têketinek ji bo pergalek fêrbûna makîneyê tê bikar anîn ku modela dabeşker nûve dike. Guhêrbara derketinê tenê ev e ku gelo qeydê piştrast kiriye ka pêkhate xerabkar e. Ev bi navê kodkirî "Oracle" ye û dê bi pêşdîtinek bêtir re bibe alîkar.ciskalîfîkator, ku ji bo baş be hatiye sêwirandin (bîranîneke bilind ango pêkhateyên xerabkar ji dest nede) lê bi pozîtîfên derewîn ên kêmtir (pêkhateyên ewle wekî xerabkar rapor nekin).
A puana krîtîkbûnê ji bo pîvanên pêşîniyê werin zêdekirin, ji bilî girêdayîbûna bi komek girêdayîyên xerîdaran re, û navûdengê nizm ê weşanger. Eşkere ye ku projeyên bi bandor û girîngiya zêdetir divê ji bo analîzê zûtir werin hesibandin. Em ê li vir çerxê ji nû ve neafirînin, û bişopînin Pûana Krîtîk a Projeya Çavkaniya Vekirî.
Piştgiriya ekosîstemên zêdetir di bin pêşveçûnê de ye. Teknolojî û amûrên berbelav ên wekî PHP an pêvekên Jenkins di nexşerêyê de ne.
Em her wiha lêkolîn dikin ka gelo pêvajoya nirxandina destî dikare bi AI-ê re were alîkar kirin da ku analîza çend pêkhateyên zirardar ên sofîstîketir hêsan bike.
Di beşa bê û ya dawî ya vê rêzefîlmê de, "Bikaranîna Çavkaniya Vekirî: Çi Ji Xirabkaran Tê Hêvîkirin", em ê li ser rêbazên herî dawî yên ku dijmin bikar tînin da ku êrîşan nepenîtir, dijwartir tespît bikin, bêtir li ser pîşesaziyên taybetî hedef bigirin û bêtir qezenc bikin, bisekinin. Gelo êrîşên ransomware dê bi karanîna vê wesayîtê werin kirin? Xirabkar çawa amûrên AI bikar tînin da ku malware-yên sofîstîketir radest bikin? Ma projeyên populer ên herî bilind di xetereyê de ne? Ev ji bo ku xwendevanan hestek li ser vê pêşbaziya çekan bidin, û di demek kurt (nîvê duyemîn ê 2024) û navîn (2025) de çi hêvî bikin.
Em ê bi hin ramanan li ser gavên piçûk ên ku civak dikare bavêje bêyî ku pir zêde vebûna cîhana çavkaniya vekirî biguherîne, bi dawî bikin. Mînakî, mekanîzmayek bi bandortir ji bo ragihandina malware ji qeydên giştî re, û parvekirina delîlên pêkhateyên potansiyel ên xerabkar bi qeydan û civakê re dê gavek piçûk be di rêça rast de ber bi armanca girtina deriyan ji aktorên gefê ve.
Malware di pêkhateyên çavkaniya vekirî de divê feydeyên mezin ên ku civaka çavkaniya vekirî ji bo civaka me aniye, asteng neke.
- [1] Skanera me pêkhateyên çavkaniya vekirî yên ku ji hêla projeyên nermalavê yên hatine analîzkirin ve têne referans kirin tespît dike, ji ber vê yekê grafika girêdayîbûna tevahî ya nûjen tê zanîn, bi kêmanî ji bo projeyên ku bi rêkûpêk têne şopandin. Xygeni OSS API-yek eşkere dike ku xerîdar dikarin di dema navnîşkirina pêkhateyek balkêş de jî bikar bînin, di nav de agahdariya ji bo qelsiyan û delîlên xerabkar.
- [2] Ger şertek ku bi pirsgirêkên ewlehiyê re têkildar be were tespît kirin, parêzvanek dikare avahiyê têk bibe. Dîtinên ewlehiyê yên wekî qelsiyek krîtîk û gihîştî an karanîna pêkhateyek karantînê dikare wekî têra xwe giran were hesibandin ku avakirina nermalava bandorbûyî têk bibe.
- [3]Analîstên me yên ewlehiyê dema ku pêwîst be, pêkhateyê an jî skrîptên sazkirina wê di hawîrdorek sandboxkirî de dimeşînin. Lêbelê, MEW analîza dînamîk pêk nayne, bi giranî ji ber ku tevgera xerabkar her gav di êrîşên hedefgirtî de nayê kirin û ji ber mantiqa dûrketinê ku aktorên gefê bikar tînin da ku ji analîza dînamîk birevin.
- [4] Ev teknîk bi navekî wekî Algorîtmayên Çêkirina Domaina Qeydkirî an RDGA hate navandin, û aktorên gefên nû yên wekî yên bi navê Rabbit Revolver heta 1 milyon dolar li 500 hezar domainan veberhênan kiriye, ev yek nîşan dide ku pîşesaziya sûcên sîber çiqas qezenc dike.







