TL; DR
nolimit-agent ఇది ఒక npm ప్యాకేజీ, దీని ప్రచురించబడిన వెర్షన్లు — 1.0.299 నుండి 1.0.307 వరకు2026-06-26 నుండి 2026-06-29 వరకు నాలుగు రోజుల పాటు విడుదల చేయబడ్డాయి — ప్రతి ఒక్కటి కలిగి ఉంటుంది పూర్తి ఫిషింగ్ మరియు బల్క్-మెయిల్ ఫ్రేమ్వర్క్ దాగివున్న, పూర్తిగా అస్పష్టంగా ఉన్న డైరెక్టరీ లోపల. ప్రతి వెర్షన్లో ప్రధాన ఎంట్రీ దీనికి పరిష్కరించబడుతుంది .ad/x0.jsదాదాపు 4,200 జావాస్క్రిప్ట్-అబ్ఫస్కేటర్ స్ట్రింగ్-అరే బ్లాబ్స్ను కలిగి ఉన్న డాట్ఫైల్ పేరు గల ఫోల్డర్లోని ~86 ఫైళ్ళలో ఇది ఒకటి; ఇన్స్టాల్ హుక్ మరియు ఎంట్రీ లేఅవుట్ అన్నింటిలోనూ ఒకేలా ఉంటాయి.
ఈ అస్పష్టత వెనుక ఒక మైక్రోసాఫ్ట్ 365 OAuth పరికర-కోడ్ ప్రవాహం (login[.]microsoftonline[.]com/common/oauth2/v2.0/devicecodeఒక కోడ్ ఆమోదించబడిన తర్వాత, మైక్రోసాఫ్ట్ గ్రాఫ్ API ద్వారా బాధితుని Outlook ఇన్బాక్స్ మరియు పంపిన అంశాలను చదివేది; ఆపరేటర్ అందించిన గ్రహీతల జాబితాల ద్వారా నడిచే బల్క్ SMTP మరియు SMS పంపే ఇంజిన్; బ్రాండ్-అనుకరణ సందేశ టెంప్లేట్లు; ఓపెన్-రీడైరెక్ట్ లింక్ నిర్మాణం; మరియు DNS-ఓవర్-HTTPS, WHOIS, మరియు GitHub కోడ్ శోధన ద్వారా నిఘా. ఆపరేటర్ మౌలిక సదుపాయాలకు రన్టైమ్ ట్రాఫిక్ బీకాన్లు api[.]nolimitent[.]xyz:4100.
ప్రభావితం: ప్యాకేజీ యొక్క ఏ వెర్షన్ను ఇన్స్టాల్ చేసే వారైనా, మరియు ఎవరైనా మైక్రోసాఫ్ట్ 365 మెయిల్బాక్స్ దీని యజమాని దాని ద్వారా సమర్పించబడిన పరికర కోడ్ను ఆమోదిస్తారు. అత్యంత ఇటీవలి వెర్షన్, 1.0.307ఇది ప్రస్తుత తాజా ట్యాగ్ మరియు అదే డివైస్-కోడ్ మెయిల్బాక్స్ సామర్థ్యాన్ని కలిగి ఉంటుంది — హానికరమైన కోడ్ ఒక పాత వెర్షన్కు మాత్రమే పరిమితం కాదు.
తీవ్రత: క్లిష్టమైనప్రభావిత పర్యావరణ వ్యవస్థ: npmమొదట వెతకవలసిన ఒకే ఒక సూచిక: హోస్ట్ api[.]nolimitent[.]xyz.
దాడి: అది ఎలా పనిచేస్తుంది
దాగివున్న పేలోడ్పై కప్పబడిన ఒక నిరపాయమైన పైపొర
ప్యాకేజీ సాధారణ ఉపరితలాన్ని కలిగి ఉంది. ప్యాకేజీ.జాసన్ ప్రకటిస్తుంది పోస్ట్ ఇన్స్టాల్ హుక్ –
text postinstall: node scripts/postinstall.js మరియు తనిఖీపై స్క్రిప్ట్లు/పోస్ట్ఇన్స్టాల్.js ఇది హానికరమైనది కాదు: ఇది ఒక విండోస్ కమాండ్ షిమ్ను ఇన్స్టాల్ చేసి నిష్క్రమిస్తుంది. ఈ ప్రవర్తన హుక్లో ఉండదు. ప్రధాన మరియు బిన్ క్షేత్రాలు రెండూ లోకి సూచిస్తాయి .ప్రకటన/ముందు చుక్క ఉండటం వల్ల క్యాజువల్ నుండి దూరంగా ఉండే ఒక డైరెక్టరీ ls అవుట్పుట్, మరియు దానిలోని విషయాలు ఏకరీతిగా యంత్రం ద్వారా అస్పష్టం చేయబడ్డాయి. స్టాటిక్ స్కానర్ అంతటా ~4,293 ఎన్కోడ్ చేయబడిన-పేలోడ్ స్పాన్లను లెక్కించింది. .ప్రకటన/ మాడ్యూల్ సెట్; javascript-obfuscator ఇది ఒక ప్రకటించబడిన డెవలప్మెంట్ డిపెండెన్సీ, ఇది బండిల్ చేయబడిన ఫైల్ల యొక్క స్ట్రింగ్-అరే-రొటేషన్ ఆకారానికి సరిపోలుతుంది.
ఈ విభజన పేర్కొనదగిన మొదటి సంకేతం: సమీక్షకుడు నిశితంగా పరిశీలించే ఇన్స్టాల్ హుక్ స్పష్టంగా ఉండగా, ఆపరేషనల్ కోడ్ ఒక డైరెక్టరీ దూరంలో, దాగి, అస్పష్టంగా ఉంటుంది; ప్యాకేజీ యొక్క ఎక్స్పోర్ట్ చేయబడిన ఎంట్రీ పాయింట్ రన్ అయినప్పుడు మాత్రమే దాన్ని చేరుకోవచ్చు.
మైక్రోసాఫ్ట్ 365 పరికర-కోడ్ మెయిల్బాక్స్ యాక్సెస్
మాడ్యూల్ .ad/x12.js ఫ్రేమ్వర్క్ యొక్క అత్యంత ముఖ్యమైన సామర్థ్యాన్ని కలిగి ఉంటుంది. ఇది Microsoft 365 OAuth 2.0 పరికర అధికార మంజూరును నడిపిస్తుంది:
text POST login[.]microsoftonline[.]com/common/oauth2/v2.0/devicecode డివైస్-కోడ్ గ్రాంట్ అనేది ఇన్పుట్ పరిమితులు గల పరికరాల కోసం రూపొందించబడిన ఒక చట్టబద్ధమైన మైక్రోసాఫ్ట్ విధానం: ఒక సేవ కోడ్ను అభ్యర్థిస్తుంది, వినియోగదారు ఆ కోడ్ను టైప్ చేస్తారు microsoft.com/deviceloginరెండవ పరికరంలో ` చేసి ఆమోదిస్తుంది, మరియు అభ్యర్థించే సేవ టోకెన్లను అందుకుంటుంది. అభ్యర్థించే సేవ మెయిల్బాక్స్ యజమాని కాకుండా వేరొకరికి చెందినదైతే, ఆమోదం ఆ మూడవ పక్షానికి ఒక టోకెన్ను అందిస్తుంది. ఒకసారి టోకెన్ పొందిన తర్వాత, `.ad/x12.js` మైక్రోసాఫ్ట్ గ్రాఫ్ ద్వారా మెయిల్బాక్స్ను నేరుగా చదువుతుంది:
text GET graph[.]microsoft[.]com/v1.0/me/mailFolders/inbox/messages?$top=250&$select=from GET graph[.]microsoft[.]com/v1.0/me/mailFolders/sentitems/messages?$top=250&$select=toRecipients మా $ఎంచుకోండి ప్రొజెక్షన్లు ఇన్బాక్స్ నుండి పంపినవారి చిరునామాలను మరియు పంపిన అంశాల నుండి గ్రహీతల చిరునామాలను సేకరిస్తాయి — ఇవి బాధితుని ఉత్తర ప్రత్యుత్తరాలను మ్యాప్ చేయడానికి అవసరమైన ముడి పదార్థం. ఇది పాస్వర్డ్ క్యాప్చర్ ద్వారా కాకుండా, సమ్మతితో లభించే అడ్వర్సరీ-ఇన్-ది-మిడిల్ (AiTM) యాక్సెస్: సాంప్రదాయ అర్థంలో ఫిషింగ్ చేయడానికి ఎలాంటి క్రెడెన్షియల్ ఉండదు, కేవలం ఆమోదం పొందడానికి ఒక కోడ్ మాత్రమే ఉంటుంది.
అనుకరణ టెంప్లేట్లతో కూడిన బల్క్ మెయిల్ మరియు SMS ఇంజిన్
మెయిల్బాక్స్ యాక్సెస్ చుట్టూ ఒక మెయిలర్ ఉంటుంది. ఆ ప్యాకేజీ ఆపరేటర్ సవరించగలిగే డేటా ఫైళ్లను — అంటే పంపేవారి జాబితాలను — పంపుతుంది.పంపేవారు.txt, smtps.txtమరియు ఒక టెంప్లేట్ ఫైల్ (functions.txt) — వీరి ప్లేస్హోల్డర్ చిరునామాలు వేషధారణ కోసం ఒక కాస్టింగ్ షీట్లా ఉన్నాయి: సెక్యూరిటీ@ఆపిల్.కామ్, login-ధృవీకరణ, OAuth-సేవ, బిల్లింగ్ మరియు ఖాతా-నోటిఫికేషన్ పంపేవారు ఒక మీడొమైన్.కామ్ ఆపరేటర్ స్థానంలో తాత్కాలిక వ్యక్తి ఉంటారు. SMS విభాగం ఒక ఫోన్ను కలిగి ఉంటుంది.ebook మరియు గేట్వే కాన్ఫిగరేషన్. మెయిలర్ ఆపరేటర్ అందించిన గ్రహీతల జాబితాలను అనుసరించి, కాన్ఫిగర్ చేయబడిన SMTP రిలేల ద్వారా పంపుతుంది.
లింకులు ల్యాండ్ అయ్యేలా చేయడానికి, .ad/xu.js మరియు .ad/xq.js URL పార్సింగ్ అస్పష్టత మరియు క్లిక్ ట్రాకింగ్ను ఉపయోగించుకునే URLలను రూపొందించండి. ఈ స్పూఫ్ ప్యాటర్న్లు ఒక URLకు ముందు విశ్వసనీయంగా కనిపించే ఒక అథారిటీని పొందుపరుస్తాయి. @ అందువల్ల కనిపించే ప్రిఫిక్స్ నిజమైన హోస్ట్ నుండి భిన్నంగా ఉంటుంది:
text https://trusted[.]com@ https://trusted[.]com%40 https://trusted[.]com:80@ https://redirect[.]example[.]com/ https://track[.]example[.]com/click? ఈ ఫ్రేమ్వర్క్ ప్రధాన వినియోగదారుల నుండి ఫేవ్కాన్లను కూడా తీసుకుంటుంది మరియు enterprise మెయిల్ ప్రొవైడర్లు — ప్రొవైడర్ బ్రాండెడ్ ప్రాంప్ట్ లేదా ల్యాండింగ్ పేజీని నమ్మకంగా ప్రదర్శించడానికి ఉపయోగించే ఒక సాధారణ పద్ధతి.
లక్ష్యం మరియు మౌలిక సదుపాయాల పరిశీలన
అనేక మాడ్యూల్స్ పంపే ముందు సందర్భాన్ని సేకరిస్తాయి. .ad/x0.js DNS-over-HTTPS ద్వారా పేర్లను పరిష్కరిస్తుంది (dns[.]google/resolve), .ad/xa.js WHOIS ప్రశ్నలుapi[.]whois[.]vu), మరియు .ad/x9.js గిట్హబ్ కోడ్ శోధనను అమలు చేస్తుంది (api[.]github[.]com/search/code?q=) — రిలే జాబితాకు అందించడానికి బహిర్గతమైన మెయిల్-సర్వర్ కాన్ఫిగరేషన్ మరియు SMTP ఆధారాలను కనుగొనడంతో పొంతన ఉన్న ఒక నమూనా. .ad/xs.js వేబ్యాక్ మెషీన్ యొక్క CDX సూచికను ప్రశ్నిస్తుంది.
ఆదేశం మరియు నియంత్రణ
అస్పష్టమైన సెట్ అంతటా, .ad/x4.js ఆపరేటర్ ఎండ్పాయింట్ను సూచిస్తుంది:
text http://api[.]nolimitent[.]xyz:4100 హోస్ట్ దానిని పంచుకుంటుంది అపరిమితం ప్రచురణకర్త సొంత నామకరణంతో బ్రాండ్, మరియు : 4100 పోర్ట్ అనేది ఫ్రేమ్వర్క్ యొక్క కాల్-హోమ్ ఛానెల్. డిఫెండర్లకు ఇది అత్యంత పటిష్టమైన సూచిక: ఒక ప్యాకేజీ, ఒక డెవలపర్ వర్క్స్టేషన్, లేదా ఒక బిల్డ్ ఏజెంట్ చేరుకోవడం. api[.]nolimitent[.]xyz ఈ కోడ్ను అమలు చేసింది.
రాజీ సూచికలు
కింద ఇవ్వబడిన సూచికల ఆధారంగా ఒక డిఫెండర్ చర్య తీసుకోవచ్చు — ఉదాహరణకు, లాక్ఫైల్ను గ్రెప్ చేయడం, ఒక హోస్ట్ను బ్లాక్ చేయడం, లేదా ప్రాక్సీ మరియు DNS లాగ్లను శోధించడం వంటివి. ఫ్రేమ్వర్క్ వాటిని దుర్వినియోగం చేయడం వల్ల మైక్రోసాఫ్ట్ ఎండ్పాయింట్లు కనిపిస్తాయి; అవి స్వయంగా హానికరమైనవి కావు మరియు వాటిని బ్లాక్ చేయకూడదు.
| సూచిక | రకం | ఎక్కడ | రక్షక చర్య |
|---|---|---|---|
nolimit-agent (అన్ని వెర్షన్లు 1.0.299–1.0.307) | ప్యాకేజీ | npm | లాక్ఫైల్లను / ఇన్స్టాల్ లాగ్లను గ్రెప్ చేయండి |
api[.]nolimitent[.]xyz (:4100) | C2 హోస్ట్ | .ad/x4.js | నిరోధించండి; DNS + ప్రాక్సీ లాగ్లను శోధించండి |
.ad/ దాచిన డైరెక్టరీ ప్రధాన/బిన్ లక్ష్యంగా | <span style="font-family: Mandali; ">నిర్మాణం</span> | package.json | రిజిస్ట్రీ సమీక్షలో స్టాటిక్ సిగ్నల్ |
trusted[.]com@ / %40 / :80@ లింక్ ఫారమ్లు | URL స్పూఫ్ | .ad/xu.js, .ad/xq.js | మెయిల్/ప్రాక్సీ URL తనిఖీ |
పరికర-కోడ్ మంజూరు + గ్రాఫ్ inbox/sentitems చదవండి | ప్రవర్తన | .ad/x12.js | M365 సైన్-ఇన్ + గ్రాఫ్ ఆడిట్ సమీక్ష |
ట్రియాజ్ వద్ద సంగ్రహించబడిన ఫైల్ హ్యాష్లు:
- ప్యాకేజీ/.ad/x0.js — షా256 e4153bb614ee03ec456e6b5b41926385db6aae0e4f3e771d18e581571ad7ca2a
- ప్యాకేజీ/ప్యాకేజీ.json — షా256 8618064f1f6146b4a8f0459aff9154dca1847e3936aa44f4d4cd37e127075644
ఈ ప్యాకేజీతో సంబంధం లేకుండా స్వతంత్రంగా గమనించాల్సిన ఒక Microsoft 365 టెనెంట్ సంకేతం: విజయవంతమైన డివైస్-కోడ్ సైన్-ఇన్ల తర్వాత వెంటనే గ్రాఫ్ రీడ్లు జరగడం. మెయిల్ ఫోల్డర్లు/ఇన్బాక్స్ మరియు మెయిల్ ఫోల్డర్లు/పంపిన అంశాలుముఖ్యంగా వినియోగదారుడు గుర్తించని సెషన్ నుండి.
ఆపాదించడం మరియు గమనించిన ప్రవర్తన
గమనించదగినది దాని వెనుక ఉన్నవారి నుండి వేరుగా ఉంటుంది.
గమనించదగిన వాస్తవాలు: ప్యాకేజీ హ్యాండిల్ కింద ప్రచురించబడింది నోలిమిట్-ఏజెంట్ ధృవీకరించని Gmail చిరునామా మరియు లింక్ చేయబడిన సోర్స్ రిపోజిటరీ లేకుండా; దాని ప్యాకేజీ.జాసన్ దీనిని “అధునాతన ఇమెయిల్ పంపే సాధనం”గా వర్ణించి, ట్యాగ్ చేస్తుంది రెడ్-టీమ్ కీవర్డ్; రన్టైమ్ కోడ్ ఒక దాగి ఉన్న, అస్పష్టమైన దానిలో కేంద్రీకృతమై ఉంటుంది .ప్రకటన/ టూల్చెయిన్ ఉన్న డైరెక్టరీ (javascript-obfuscator) అనేది ప్రకటించబడిన డిపెండెన్సీ; మరియు కాల్-హోమ్ హోస్ట్ api[.]nolimitent[.]xyz తిరిగి ఉపయోగిస్తుంది అపరిమితం బ్రాండ్. ఇది ఒక ఆపరేటర్-నియంత్రిత మౌలిక సదుపాయాల మైలురాయితో కూడిన ఒకే ప్యాకేజీ — బహుళ-ప్యాకేజీల సమూహం కాదు, మరియు గతంలో పేర్కొన్న ప్రచారంతో ఎటువంటి అతివ్యాప్తి గుర్తించబడలేదు.
మా రెడ్-టీమ్ కీవర్డ్ వర్గీకరణను మార్చదు. ద్వంద్వ-వినియోగ సామర్థ్యాన్ని అందించే చట్టబద్ధమైన అఫెన్సివ్-సెక్యూరిటీ టూలింగ్ దానిని పారదర్శకంగా చేస్తుంది: చదవగలిగే సోర్స్, ఆపరేటర్ అందించిన టార్గెట్లు, మరియు దాచిన కాల్-హోమ్ ఉండవు. ఈ ప్యాకేజీ ఆ లక్షణాలన్నింటినీ తలక్రిందులు చేస్తుంది — దాని ఆపరేషనల్ కోడ్ అస్పష్టంగా మరియు దాచబడి ఉంటుంది, మరియు ఇది వినియోగదారు అందించే టార్గెట్కు బదులుగా స్థిరమైన ఆపరేటర్ ఇన్ఫ్రాస్ట్రక్చర్కు బీకన్ చేస్తుంది. లేబుల్ కాదు, దాని ప్రవర్తనే తీర్పును నిర్దేశిస్తుంది, అది హానికరమైనది.
ఇక్కడ ఉద్దేశం స్పష్టం చేయబడలేదు. ఆ పోస్ట్, కోడ్ ఏమి చేస్తుందో వివరిస్తుంది — ఒక పరికర కోడ్ను అభ్యర్థించడం, గ్రాఫ్ ద్వారా మెయిల్బాక్స్ను చదవడం, కాన్ఫిగర్ చేయబడిన రిలేల ద్వారా బల్క్ మెయిల్ పంపడం, ఒక స్థిరమైన హోస్ట్కు బీకన్ చేయడం — కానీ దాని వెనుక ఉన్న ఉద్దేశ్యాన్ని పేర్కొనకుండా వదిలేస్తుంది.
ప్రభావం, ధోరణులు మరియు డిఫెండర్ మార్గదర్శకత్వం
ఇన్స్టాలేషన్ సమయంలో రెండు ప్రభావాలు ముఖ్యమైనవి. మొదటిది, ఇన్స్టాల్ చేసే ఏ డెవలపర్ లేదా CI ఏజెంట్ అయినా నోలిమిట్-ఏజెంట్ ఫ్రేమ్వర్క్ను ఆ హోస్ట్పైకి తీసుకువచ్చి, కాల్-హోమ్ను ఏర్పాటు చేస్తుంది api[.]nolimitent[.]xyzరెండవది, డివైస్-కోడ్ సామర్థ్యం ఇన్స్టాల్ చేసే హోస్ట్ పరిధిని దాటి విస్తరిస్తుంది: ఒక Microsoft 365 మెయిల్బాక్స్ యజమాని అందించిన కోడ్ను ఆమోదించేలా ప్రేరేపించబడితే, ఆ మెయిల్బాక్స్ పాస్వర్డ్ ఏదీ బయటకు వెళ్లకుండా నేరుగా గ్రాఫ్ ద్వారా చదవబడుతుంది.
విస్తృతమైన ధోరణి అంతర్గతీకరించడమే. డివైస్-కోడ్ (AiTM) ఫిషింగ్ అనేది స్వతంత్ర ఫిషింగ్ మౌలిక సదుపాయాల నుండి పబ్లిక్ రిజిస్ట్రీలోని ఒక ప్యాకేజీగా మారింది — పంపిణీ ద్వారా npm సంస్థాపన ఇమెయిల్ చేసిన లింక్ ద్వారా కాకుండా. కిట్ను ఈ విధంగా ప్యాకేజింగ్ చేయడం వల్ల, ఫిషింగ్ ఆపరేటర్ ఎదుర్కొనే హోస్టింగ్ మరియు లింక్-డెలివరీ సమస్యకు బదులుగా రిజిస్ట్రీ యొక్క విస్తృత పరిధిని పొందవచ్చు, మరియు ఇది ఆపరేషనల్ కోడ్ను ఒక క్లీన్ ఇన్స్టాల్ హుక్ మరియు డాట్ఫైల్ పేరుతో ఉన్న అస్పష్టమైన డైరెక్టరీ వెనుక దాచిపెడుతుంది, ఇది త్వరిత మాన్యువల్ పరిశీలనను నిరోధిస్తుంది.
రక్షకుల కోసం:
- రిజిస్ట్రీ మరియు డిపెండెన్సీ సమీక్ష. ఒక ప్యాకేజీని పరిగణించండి ప్రధాన/బిన్ ఇన్స్టాల్ హుక్ శుభ్రంగా కనిపిస్తుందా లేదా అనే దానితో సంబంధం లేకుండా, కేవలం నిర్మాణం ఆధారంగానే ఇది అధిక-ప్రమాదకరమైనదిగా భావించి, ఏకరీతిగా అస్పష్టం చేయబడిన ఫస్ట్-పార్టీ కోడ్ యొక్క దాచిన (చుక్కతో కూడిన) డైరెక్టరీగా మారుతుంది. మినిఫికేషన్ అంటే అస్పష్టం చేయడం కాదు — ఇది లైన్ పొడవుపై కాకుండా, స్ట్రింగ్-అరే డీకోడర్ సిగ్నేచర్పై ఆధారపడి పనిచేస్తుంది.
- మైక్రోసాఫ్ట్ 365 హార్డెనింగ్. కార్యాచరణపరంగా అవసరం లేని చోట కండిషనల్ యాక్సెస్తో డివైస్-కోడ్ ఆథరైజేషన్ ఫ్లోను పరిమితం చేయండి; డివైస్-కోడ్ గ్రాంట్లు ఒక తెలిసిన AiTM వెక్టర్ మరియు ఇంటరాక్టివ్ వినియోగదారులకు ఇవి చాలా అరుదుగా అవసరమవుతాయి. డివైస్-కోడ్ సైన్-ఇన్ల కోసం ఆడిట్ చేసి, వెంటనే గ్రాఫ్ మెయిల్బాక్స్ను లెక్కించండి.
- నెట్వర్క్ గుర్తింపు. నిరోధించండి మరియు హెచ్చరించండి api[.]nolimitent[.]xyzడెవలపర్ మరియు బిల్డ్ ఇన్ఫ్రాస్ట్రక్చర్ అంతటా దాని కోసం అవుట్బౌండ్ DNS మరియు ప్రాక్సీ లాగ్లను వెతకండి.
- మెయిల్-మార్గం గుర్తింపు. మా యూజర్@హోస్ట్ URL-స్పూఫ్ ఫారమ్లు (trusted[.]com@…) మెయిల్ గేట్వే మరియు ప్రాక్సీ వద్ద గుర్తించబడతాయి; అథారిటీ భాగం ముందు ఉన్న లింక్లను ఫ్లాగ్ చేయండి @.
విశ్లేషణ సమయంలో ప్యాకేజీ npmలో అందుబాటులో ఉంది. దాగి ఉన్న ఫ్రేమ్వర్క్ ప్రచురించబడిన మొత్తం వెర్షన్ లైన్ను మరియు ప్రస్తుత వెర్షన్ను విస్తరించి ఉన్నందున తాజా ట్యాగ్ (1.0.307) పరికర-కోడ్ సామర్థ్యాన్ని కలిగి ఉంది, రిజిస్ట్రీ టేక్డౌన్ కేవలం ఒక వెనుకబడిన వెర్షన్ను మాత్రమే కాకుండా, ప్రతి వెర్షన్ను కవర్ చేయాలి.




