NPM және PyPI-де 200 зиянды пакеттерді анықтайтын анализатор жарияланды

Linux Foundation құрған және ашық бастапқы бағдарламалық қамтамасыз етудің қауіпсіздігін арттыруға бағытталған OpenSSF (Open Source Security Foundation) пакеттерде зиянды кодтардың болуын талдау жүйесін әзірлейтін Package Analysis ашық жобасын енгізді. Жоба коды Go бағдарламасында жазылған және Apache 2.0 лицензиясы бойынша таратылады. Ұсынылған құралдарды пайдалана отырып, NPM және PyPI репозиторийлерін алдын ала сканерлеу бізге бұрын анықталмаған 200-ден астам зиянды пакеттерді анықтауға мүмкіндік берді.

Анықталған проблемалық пакеттердің негізгі бөлігі жобалардың жалпыға ортақ емес ішкі тәуелділіктерімен атаулардың қиылысуын (тәуелділік шатасу шабуылы) басқарады немесе типографиялық әдістерді қолданады (танымал кітапханалардың атауларына ұқсас атауларды тағайындау), сондай-ақ жұмыс кезінде сыртқы хосттарға қол жеткізетін сценарийлерді шақырады. орнату процесі. Package Analysis әзірлеушілерінің пікірінше, анықталған проблемалық пакеттердің көпшілігін қателерді марапаттау бағдарламаларына қатысатын қауіпсіздік зерттеушілері жасаған болуы мүмкін, өйткені жіберілген деректер пайдаланушы мен жүйе атымен шектеледі және әрекеттер нақты орындалады. мінез-құлқын жасырады.

Зиянды әрекеті бар пакеттерге мыналар кіреді:

  • PyPI бумасы discordcmd, ол raw.githubusercontent.com, Discord API және ipinfo.io мекенжайларына атипті сұрауларды жіберуді жазады. Көрсетілген пакет бэкдор кодын GitHub сайтынан жүктеп алып, оны Discord Windows клиенттік каталогына орнатты, содан кейін ол файлдық жүйеде Discord таңбалауыштарын іздеу және оларды шабуылдаушылар басқаратын сыртқы Discord серверіне жіберу процесін бастады.
  • Colorss NPM бумасы сонымен қатар таңбалауыштарды Discord тіркелгісінен сыртқы серверге жіберуге тырысты.
  • NPM пакеті @roku-web-core/ajax - орнату процесі кезінде ол жүйе туралы деректерді жіберді және сыртқы қосылымдарды қабылдайтын және пәрмендерді іске қосатын өңдеушіні (кері қабық) іске қосты.
  • PyPI secrevthree пакеті - белгілі бір модульді импорттау кезінде кері қабықты іске қосты.
  • NPM пакеті random-vouchercode-generator - кітапхананы импорттағаннан кейін ол сыртқы серверге сұрау жіберді, ол пәрменді және оны іске қосу уақытын қайтарды.

Пакет талдауының жұмысы желілік қосылымдарды орнату, файлдарға қол жеткізу және пәрмендерді іске қосу үшін бастапқы кодтағы код пакеттерін талдаудан тұрады. Сонымен қатар, бастапқы зиянсыз бағдарламалық құрал шығарылымдарының бірінде зиянды кірістірулердің қосылуын анықтау үшін бумалардың күйіндегі өзгерістер бақыланады. Репозитарийлердегі жаңа бумалардың пайда болуын бақылау және бұрын жарияланған бумаларға өзгертулер енгізу үшін NPM, PyPI, Go, RubyGems, Packagist, NuGet және Crate репозиторийлерімен жұмысты біріктіретін Пакет арналары құралдар жинағы пайдаланылады.

Пакет талдауы бірге де, бөлек те пайдалануға болатын үш негізгі компонентті қамтиды:

  • Пакет арналарының деректеріне негізделген пакетті талдау жұмысын іске қосуға арналған жоспарлаушы.
  • Буманы тікелей зерттейтін және оның әрекетін статикалық талдау мен динамикалық бақылау әдістерін пайдаланып бағалайтын анализатор. Сынақ оқшауланған ортада жүргізіледі.
  • Сынақ нәтижелерін BigQuery жадына орналастыратын жүктеуші.

Ақпарат көзі: opennet.ru

пікір қалдыру