O le vaega lona fa lea i le faasologa o pou e uiga i vaega leaga, lea matou te tuʻuina atu ai le Xygeni auala e taulima ai lenei taufaamataʻu, o se vaega o la matou puipuiga mo Open Source Security.
Na matou vaʻaia o le tele o le faʻatuatuaga i vaega tatala punaoa o punaoa le mautinoa ua faʻaaogaina e tagata fai mea sese o ituaiga uma e faʻatino ai amioga e leʻi mafaufauina e faʻatautaia i masini atiaʻe, CI/CD faiga fa'akomepiuta, pe fa'apipi'iina i totonu o le polokalama faakomepiuta a le fa'alapotopotoga ua a'afia, ina ia tu'uina atu i tagata o lo'o fa'aogaina e le fa'alapotopotoga. Na matou su'esu'eina vaega #2 o osofaʻiga e faʻaaogaina ai resitala a le lautele e tuʻuina atu ai polokalame leaga ma mea ua tatou aʻoaʻoina ina ua maeʻa ona mataʻituina le faʻagaioiga a tagata leaga, ma i le taimi ua tuanaʻi vaega #3 sa suʻesuʻeina foʻi pulega e aoga (ma pulega e le manuia) e faʻasaga i lenei taufaʻamataʻu.
O le taimi lenei e tilotilo ai i la tatou auala e foia ai le faafitauli. I lenei vaega, matou te faʻaalia po o le a le fuafuaga matou te mulimuli ai i Xygeni mo a matou Lapata'iga Vave o Polokalama Fa'aleaga (MEW) faiga. E fa'apefea ona galue lenei faiga e tele-vaega i le taimi moni pe a fa'alauiloa se fa'aliliuga fou o afifi, pe fa'apefea ona pu'eina fa'amaoniga mai punaoa eseese, pe fa'apefea ona faia le fa'avasegaga, o a tulaga fa'avasega o lo'o matou mulimulita'i i ai, ma pe aisea e mana'omia ai nisi su'esu'ega fa'atino e fa'amaonia ai le natura o se sui tauva o afifi leaga. O le a matou fa'amatalaina fo'i pe fa'apefea ona matou fesoasoani i le NPM, GitHub, PyPI, ma isi atina'e autu i totonu o le si'osi'omaga tatala-punaoa e fa'aitiitia ai le taimi e nonofo ai mo polokalama leaga.
le pipeline
O loʻo faʻaauau pea ona faʻagasolo e le Xygeni Malware Early Warning (MEW) vaega, pe o afifiina o tarballs mo faletusi ma faʻavae mo faiga faʻapolokalame lagolagoina e pei o le JavaScript/Node poʻo le Python, Docker / OCI container images, poʻo faʻaopoopoga ma plugins mo meafaigaluega e pei o IDEs poʻo CI/CD faiga. O ia vaega e lolomiina i resitala faitele ma tulaga eseese o le siakiina o tagata faʻaoga.
O le ata lenei o se vaaiga fa'ata'ita'i o le fa'agaioiga o le polokalama:
le tagata su'esu'e O le faagasologa e maua ai le fafaga o mea tutupu o le lolomiina. O se mea tutupu o le lolomiina o le fatuina lea o se lomiga fou o se vaega fou po o se vaega ua i ai. Talu ai e le tuʻuina atu e resitala lauiloa se auala e faʻasalalau ai faʻasalalauga mo tagata faʻatau e fiafia i ai, e masani ona faia lea mea e ala i le suʻesuʻeina o le resitala mo mea tutupu talu ai nei. O se galuega sili ona lelei mai le OSSF, fafaga afifi, lagolago resitala lauiloa e pei o le PyPI poʻo le Maven Central, ma tuʻuina atu ai se faʻaoga tuʻufaʻatasi e faʻavae i luga o le fafaga. I le MEW na matou faʻaopoopoina ai ni faʻatinoga faʻapitoa e faʻaitiitia ai le taimi faʻatali, mo se faʻataʻitaʻiga i se kopi o le faʻamaumauga a le CouchDB e faʻaaogaina e le NPM lea e ogatasi ma le faʻamaumauga a le resitala lautele.
I Xygeni, o loʻo ia i matou se lisi oloa[1] o vaega uma (tuusa'o pe lē tu'usa'o) e fa'aaogaina e polokalama faakomepiuta a matou tagata fa'atau. O fa'amaopoopoga vaega a tagata fa'atau e fafaga soo i le MEW mo le fa'amuamuaina o au'ili'iliga: o vaega e fa'aaogaina e a matou tagata fa'atau e fa'agasolo muamua. O le fa'amuamua e fa'avae fo'i i luga o le igoa ta'uleleia o le lomitusi ma le taua o le vaega, o lea e fa'amuamua ai fo'i vaega e sau mai lomitusi e maualalo le igoa ta'uleleia.
le tagata su'esu'e ona fa'aaoga lea o vaega o lo'o fa'atali i le fa'asologa fa'amuamua. A filifilia se fa'aliliuga o vaega mo le su'esu'ega, e la'uina mai lana tarball mai le resitala. Ia matau o le vaega ua afifiina, o le binary e su'esu'eina: O le tele o vaega tatala punaoa e masani ona sau mai se fale teu oloa tatala punaoa, e masani lava i le github.com, lea e fa'aaogaina mo na'o le anotusi, ma e masani ona su'eina le malware i le tarball vaega aua e pepelo fa'asolosolo tagata fa'amata'u e uiga i punaoa latou te fai mai na fa'aaogaina e fausia ai le tarball vaega latou te fa'asa'olotoina.
Mai le vaaiga a le tagata faʻaoga
Ua ou faalogo atu o e mafaufau: E faapefea ona ou maua le manuia mai le iloaina vave o se lomiga o afifi leaga? I le vaega "Anatomy o Afifi Matagā: O a Aga Masani?" na matou vaʻaia o le aofaʻi o le taimi e nofo ai e i totonu o le va o aso, ae o le faʻasilasilaga muamua mai le MEW i tagata faʻatau o loʻo faʻaaogaina le vaega ua aʻafia e i totonu o le va o minute. Faatasi ai ma se pa puipui faigofie[2] e mafai ona e poloka le fausiaina (e lua tulaga lapatai, o le tasi e otometi lava pe a iloa e le afi e ono iai ni polokalama leaga ma se faasilasilaga mulimuli ane pe a faamaonia e le matou 'au puipuiga e ala i le siakiina lima le iai o polokalama leaga). O le faatali seia faamaonia e le resitala le polokalama leaga ma aveese mai le resitala e masani lava ona tuai tele ona o le umi o le taimi e faʻaalia ai.
E ono faʻaaogā e le faʻalapotopotoga se pa puipui e siaki ai pe iai se vaega e ono iai ni polokalama leaga (i soʻo se tasi o tulaga lapatai e lua) pe, e ala i le API, e vave iloa ai pe iai ni faʻalagolago tuusaʻo pe lē tuusaʻo i se galuega faakomepiuta o loʻo faʻaaogaina se vaega leaga.
Auala e Galue ai le MEW: Fa'amatalaga i Totonu
O le Autū: Afifi e Iloa ai Polokalama Fa'aleaga
E fa'aaogā e le masini su'esu'e ni masini su'esu'e eseese e pu'eina ai fa'amaoniga o mea sese. E tu'ufa'atasia e masini su'esu'e le su'esu'ega tumau, su'esu'ega o agava'a, ma le su'esu'ega o le tala'aga.[3], e pei ona faamatalaina i le pou muamua o lenei faasologa.
I Xygeni, o loʻo ia i matou se 'au inisinia e iai le poto masani umi i suʻesuʻega tumau, ma o le eseesega autu lea ma isi fofo e teteʻe atu ai i polokalama faʻaleagaina. Ia manatua o nisi o siosiomaga, o le tarball ua afifiina o loʻo iai le code puna (e pei o le JavaScript poʻo le TypeScript code mo afifi NPM, Python sources mo afifi PyPI), poʻo le code ua tuʻufaʻatasia e latalata i le code puna mo suʻesuʻega tumau (e pei o le bytecode i faila JAR mo Maven). Mo isi, e pei o ata o koneteina, e masani ona faʻaaogaina binary, o lea o le faʻaaogaina o le metotia o le faʻaiʻuga o agavaʻa, faʻatasi ai ma le iloa masani o polokalama faʻaleagaina e faʻavae i luga o tulafono a le YARA ma saini o polokalama faʻaleagaina.
Fa'amolemole ia matau o tekinolosi faigofie e pei o fa'aupuga masani po'o saini e le talafeagai mo le iloa o amioga leaga. Va'ai faalemafaufau i le iloa o se dropper po'o se downloader: O nisi code po'o binary o lo'o i totonu o le afifi po'o le downloaded mai se domain i fafo, e le feso'ota'i ma le component (atonu o se tasi mai se lisi tele o 'upega tafa'ilagi na fa'atauina e le tagata fa'amata'u[4], po o le igoa ole 'upega tafa'ilagi aloaia e 'alo 'ese ai mai le iloa). Ona fa'atinoina lea o lena code e fa'aaoga ai se tasi o galuega mo lena mea. E mafai ona suia le code e nana ai le URL o le download po'o le galuega e fa'aaoga mo le fa'agaoioia o le code ua downloadina. E mana'omia le au'ili'iliga atoa o le tafe o fa'amaumauga e iloa ai, e fa'aaoga ai le masini atoa o le au'ili'iliga tumau, po'o se fa'atinoga sandboxed (pe afai e ausia moni lava tuutuuga mo amioga leaga e fa'atino ai) e mafai ona iloa ai lenei mea i le tulaga lautele.
E mulimulita'i tagata fa'amata'u i metotia lava e tasi ma o masini e iloa ai mea na mamanuina ma fa'atinoina mo i latou. E iai fo'i ni la'asaga muamua e fa'agasolo ai, mo se fa'ata'ita'iga mo le aveeseina o mea e le o manino, e masani ona mana'omia e fa'aalia ai amioga lilo.
Fa'aopoopoina o le Tala'aga
O nisi masini su'esu'e e fa'aogaina fa'amatalaga o le anotusi. Mo se fa'ata'ita'iga, o le le fetaui i le va o le lomiga i le resitala o vaega ma le tag/fa'asa'olotoga i le teuina o GitHub e feso'ota'i ma ai o se fa'amaoniga malosi lea atonu na maua e se tagata leaga ni fa'amaoniga lolomi mo le resitala ae le mo le teuina o GitHub. Osofa'iga e pei o le mea e a'afia ai le fa'atau atu o atotupe crypto. Ledger e faigofie ona iloa le faafitauli e ala i lenei faatusatusaga.
A togi o le leaga E fa'atatauina le (MS) mai fa'ai'uga o masini su'esu'e, e fa'atatau i le malosi o fa'amaoniga na pu'eina. E le tutusa uma fa'ai'uga, ma e tāua le fa'asologa o le fa'atinoina.
Ta'uleleia o le Tagata Fa'aoga ma le Vaega
E lē tutusa uma le fausiaina o tagata atia'e tatala-punaoa!
E ono faoa faamalosi le teugatupe NPM a se tagata atiaʻe taʻuleleia (e oʻo lava i tagata e malamalama i le saogalemu e tupu lenei mea), ma lolomiina ai ni polokalame leaga e faʻaaogaina ai lena teugatupe. E manino lava e tatau ona paʻu faafuaseʻi le taʻuleleia, ma toe faʻaleleia i le tulaga mamalu ua mavae pe a toe maua le teugatupe na faoa faamalosi ma faʻaleleia e le tagata atiaʻe tulaga na mafua ai ona pulea le teugatupe. E faigata ona maua le taʻuleleia ae e mafai ona leiloa i se taimi vave.
I le MEW, ua matou faʻatinoina se faiga atoatoa e pulea ai le igoa taʻuleleia e tauia ai amioga lelei ma faʻasalaina ai gaoioiga masalomia. E amata lenei faiga i tagata faʻaoga fou i se tulaga e le faaituau ma fetuʻunaʻi lo latou igoa taʻuleleia e faʻatatau i a latou gaoioiga o loʻo faʻaauau pea.
E faaleleia atili le talaaga o se tagata faaaoga e ala i gaioiga lelei e pei o le tausia o tala o faasalalauga faaagafesootai, fa'atagaina le fa'amaoniga o le tele o vaega, saofaga i galuega faatino i taimi uma, ma le sainia commits ma ki e mafai ona faʻamaonia. I se isi itu, e faʻaleagaina le igoa ona o gaioiga faʻasauā e pei o le lolomiina o polokalama leaga, faʻaaogaina o tuatusi imeli e le toe faʻaaogaina, le le sainia commits, pe faʻaalia ni mamanu e le masani ai i saofaga.
O le sini autū a la matou polokalama o le faʻamautinoaina lea o se siosiomaga saogalemu ma faʻatuatuaina. E ausia lenei mea e ala i le fetuʻunaʻi faʻafuaseʻi o le igoa taʻuleleia o tagata faʻaoga e faʻavae i luga o mea eseese, aʻo faʻaaloalo foʻi i atugaluga faʻalilolilo ma tapulaʻa o resitala eseese.
E fuafuaina se togi o le talaaga i totonu mo le tagata faʻaoga (auai i le resitala ma le teugatupe github pe a mafai), faʻatasi ai ma le togi o le leaga na faʻaaogaina i le taimi o le faʻavasegaina o le vaega o loʻo suʻesuʻeina, ma mo le agavaa sili atu poʻo ai o loʻo i lalo o le lomiga o le vaega.
Ua Maua Fa'amaoniga i Amioga Leaga. O le a la? O le Fa'agasologa o le Iloiloga Tusitaulima
O le fa'avasegaga o lo'o iai nei e fa'atulaga ai le fa'asologa o vaega na su'esu'eina i se tasi o vaega "ua fa'amaonia le leaga", "atonu e leaga", "lamatiaga maualuga", "lamatiaga maualalo" po'o le "lē leaga" e fa'avae i luga o tapula'a i luga o togi e fa'apu'upu'u ai fa'ai'uga ma le igoa ta'uleleia o le tagata fa'aoga/vaega. O le fa'avasegaga i vaega "lamatiaga maualuga" po'o le "atonu e leaga" e fa'aosofia ai le iloiloga fa'atino ma le fa'asilasilaga muamua. O le vaega "ua fa'amaonia le leaga" e fa'atulaga pe a uma le iloiloga fa'atino pe a fetaui fa'amaoniga ma fa'amaoniga tutusa mo se lomiga muamua na fa'amaonia le leaga.
A lava fa'amaoniga e iai mo ni amioga leaga e ono tula'i mai, e tu'uina atu loa se lapata'iga muamua (lapata'iga o le karantina) i fa'alapotopotoga ua a'afia. E pei ona ta'ua muamua, e ono poloka ai le fa'apipi'iina po'o le fausiaina o polokalama faakomepiuta e fa'alagolago i le vaega ua karantina.
E mafua ai se faʻafitauli i totonu o le MEW dashboard o lea e mafai ai e le au suʻesuʻe saogalemu ona amata le faiga o le iloiloga faʻatino mo le vaega. O loʻo i ai i le 'au ni meafaigaluega faʻapitoa (sandbox, deobfuscators, tufatufaina mo suʻesuʻega malware, meafaigaluega lipotia malware) mo le vave iloiloina o le natura o le faʻaliliuga o le vaega o loʻo suʻesuʻeina. O le tele o malware ("anchovies" poʻo vaega leaga e le faigata) e toe iloiloina.
O le iʻuga o le iloiloga e faʻaiʻu i le sao, o lea na maua ai e le afi suʻesuʻega otometi se faʻamaoniga sese lea e faʻaaogaina e fai ma faʻamatalaga i le masini e faʻavasega ai le aʻoaʻoga e aʻoaʻo ai le mamanu; pe ua fa'amaonia le leaga, o lea e faʻasalalauina ai ma le faʻaeteete le vaega o se mea leaga i le resitala a le lautele, pe a maeʻa le faagasologa o le lipoti. O le a auina atu se faʻasilasilaga lona lua i faʻalapotopotoga ua aʻafia, lea e ono iʻu ai ina aveese le vaega mai le karantina, pe poloka mautinoa mai le latou faagasologa o le faʻaleleia o le lomiga poʻo le firewall o vaega o loʻo faʻaaogaina i totonu o la latou resitala i totonu.
O lenei fa'atulagaga e mafai ai ona matou iloiloina le faitau afe o lomiga fou i aso ta'itasi ma fa'ailoa mai ai le faitau sefulu e ono leaga, ona matou iloiloina lea ma le lima. Ia manatua mai le vaega ua te'a o le tasi i le sefulu afe o le fua faatatau lea o vaega leaga o lo'o tatou va'aia i le taimi nei.
Lipoti atu i le Ofisa Resitala
Na matou iloa o le tele o resitala faitele, o se tasi o ivitū o le atina'e tatala, e tu'uina atu ni auala fa'atapula'a mo le lipotia o fa'afitauli tau saogalemu, ae maise lava vaega leaga. O lo'o matou tauivi e fa'aleleia le fa'atulagaga autū o le faiga o lipoti. E masani lava matou te mauaina se imeli fa'ailoa mai le 'au saogalemu i le resitala e fa'amaonia ai ua ave'esea le vaega mai le resitala.
O nisi taimi e fa'aaogā sese ai le resitala, ma solia ai ona tuutuuga o le fa'aaogāina, ae e le mafua ai ni amioga leaga i le polokalama ua tu'uina atu. E lipotia fo'i lenei mea i le resitala, ae e le fa'ailoa atu i fa'alapotopotoga e fa'atapula'a ai le pisa.
Galuega i le lumanai
O loʻo i ai nei le tele o faʻaleleiga i luga o le faʻafanua. Muamua lava, o se faitoto'a lautele mo le soifua maloloina o vaega o le OS, aemaise lava e fesoʻotaʻi ma faʻamaoniga na maua mo le ono iai o ni faiga leaga, o loʻo faʻagasolo nei ona atinaʻeina. O se sao taua tele lea i le komiuniti tatala-punaoa. Ia mataala pea.
O le isi atina'e o lo'o fa'aauau pea o le fa'aleleia atili lea fa'avasega o le a'oa'oina o masini. O le a aʻoaʻoina e le MEW mai faʻavasegaga ua mavae. O le vector o mea na maua mai masini suʻesuʻe afi, faʻatasi ai ma le togi leaga ma le togi taʻuleleia mo le vaega ma le faʻasalalau ("o faʻamaoniga na maua") e faʻaaogaina o se mea e ulufale ai i se faiga aʻoaʻoga masini e faʻafouina ai le faʻataʻitaʻiga faʻavasegaga. O le fesuiaʻiga o le output e faigofie lava pe afai na faʻamaonia e le resitala pe na leaga le vaega. O lenei mea ua faaigoaina "le Oracle" ma o le a fesoasoani i se mea muamua atu.cise qualifier, ua mamanuina ina ia lelei (manatua maualuga e pei o le aua ne’i misia vaega leaga) ae ia itiiti ni fa’amaoniga sese (aua le lipotia vaega saogalemu o ni mea leaga).
A togi o le tulaga ogaoga o le a faʻaopoopoina mo tulaga faʻamuamua, e ese mai i le auai i le seti o mea e faʻalagolago i ai tagata faʻatau, ma le maualalo o le talaaga o le lomitusi. Ua manino lava o galuega faatino e sili atu le faatosinaga ma le taua e tatau ona mafaufau muamua mo le suʻesuʻeina. Matou te le toe faia le uili iinei, ma mulimuli i le Sikoa Taua o Galuega Faatino Punaoa Tatala.
O loʻo faʻagasolo le atinaʻeina o le lagolago mo isi faiga faʻaolaola. O loʻo iai i le fuafuaga le tele o tekinolosi ma meafaigaluega e pei o le PHP poʻo Jenkins plugins.
O loʻo matou suʻesuʻeina foʻi pe mafai ona fesoasoani le AI i le faiga o le iloiloga faʻatino e faʻaaoga ai le AI e faʻafaigofie ai le auʻiliʻiliga mo ni nai vaega leaga e sili atu ona lavelave.
I le isi vaega ma le vaega mulimuli o lenei faasologa, "Fa'aaogaina o le Open Source: O le a le mea e fa'amoemoeina mai tagata leaga", o le a matou taulaʻi atu i auala aupito lata mai o loʻo faʻaaogaina e fili e faʻalilolilo ai osofaʻiga, faigata ona iloa, faʻatatau i pisinisi faʻapitoa, ma sili atu ona maua ai tupe mama. O le a faʻatinoina ea osofaʻiga a le ransomware e faʻaaoga ai lenei auala? E faʻapefea ona faʻaaogaina e tagata leaga meafaigaluega AI e faʻatino ai polokalame leaga e sili atu ona faigata? Pe o lamatia galuega tetele lauiloa? O le mea lea e tuʻuina atu ai i le au faitau se lagona o lenei tauvaga auupega, ma mea e faʻamoemoeina i se taimi puʻupuʻu (afa lona lua o le 2024) ma le vaitaimi ogatotonu (2025).
O le a matou fa'ai'u i ni nai manatu i ni la'asaga laiti e mafai ona faia e le nu'u e aunoa ma le suia tele o le tatala o le lalolagi tatala-punaoa. Mo se fa'ata'ita'iga, o se auala sili atu ona lelei mo le lipotia o polokalame leaga i resitala a le lautele, ma le fa'asoa atu o fa'amaoniga o vaega e ono leaga i resitala ma le nu'u o le a avea ma se la'asaga la'ititi i le itu sa'o agai atu i le sini o le tapunia o faitoto'a i tagata fa'amata'u.
E le tatau i polokalama leaga i vaega tatala-punaoa ona faʻalavelaveina le tele o aogā ua aumaia e le alalafaga tatala-punaoa i lo tatou sosaiete.
- [1] E iloa e le matou scanner vaega tatala-punaoa o loʻo faʻasino i ai poloketi faakomepiuta na suʻesuʻeina, o lea e iloa ai le kalafa atoa o le faʻalagolago lata mai, ia le itiiti ifo mo poloketi e suʻesuʻeina soo. O le Xygeni OSS e faʻaalia ai se API e ono faʻaaogaina foʻi e tagata faʻatau i le taimi e faʻasalalau ai se vaega e fiafia i ai, e aofia ai faʻamatalaga mo vaivaiga ma faʻamaoniga leaga.
- [2] E ono malepe le fausiaina e se pa puipui pe afai e iloa se tulaga e fetaui ma faʻafitauli tau puipuiga. O mea na maua i le puipuiga e pei o se vaivaiga taua ma faigofie ona ausia pe faʻaaogaina se vaega ua taofia e ono manatu e lava le ogaoga e malepe ai le fausiaina mo le polokalama ua aʻafia.
- [3]E fa'agaoioia e le matou 'au su'esu'e saogalemu le vaega po'o ana tusitusiga fa'apipi'i i totonu o se siosiomaga sandbox pe a mana'omia. Peita'i, e le fa'atinoina e le MEW ni su'esu'ega fa'aonaponei, ona o le amioga leaga e le o taimi uma e faia i osofa'iga fa'atatau ma ona o le manatu 'alo'ese e fa'aaoga e tagata fa'amata'u e 'alo'ese ai mai su'esu'ega fa'aonaponei.
- [4] O lenei metotia na faaigoaina, Registered Domain Generation Algorithms poʻo le RDGA, ma ni tagata fou e pei o le mea ua taʻua o Lapiti Revolver na teu faafaigaluega e oo atu i le $1M i le 500K 'upega tafaʻilagi, ma ua faaalia ai le tele o tupe maua mai le pisinisi o solitulafono i luga o le initaneti.







