په NPM کې زیان منونکي چې په سیسټم کې د فایلونو د بیا لیکلو لامل کیږي

GitHub په ټار او @npmcli/arborist کڅوړو کې د اوو زیانونو توضیحات افشا کړي، کوم چې د tar آرشیفونو سره کار کولو او په Node.js کې د انحصار ونې محاسبه کولو لپاره دندې چمتو کوي. زیانمنتیاوې اجازه ورکوي، کله چې په ځانګړي ډول ډیزاین شوي آرشیف خلاص کړئ، د روټ ډایرکټر څخه بهر فایلونو ته د بیا لیکلو اجازه ورکوي په کوم کې چې پیک کول ترسره کیږي، تر هغه چې اوسني لاسرسي حقونه اجازه ورکوي. ستونزې دا ممکنه کوي چې په سیسټم کې د خپل سري کوډ اجرا کول تنظیم کړي، د بیلګې په توګه، ~/.bashrc یا ~/.profile ته د کمانډونو اضافه کولو سره کله چې عملیات د یو غیرمستقیم کارونکي لخوا ترسره کیږي، یا د سیسټم فایلونو ځای په ځای کولو سره کله چې چلیږي. ريښه

د زیانونو خطر د دې حقیقت له امله ډیریږي چې ستونزه کوډ د npm کڅوړې مدیر کې کارول کیږي کله چې د npm کڅوړو سره عملیات ترسره کوي ، کوم چې دا امکان ورکوي چې په ذخیره کې د ځانګړي ډیزاین شوي npm کڅوړې ځای په ځای کولو سره په کاروونکو برید تنظیم کړي. کوم چې به په سیسټم کې د برید کونکي کوډ اجرا کړي. برید ممکن حتی کله چې د "-ignore-scripts" حالت کې کڅوړې نصب کړئ ، کوم چې د جوړ شوي سکریپټونو اجرا کول غیر فعالوي. په مجموع کې، npm له اوو څخه څلور زیانمننې (CVE-2021-32804، CVE-2021-37713، CVE-2021-39134 او CVE-2021-39135) اغیزه کوي. لومړۍ دوه ستونزې د ټار کڅوړې پورې اړه لري، او پاتې دوه د @npmcli/arborist بسته پورې اړه لري.

تر ټولو خطرناک زیان، CVE-2021-32804، د دې حقیقت له امله رامینځته کیږي کله چې په ټار آرشیف کې مشخص شوي مطلق لارې پاکې شي، تکرار شوي "/" حروف په غلط ډول پروسس کیږي - یوازې لومړی کرکټر لرې کیږي، پداسې حال کې چې پاتې پاتې دي. د مثال په توګه، لاره "/home/user/.bashrc" به "home/user/.bashrc" ته او لاره "//home/user/.bashrc" ته "/home/user/.bashrc" بدله شي. دوهم زیان، CVE-2021-37713، یوازې د وینډوز پلیټ فارم کې څرګندیږي او د اړونده لارو غلط پاکولو سره تړاو لري چې پکې یو غیر محدود ډرایو کرکټر ("C: ځینې\path") شامل دي او پخوانۍ لارښود ته د بیرته راستنیدو ترتیب ( "C:../foo").

زیان منونکي CVE-2021-39134 او CVE-2021-39135 د @npmcli/arborist ماډل لپاره ځانګړي دي. لومړۍ ستونزه یوازې په سیسټمونو کې څرګندیږي چې د فایل سیسټم (macOS او وینډوز) کې د حروفونو قضیه نه توپیر کوي ، او تاسو ته اجازه درکوي د فایل سیسټم په خپل سري برخې کې د دوه ماډلونو "foo" مشخص کولو سره د انحصارونو ترمینځ فایلونه ولیکئ. : "file:/some/path"' او 'FOO: "file:foo.tgz"'، د دې پروسس کول به د /some/path ډایرکټر مینځپانګې ړنګولو او د foo.tgz منځپانګې د لیکلو لامل شي. دویمه ستونزه د سمبولیک لینک مینځلو له لارې فایلونو ته د بیا لیکلو اجازه ورکوي.

زیانونه په Node.js کې حل شوي په 12.22.6 او 14.17.6 کې، npm CLI 6.14.15 او 7.21.0، او انفرادي tar پیکج 4.4.19، 5.0.11، او 6.1.10 خوشې کوي. د "بګ فضل" نوښت د یوې برخې په توګه د ستونزې په اړه د معلوماتو ترلاسه کولو وروسته، GitHub څیړونکو ته $ 14500 تادیه کړل او د ذخیره کولو مینځپانګې یې سکین کړې، کوم چې د زیانونو څخه د ګټې اخیستنې هڅې ندي ښکاره کړي. د دې مسلو په وړاندې د ساتنې لپاره، GitHub د NPM کڅوړو په خپرولو هم بندیز لګولی دی چې پکې سمبولیک لینکونه، سخت لینکونه، او ذخیره ته مطلق لارې شاملې دي.

سرچینه: opennet.ru

Add a comment