PureScript ఇన్‌స్టాలర్‌తో npm ప్యాకేజీ కోసం డిపెండెన్సీలలో హానికరమైన మార్పులు కనుగొనబడ్డాయి

PureScript ఇన్‌స్టాలర్‌తో npm ప్యాకేజీపై ఆధారపడి ఉంటుంది గుర్తించబడింది మీరు ప్యాకేజీని ఇన్‌స్టాల్ చేయడానికి ప్రయత్నించినప్పుడు కనిపించే హానికరమైన కోడ్ స్వచ్ఛమైన. హానికరమైన కోడ్ డిపెండెన్సీల ద్వారా పొందుపరచబడింది లోడ్-from-cwd-or-npm и రేటు మ్యాప్. ఈ డిపెండెన్సీలతో కూడిన ప్యాకేజీల నిర్వహణ ప్యూర్‌స్క్రిప్ట్ ఇన్‌స్టాలర్‌తో npm ప్యాకేజీ యొక్క అసలు రచయితచే నిర్వహించబడటం గమనార్హం, వీరు ఇటీవలి వరకు ఈ npm ప్యాకేజీని నిర్వహిస్తున్నారు, అయితే సుమారు ఒక నెల క్రితం ప్యాకేజీ ఇతర నిర్వహణదారులకు బదిలీ చేయబడింది.

ఈ సమస్యను ప్యాకేజీ యొక్క కొత్త నిర్వాహకులలో ఒకరు కనుగొన్నారు, ప్యూర్‌స్క్రిప్ట్ npm ప్యాకేజీ యొక్క అసలైన రచయితతో అనేక విభేదాలు మరియు అసహ్యకరమైన చర్చల తర్వాత నిర్వహణ హక్కులు బదిలీ చేయబడ్డాయి. కొత్త మెయింటెయినర్లు ప్యూర్‌స్క్రిప్ట్ కంపైలర్‌కు బాధ్యత వహిస్తారు మరియు NPM ప్యాకేజీ మరియు దాని ఇన్‌స్టాలర్‌ను బయటి పక్షం ద్వారా కాకుండా అదే మెయింటెయిన్‌లు నిర్వహించాలని పట్టుబట్టారు. ప్యూర్‌స్క్రిప్ట్ ఇన్‌స్టాలర్‌తో npm ప్యాకేజీ రచయిత చాలా కాలం వరకు అంగీకరించలేదు, కానీ ఆ తర్వాత రిపోజిటరీకి యాక్సెస్‌ను బదిలీ చేసారు. అయినప్పటికీ, కొన్ని డిపెండెన్సీలు అతని నియంత్రణలోనే ఉన్నాయి.

గత వారం PureScript 0.13.2 కంపైలర్ విడుదల చేయబడింది మరియు
కొత్త మెయింటెయినర్లు ఇన్‌స్టాలర్‌తో npm ప్యాకేజీ యొక్క సంబంధిత నవీకరణను సిద్ధం చేశారు, దీని డిపెండెన్సీలలో హానికరమైన కోడ్ గుర్తించబడింది. ప్యూర్‌స్క్రిప్ట్ ఇన్‌స్టాలర్‌తో npm ప్యాకేజీ రచయిత, మెయింటెయినర్‌గా తన పోస్ట్ నుండి తీసివేయబడ్డాడు, అతని ఖాతా తెలియని దాడి చేసేవారిచే రాజీపడిందని చెప్పారు. అయినప్పటికీ, దాని ప్రస్తుత రూపంలో, హానికరమైన కోడ్ యొక్క చర్యలు ప్యాకేజీ యొక్క ఇన్‌స్టాలేషన్‌ను విధ్వంసం చేయడానికి పరిమితం చేయబడ్డాయి, ఇది కొత్త నిర్వహణదారుల నుండి వచ్చిన మొదటి సంస్కరణ. హానికరమైన చర్యలు ఎటువంటి స్పష్టమైన హానికరమైన కార్యకలాపాన్ని నిర్వహించకుండా “npm i -g ప్యూర్‌స్క్రిప్ట్” కమాండ్‌తో ప్యాకేజీని ఇన్‌స్టాల్ చేయడానికి ప్రయత్నిస్తున్నప్పుడు దోష సందేశంతో కూడిన లూప్‌గా ఉంటాయి.

రెండు దాడులను గుర్తించారు. ప్యూర్‌స్క్రిప్ట్ npm ప్యాకేజీ యొక్క కొత్త వెర్షన్ అధికారికంగా విడుదలైన కొన్ని గంటల తర్వాత, ఎవరైనా load-from-cwd-or-npm 3.0.2 డిపెండెన్సీ యొక్క కొత్త వెర్షన్‌ను సృష్టించారు, దానిలో మార్పులు loadFromCwdOrNpm()కి కాల్ చేయడానికి దారితీశాయి. ఇన్‌స్టాలేషన్ కోసం అవసరమైన బైనరీ ఫైల్‌ల జాబితా స్ట్రీమ్‌ని అందించింది గుండా, ఇన్‌పుట్ ప్రశ్నలను అవుట్‌పుట్ విలువలుగా ప్రతిబింబిస్తుంది.

4 రోజుల తర్వాత, డెవలపర్‌లు వైఫల్యాల మూలాన్ని గుర్తించి, డిపెండెన్సీల నుండి లోడ్-cwd-or-npmని మినహాయించడానికి ఒక నవీకరణను విడుదల చేయడానికి సిద్ధమవుతున్న తర్వాత, దాడి చేసేవారు load-from-cwd-or-npm అనే మరో నవీకరణను విడుదల చేశారు. 3.0.4, దీనిలో హానికరమైన కోడ్ తీసివేయబడింది. అయితే, దాదాపు వెంటనే, రేట్-మ్యాప్ 1.0.3 అనే మరో డిపెండెన్సీకి అప్‌డేట్ విడుదల చేయబడింది, ఇది లోడ్ చేయడం కోసం కాల్‌బ్యాక్ కాల్‌ను నిరోధించే పరిష్కారాన్ని జోడించింది. ఆ. రెండు సందర్భాల్లో, లోడ్-from-cwd-or-npm మరియు రేట్-మ్యాప్ యొక్క కొత్త వెర్షన్‌లలో మార్పులు స్పష్టమైన విధ్వంసక స్వభావంలో ఉన్నాయి. అంతేకాకుండా, హానికరమైన కోడ్ తనిఖీని కలిగి ఉంది, ఇది కొత్త నిర్వహణదారుల నుండి విడుదలను ఇన్‌స్టాల్ చేసేటప్పుడు మాత్రమే తప్పు చర్యలను ప్రేరేపించింది మరియు పాత సంస్కరణలను ఇన్‌స్టాల్ చేసేటప్పుడు ఏ విధంగానూ కనిపించదు.

డెవలపర్‌లు సమస్యాత్మక డిపెండెన్సీలను తొలగించే నవీకరణను విడుదల చేయడం ద్వారా సమస్యను పరిష్కరించారు. ప్యూర్‌స్క్రిప్ట్ యొక్క సమస్యాత్మక సంస్కరణను ఇన్‌స్టాల్ చేయడానికి ప్రయత్నించిన తర్వాత వినియోగదారు సిస్టమ్‌లలో రాజీపడిన కోడ్‌ని పరిష్కరించకుండా నిరోధించడానికి, node_modules డైరెక్టరీలు మరియు ప్యాకేజీ-lock.json ఫైల్‌ల కంటెంట్‌లను తొలగించాలని సిఫార్సు చేయబడింది, ఆపై ప్యూర్‌స్క్రిప్ట్ వెర్షన్ 0.13.2ని సెట్ చేయండి తక్కువ పరిమితి.

మూలం: opennet.ru

ఒక వ్యాఖ్యను జోడించండి