Mae dadansoddwr wedi'i gyhoeddi a nododd 200 o becynnau maleisus yn NPM a PyPI

Cyflwynodd OpenSSF (Open Source Security Foundation), a ffurfiwyd gan y Linux Foundation ac a anelwyd at wella diogelwch meddalwedd ffynhonnell agored, y Dadansoddiad Pecyn prosiect agored, sy'n datblygu system ar gyfer dadansoddi presenoldeb cod maleisus mewn pecynnau. Mae cod y prosiect wedi'i ysgrifennu yn Go a'i ddosbarthu o dan drwydded Apache 2.0. Roedd sgan rhagarweiniol o’r storfeydd NPM a PyPI gan ddefnyddio’r offer arfaethedig yn ein galluogi i nodi mwy na 200 o becynnau maleisus nas canfuwyd yn flaenorol.

Mae'r rhan fwyaf o'r pecynnau problemus a nodwyd yn trin croestoriad enwau Γ’ dibyniaethau mewnol prosiectau nad ydynt yn gyhoeddus (ymosodiad dryswch ar ddibyniaeth) neu'n defnyddio dulliau teipscwatio (aseinio enwau tebyg i enwau llyfrgelloedd poblogaidd), a hefyd yn galw sgriptiau sy'n cyrchu gwesteiwyr allanol yn ystod y broses osod. Yn Γ΄l datblygwyr Dadansoddi Pecyn, mae'r rhan fwyaf o'r pecynnau problemus a nodwyd yn fwyaf tebygol o gael eu creu gan ymchwilwyr diogelwch sy'n cymryd rhan mewn rhaglenni bounty byg, gan fod y data a anfonir yn gyfyngedig i enw'r defnyddiwr a'r system, a bod y gweithredoedd yn cael eu cyflawni'n benodol, heb ymdrechion i cuddio eu hymddygiad.

Mae pecynnau gyda gweithgaredd maleisus yn cynnwys:

  • Discordcmd pecyn PyPI, sy'n cofnodi anfon ceisiadau annodweddiadol i raw.githubusercontent.com, Discord API ac ipinfo.io. Dadlwythodd y pecyn penodedig y cod drws cefn o GitHub a'i osod yn y cyfeiriadur cleient Discord Windows, ac ar Γ΄l hynny dechreuodd y broses o chwilio am docynnau Discord yn y system ffeiliau a'u hanfon at weinydd Discord allanol a reolir gan yr ymosodwyr.
  • Ceisiodd y pecyn NPM lliwiau hefyd anfon tocynnau o gyfrif Discord i weinydd allanol.
  • Pecyn NPM @roku-web-core/ajax - yn ystod y broses osod anfonodd ddata am y system a lansio triniwr (cragen wrthdroi) a dderbyniodd gysylltiadau allanol a lansio gorchmynion.
  • Pecyn PyPI secrevthree - lansiodd gragen wrthdro wrth fewnforio modiwl penodol.
  • Pecyn NPM random-vouchercode-generator - ar Γ΄l mewnforio'r llyfrgell, anfonodd gais at weinydd allanol, a ddychwelodd y gorchymyn a'r amser y dylid ei redeg.

Mae gwaith Dadansoddi Pecyn yn dibynnu ar ddadansoddi pecynnau cod yn y cod ffynhonnell ar gyfer sefydlu cysylltiadau rhwydwaith, cyrchu ffeiliau, a rhedeg gorchmynion. Yn ogystal, mae newidiadau yng nghyflwr pecynnau yn cael eu monitro i benderfynu ar ychwanegu mewnosodiadau maleisus yn un o'r datganiadau meddalwedd diniwed i ddechrau. Er mwyn monitro ymddangosiad pecynnau newydd mewn ystorfeydd a gwneud newidiadau i becynnau a bostiwyd yn flaenorol, defnyddir y pecyn cymorth Package Feeds, sy'n uno gwaith gyda'r storfeydd NPM, PyPI, Go, RubyGems, Packagist, NuGet a Crate.

Mae Dadansoddiad Pecyn yn cynnwys tair cydran sylfaenol y gellir eu defnyddio ar y cyd ac ar wahΓ’n:

  • Trefnydd ar gyfer lansio gwaith dadansoddi pecynnau yn seiliedig ar ddata o Package Feeds.
  • Dadansoddwr sy'n archwilio pecyn yn uniongyrchol ac yn gwerthuso ei ymddygiad gan ddefnyddio dadansoddiad statig a thechnegau olrhain deinamig. Cynhelir y prawf mewn amgylchedd anghysbell.
  • Llwythwr sy'n gosod canlyniadau'r profion yn storfa BigQuery.

Ffynhonnell: opennet.ru

Ychwanegu sylw