ReversingLabs analüüsi tulemused RubyGems'i hoidlas. Tüüpidest vastuoluväärset müüki kasutatakse tavaliselt pahatahtlike paketide levitamiseks, mis on suunatud sellele, et tähelepanematu arendaja teeks otsingul trükivea või ei märkaks erinevusi. Uuringu käigus tuvastati üle 700 paketi, mille nimed on sarnased populaarsete paketidega ja milles on väikseid erinevusi, näiteks sarnaste tähtede asendamine või alakriipsude kasutamine, et asendada sidekriipsud.
Üle 400 paketis leiti komponente, mis on kahtlustatavad pahatahtlike tegevuste sooritamises. Eriti tõsiseks juhtumiks on AAA.png fail, mis sisaldas PE formaadis käitatavat koodi. Need paketid olid seotud kahe kontoga, mille kaudu 16. ja 25. veebruar 2020 vahel RubyGems'is avaldati , mida laaditi kokku umbes 95 000 korda. Uurijad teavitasid RubyGems'i administratsiooni ja tuvastatud pahatahtlikud paketid on juba hoidlast eemaldatud.
Kõige populaarsem probleemne pakett oli 'atlas-client', mis esmapilgul oli peaaegu lahutamatu legitiimset paketti ''. Antud paketti laaditi 2100 korda (samal ajal laaditi legitimeeritud paketti 6496 korda, st kasutajad eksisid peaaegu 25% juhtudel). Ülejäänud paketid olid keskmiselt laaditud 100-150 korda ja kamufleerusid teiste pakettide all sarnase tehnikaga, asendades alajooned ja sidekriipsud (näiteks pahatahtlike pakettide seas Pahatahtlikud paketid sisaldasid PNG-faili, milles polnud pilti, vaid Windows'i platvormi käituv fail. Fail loodud Ocra Ruby2Exe utiliidi abil ja sisaldas iseparanevat arhiivi Ruby skripti ja Ruby tõlgiga. Paketi installimisel nimetati png fail ümber exe-ks ja käivitati. Käitamise käigus loodi ja lisati autostarti fail VBScriptiga. Antud pahatahtlik VBScript analüüsis pidevalt lõikelaual olevaid andmeid nende olemasolu osas, mis meenutasid krüptoraha rahakottide aadresse, ja juhul, kui leiti, asendati rahakoti number, lootes, et kasutaja ei märkaks erinevusi ning edastaks vahendid valele rahakotile.
Ründavad paketid sisaldasid PNG-faili, milles pildi asemel oli Windowsi platvormile mõeldud käivitatav fail. Fail loodi tööriista Ocra Ruby2Exe abil ja sisaldas enesepakkivat arhiivi Ruby skripti ja Ruby tõlgendajaga. Paketi installimise käigus nimetati png-fail ümber exe-ks ja käivitati. Täitmise käigus loodud ja automaatsetesse käivitustesse lisatud fail oli VBScript. Antud kahjulik VBScript analüüsis korduses lõike sisu lõikelaual, et leida teavet, mis meenutab krüptorahakottide aadresse, ning tuvastamise korral asendas rahakoti numbrit, lootuses, et kasutaja ei märka erinevusi ning kannab vahendeid valele rahakotile.
Viidatud uuring näitas, et on kerge paluda pahatahtlike paketide lisamist ühe kõige populaarsemasse hoidlasse ja et need paketid võivad jääda märkamatuks vaatamata suurele allalaadimise arvule. Tasub märkida, et probleem RubyGems'ile ning puudutab ka teisi populaarseid hoidlaid. Näiteks eelmisel aastal tuvastasid samad teadlased NPM'i hoidlas pahatahtliku paketi bb-builder, mis kasutas sarnast tehnikat käitava faili käivitamiseks paroolide varastamiseks. Enne seda oli tagaukse lisatud NPM-i paketti event-stream ja pahatahtlik kood laaditi umbes 8 miljonit korda. Pahatahtlikud paketid ka PyPI hoidlas.
Allikas: opennet.ru
