ʻO ka vulnerability i ka pūʻolo NPM node-netmask i hoʻohana ʻia ma 270 tausani mau papahana

ʻO ka puʻupuʻu NPM node-netmask, aia ma kahi o 3 miliona mau hoʻoiho i kēlā me kēia pule a hoʻohana ʻia ma ke ʻano he hilinaʻi ma luna o 270 tausani mau papahana ma GitHub, he nāwaliwali (CVE-2021-28918) e hiki ai iā ia ke kāpae i nā loiloi e hoʻohana ana i ka netmask. e hoʻoholo i ka hanana e hoʻoponopono i nā pae a i ʻole ke kānana. Hoʻopaʻa ʻia ka pilikia ma ka hoʻokuʻu ʻana o ka node-netmask 2.0.0.

ʻO ka nāwaliwali e hiki ai ke mālama i kahi leka uila IP waho ma ke ʻano he helu mai ka pūnaewele kūloko a me ka hope, a me kekahi loiloi o ka hoʻohana ʻana i ka module node-netmask i ka noi e hoʻokō SSRF (Server-side request forgery), RFI (Remote File Inclusion) a me LFI (Local File Inclusion) hoouka ) e kiʻi i nā kumuwaiwai ma ka pūnaewele i loko a hoʻokomo i nā faila waho a kūloko paha i ke kaulahao hoʻokō. ʻO ka pilikia e like me ka kikoʻī, pono e unuhi ʻia nā helu string e hoʻomaka ana me ka zero e like me nā helu octal, akā ʻaʻole i noʻonoʻo ka node-netmask module a mālama iā lākou e like me nā helu decimal.

No ka laʻana, hiki i ka mea hoʻouka ke noi i kahi kumuwaiwai kūloko ma ke kuhikuhi ʻana i ka waiwai "0177.0.0.1", e pili ana me "127.0.0.1", akā e hoʻolei ka "node-netmask" module i ka null, a mālama iā 0177.0.0.1″ ma ke ʻano he " 177.0.0.1", i loko o ka noi i ka loiloi ʻana i nā lula komo, ʻaʻole hiki ke hoʻoholo i ka ʻike me "127.0.0.1". Pēlā nō, hiki i ka mea hoʻouka ke kuhikuhi i ka helu "0127.0.0.1", pono e like me "87.0.0.1", akā e mālama ʻia ʻo "127.0.0.1" i ka module "node-netmask". Pēlā nō, hiki iā ʻoe ke hoʻopunipuni i ka māka no ke komo ʻana i nā helu intranet ma ke kuhikuhi ʻana i nā waiwai e like me "012.0.0.1" (e like me "10.0.0.1", akā e hana ʻia e like me 12.0.0.1 i ka wā nānā).

ʻO ka poʻe noiʻi i ʻike i ka pilikia e kapa i ka pilikia catastrophic a hāʻawi i nā hiʻohiʻona hoʻouka kaua, akā ʻo ka hapa nui o lākou ke nānā aku nei. Eia kekahi laʻana, e kamaʻilio e pili ana i ka hiki ke hoʻouka i kahi noi Node.js e hoʻokumu i nā pilina o waho e noi i kahi kumuwaiwai e pili ana i nā palena a iʻole kaʻikepili o ka noi komo, akā,ʻaʻole i kapa inoa a kiko'ī paha ka noi. ʻOiai inā ʻike ʻoe i nā noi e hoʻouka ana i nā kumuwaiwai e pili ana i nā helu IP i hoʻokomo ʻia, ʻaʻole maopopo loa pehea e hoʻohana ʻia ai ka nāwaliwali ma ka hoʻomaʻamaʻa ʻole me ka hoʻopili ʻana i kahi pūnaewele kūloko a i ʻole ka loaʻa ʻole o ka mana o nā "mirror" IP address.

Manaʻo ka poʻe noiʻi e hiki i nā mea nona ka 87.0.0.1 (Telecom Italia) a me 0177.0.0.1 (Brasil Telecom) ke kāpae i ka palena o ke komo ʻana i 127.0.0.1. ʻO kahi hiʻohiʻona ʻoi aku ka ʻoiaʻiʻo ʻo ka hoʻohana ʻana i ka nāwaliwali e kāpae i nā papa inoa poloka ʻaoʻao. Hiki ke hoʻopili ʻia ka pilikia i ka hāʻawi ʻana i ka wehewehe ʻana o nā pae intranet ma ka module NPM "private-ip".

Source: opennet.ru

Pākuʻi i ka manaʻo hoʻopuka