समय पढ़ें: 5 मिनट
Web3 की दुनिया प्रोटोकॉल और मानकों की दुनिया है। आपने निश्चित रूप से कई ईआरसी मानकों को देखा होगा। कुछ सबसे प्रसिद्ध ईआरसी मानक 20 और 721 हैं, जो क्रमशः टोकन और एनएफटी के लिए हैं। लेकिन Web3 यहीं तक सीमित नहीं है.
हम Web3 में नियमित अपडेट और अपग्रेड देखते हैं। नवीनतम अपग्रेड में से एक ईआरसी 4337 था, जिसे मार्च 2023 में एथेरियम मेननेट पर तैनात किया गया था। हर अपडेट एक बार में सफल नहीं होता है; ईआरसी 4337 के साथ भी यही सच है। इस ब्लॉग में, हम मानक के उपयोगकर्ता संचालन अनुभाग से संबंधित कमजोरियों और उनके प्रभाव के बारे में जानेंगे। सबसे पहले आइए ERC 4337 मानक के संक्षिप्त परिचय से शुरुआत करें।
ईआरसी 4337 क्या है?
बिटकॉइन के नेटवर्क के विपरीत, Ethereum श्रृंखला पर स्मार्ट अनुबंधों का समर्थन करता है, जिससे एथेरियम के पास दो अलग-अलग प्रकार के खाते होते हैं, एक लेनदेन खाता या एक परिचालन खाता। इसके अलावा, स्मार्ट कॉन्ट्रैक्ट्स का अपना स्थान होता है, लगभग एक खाते की तरह। एथेरियम में इन दो प्रकार के खातों की अपनी-अपनी कार्यक्षमताएँ हैं।
एथेरियम के साथ काम करने वाले अधिकांश वॉलेट ईओए हैं जिसका अर्थ है उपयोगकर्ता के खाते, स्मार्ट अनुबंध वाले नहीं। इस प्रकार के खातों की अपनी सीमाएँ होती हैं। एक सीमा में खातों तक पहुंचने के लिए निजी कुंजी पर उपयोगकर्ता की एकमात्र निर्भरता और लेनदेन के लिए सभी हस्ताक्षरों की आवश्यकता शामिल है। इन सीमाओं ने ईआरसी 4337 की शुरूआत को प्रेरित किया।
ईआरसी 4337 दो खाता-प्रकार की सर्वोत्तम सुविधाओं को संयोजित करके खाता अमूर्तता प्रदान करने का प्रयास करता है। हाँ, ईओए और स्मार्ट अनुबंध खाते। यह एक एकल अनुबंध द्वारा संभव बनाया गया है जो टोकन का लेन-देन कर सकता है और एक साथ अनुबंध बना सकता है, और ईआरसी 4337 इस अद्भुत नई प्रगति को सुविधाजनक बनाने वाला एक मानक है।
उपयोगकर्ताऑपरेशन पैकिंग भेद्यता?
इस मानक और परियोजना के बारे में सब कुछ अद्भुत है, लेकिन क्या गलत हुआ? खैर, एक कार्यान्वयन समस्या थी जिसके परिणामस्वरूप हस्ताक्षर करने के लिए उपयोग की जाने वाली विधि के आधार पर असंगत हैश उत्पन्न हुआ। इससे ऑर्डर टकराव होता है, विशेष रूप से एक ही यूजरऑपरेशंस के लिए अलग-अलग हैश और विभिन्न यूजरऑपरेशंस के लिए टकराने वाले हैश।
प्रभावित क्षेत्र दो कमजोरियों तक ही सीमित थे, एंट्रीप्वाइंट पैकिंग भेद्यता और वेरिफाइंगपेमास्टर पैकिंग भेद्यता। उस पर और बाद में। आइए पहले एक सामान्य समझ लें, और फिर हम उनके बारे में व्यक्तिगत रूप से जानेंगे।
आइए UserOperation.sol पर एक नजर डालें:-
आप UserOperation पैरामीटर, एक कॉलडेटा, को पैक फ़ंक्शन के तर्क के रूप में पारित होते हुए देखते हैं। आइए संरचना का अन्वेषण करें:-
ये वे फ़ील्ड हैं जो UserOperation संरचना में मौजूद हैं। कॉलडेटा के इस बड़े हिस्से को मेमोरी में कॉपी करने के लिए, कोड सेगमेंट असेंबली का उपयोग करते हैं। अनुबंधों की कुछ विधियाँ यूजरऑपरेशन के सभी क्षेत्रों को कैप्चर करने का इरादा रखती हैं, जिसमें चर-आकार के फ़ील्ड भी शामिल हैं, जिन्हें एबीआई एन्कोडिंग में डायनेमिक फ़ील्ड भी कहा जाता है। उदाहरण के लिए, इस संरचना में डायनामिक एन्कोडिंग 'initCode', 'callData' और 'paymasterAndData' है।
कुछ विधियों में 'paymasterAndData' शामिल नहीं हो सकता क्योंकि वह फ़ील्ड अभी तक परिभाषित या घोषित नहीं किया गया है। ऐसा करने के लिए विधियाँ गतिशील डेटा प्रकारों को प्रदान की गई '.ऑफ़सेट' सुविधा फ़ील्ड का उपयोग करती हैं। लेकिन एबीआई-एन्कोडेड तर्कों का उपयोग करने वाले अनुबंध उस क्रम को मान्य नहीं करते हैं जिसमें फ़ील्ड परिभाषित होते हैं और ऑफसेट की वैधता होती है। असामान्य हैश गुणों के साथ कॉलडेटा में उपयोगकर्ता संचालन का एक वैध प्रतिनिधित्व बनाना संभव है।
एंट्रीप्वाइंट पैकिंग भेद्यता
UserOperation की समस्या मानक के कुछ अन्य भागों को भी प्रभावित करती है, EntryPoint पैकिंग भेद्यता उनमें से एक है। जब एंट्रीपॉइंट और वॉलेट अनुबंध के बीच एक अलग हैशिंग योजना का उपयोग किया जाता है या एक गैर-मानक उपयोगकर्ता ऑपरेशन एन्कोडिंग का उपयोग किया जाता है, तो हम हैश विचलन देखते हैं।
जोखिम EntryPoint के रूप में सामने आता है। अब एक एकल उपयोगकर्ता ऑपरेशन को कई 'उपयोगकर्ता ऑप हैश' द्वारा दर्शाया जा सकता है, और एक ही 'उपयोगकर्ता ऑप हैश' कई उपयोगकर्ता संचालन का प्रतिनिधित्व कर सकता है। अब यह कुछ अवांछित प्रभाव पैदा कर सकता है। आइए चर्चा करें कि इसका क्या प्रभाव पड़ सकता है।
ईआरसी 4337 अभी भी बहुत प्रारंभिक चरण में है, क्योंकि इसे अभी मार्च में जारी किया गया था, इसलिए इन कमजोरियों का प्रभाव पूरी तरह से ज्ञात नहीं है। विहंगम दृष्टि से संभावित प्रभाव का वर्णन करना कठिन है। इसके अलावा, प्रभाव बंडलर, इंडेक्सर्स, उपयोगकर्ता ऑपरेशन एक्सप्लोरर और अन्य ऑफ-चेन सेवाओं को लागू करने पर निर्भर करता है। आइए इस भेद्यता के कारण होने वाली कुछ समस्याओं पर नज़र डालें।
- यह उपयोगकर्ता के लिए एक भ्रमित करने वाला अनुभव पैदा कर सकता है क्योंकि उपयोगकर्ता ऑपरेशन हैश सबमिशन और समावेशन समय के बीच बदल सकता है। यह घटना अधिकांश वॉलेटों के लिए अज्ञात है, इसलिए हो सकता है कि वे उस अंतर को ध्यान में न रखें।
- सभी उपयोगकर्ता ऑपरेशन हैश को समान सेट करके जानबूझकर अनुक्रमण से बचने के लिए वॉलेट को बदला और डिज़ाइन किया जा सकता है।
- यदि उपयोगकर्ता ऑपरेशन समावेशन की निगरानी करने वाली एक ऑफ-चेन सेवा किसी दिए गए उपयोगकर्ता ऑपरेशन को शामिल करने से चूक जाती है, तो हम डेटा और कुंजियों का गलत प्रबंधन देख सकते हैं।
पेमास्टर पैकिंग भेद्यता का सत्यापन
किसी को भी ऑनलाइन शॉपिंग से कुछ ऑर्डर करना और बिल्कुल अलग उत्पाद प्राप्त करना पसंद नहीं है। Web3 पर भी ऐसा ही है, लेकिन यह भेद्यता उपयोगकर्ता अनुभव को ख़राब कर देती है। किसी उपयोगकर्ता ने हस्ताक्षर करने के समय और श्रृंखला में शामिल किए जाने के बीच सामग्री में बदलाव या भिन्न सामग्री हो सकती है। और ऐसा होने का कारण यह है कि दो अलग-अलग उपयोगकर्ता ऑपरेशन 'VerifyingPaymaster.getHash()' फ़ंक्शन से एक ही हैश लौटाते हैं।
VerifyingPaymaster.getHash() फ़ंक्शन 'UserOperation' जैसे कुछ तर्क लेता है, जो एक संरचना, 'validUnitl', एक uint48 मान और एक वैधआफ्टर अन्य uint48 मान है। हस्ताक्षर करने के समय और शामिल करने के समय के बीच अलग-अलग सामग्री का मुद्दा उपयोगकर्ता अनुभव और समग्र सुरक्षा को प्रभावित करता है। आइए इससे उत्पन्न होने वाली कुछ चिंताओं पर चर्चा करें।
- उपयोगकर्ता संचालन प्राप्त करने के बाद एबीआई-एनकोडेड प्रारूप में हस्ताक्षर करने वाले ऑफचेन हस्ताक्षरकर्ता या हस्ताक्षर के लिए डेटा तैयार करने के लिए अनुबंध एकीकरण वाले हस्ताक्षरकर्ता असुरक्षित हो जाते हैं।
- हैश को अपेक्षा से कम तत्वों को कवर करने के लिए संशोधित किया जा सकता है, जिससे initCode आदि जैसे कुछ स्थिर फ़ील्ड को हैश से बाहर रखा जा सकता है। इसके परिणामस्वरूप पेमास्टर प्रायोजन हस्ताक्षरों के उद्देश्य से भिन्न उपयोग हो सकता है।
- हम हस्ताक्षर प्राप्त करने के बाद userOp.initCode और userOp.callData को बदलकर नियमों का उल्लंघन और बायपास देख सकते हैं। यह पेमास्टर के मूल टोकन को गैस रहित एनएफटी बनाने के अलावा अन्य उद्देश्यों के लिए उपयोग करने की अनुमति देगा।
निष्कर्ष
निरंतर प्रगति और विकास के साथ, हम कई अद्भुत चीजें देखेंगे, और ईआरसी 4337 उनमें से एक है। जबकि सुरक्षा को विकसित करना और आगे बढ़ाना एक ऐसी चीज़ है जिससे हम कभी समझौता नहीं कर सकते। यह जानना आश्चर्यजनक है कि मानक में कमजोरियाँ कितनी जल्दी पाई गईं, और इसे सुरक्षित बनाने के लिए निरंतर अनुसंधान और विकास किया जा रहा है।
यह ध्यान रखना महत्वपूर्ण है कि Web3 में निर्माण करने वाले कुछ सबसे बड़े और सबसे प्रसिद्ध संगठन भी सुरक्षा-संबंधी गलतियाँ कर सकते हैं, और निश्चित रूप से अन्य प्रोटोकॉल भी ऐसा करते हैं। में लगातार बढ़ोतरी हो रही है वेब3 घटनाएँ पिछले कुछ वर्षों में यह स्पष्ट है।
आपको, आपके उपयोगकर्ताओं और आपके प्रोटोकॉल को ऐसे सुरक्षा खतरों से बचाने के लिए वन-स्टॉप समाधान का ऑडिट किया जा रहा है। हम क्विलऑडिट्स, स्मार्ट कॉन्ट्रैक्ट ऑडिटिंग और ब्लॉकचेन सुरक्षा में शीर्ष सेवा प्रदाताओं में से एक हैं, अधिक जानने और अपने प्रोजेक्ट को सुरक्षित करने के लिए हमारी वेबसाइट पर जाएँ। और ऐसे और अधिक जानकारीपूर्ण ब्लॉगों का आनंद लेने के लिए हमारे साथ बने रहें
34 दृश्य
- एसईओ संचालित सामग्री और पीआर वितरण। आज ही प्रवर्धित हो जाओ।
- प्लेटोब्लॉकचैन। Web3 मेटावर्स इंटेलिजेंस। ज्ञान प्रवर्धित। यहां पहुंचें।
- मिंटिंग द फ्यूचर डब्ल्यू एड्रिएन एशले। यहां पहुंचें।
- स्रोत: https://blog.quillhash.com/2023/04/24/understanding-erc-4337-user-operation-packing-vulnerability/
- :है
- :नहीं
- 20
- 2023
- a
- About
- पहुँच
- लेखा
- एकाउंट एब्स्ट्रैक्शन
- अकौन्टस(लेखा)
- के पार
- इसके अलावा
- उन्नति
- बाद
- सब
- भी
- बदल
- an
- और
- अन्य
- हैं
- तर्क
- तर्क
- AS
- विधानसभा
- At
- प्रयास
- आडिट
- लेखा परीक्षा
- आधारित
- BE
- क्योंकि
- बन
- जा रहा है
- BEST
- के बीच
- सबसे बड़ा
- blockchain
- ब्लॉकचेन सुरक्षा
- ब्लॉग
- भंग
- इमारत
- लेकिन
- by
- बुलाया
- कर सकते हैं
- नही सकता
- कब्जा
- कारण
- का कारण बनता है
- श्रृंखला
- परिवर्तन
- बदलना
- कोड
- संयोजन
- कैसे
- समझौता
- चिंताओं
- भ्रमित
- निर्माण
- अंतर्वस्तु
- निरंतर
- अनुबंध
- ठेके
- सुविधा
- सका
- आवरण
- बनाना
- तिथि
- परिभाषित
- निर्भर करता है
- तैनात
- वर्णन
- बनाया गया
- विकासशील
- विकास
- अंतर
- विभिन्न
- चर्चा करना
- विचलन
- do
- गतिशील
- शीघ्र
- प्राथमिक अवस्था
- प्रभाव
- तत्व
- का आनंद
- पूरी तरह से
- ईआरसी-4337
- आदि
- ethereum
- एथेरियम मेननेट
- और भी
- प्रत्येक
- उदाहरण
- अपवर्जित
- अपेक्षित
- अनुभव
- का पता लगाने
- खोजकर्ता
- आंख
- अभिनंदन करना
- प्रसिद्ध
- विशेषताएं
- कुछ
- खेत
- फ़ील्ड
- खोज
- प्रथम
- के लिए
- प्रारूप
- पाया
- से
- पूरी तरह से
- समारोह
- कार्यक्षमताओं
- कामकाज
- सामान्य जानकारी
- मिल
- मिल रहा
- दी
- Go
- जा
- हो जाता
- कठिन
- हैश
- हैशिंग
- है
- कैसे
- HTTPS
- प्रभाव
- Impacts
- कार्यान्वयन
- कार्यान्वयन
- महत्वपूर्ण
- in
- शामिल
- शामिल
- सहित
- समावेश
- व्यक्तिगत रूप से
- जानकारीपूर्ण
- एकीकरण
- इरादा
- जानबूझ कर
- में
- परिचय
- मुद्दा
- मुद्दों
- IT
- केवल
- Instagram पर
- जानने वाला
- बड़ा
- पिछली बार
- ताज़ा
- नेतृत्व
- जानें
- पसंद
- सीमा
- सीमाओं
- सीमित
- देखिए
- बनाया गया
- mainnet
- बनाना
- बनाता है
- बहुत
- मार्च
- अधिकतम-चौड़ाई
- मई..
- साधन
- याद
- तरीका
- तरीकों
- हो सकता है
- मिंटिंग
- छेड़छाड़
- छूट जाए
- गलतियां
- संशोधित
- निगरानी
- अधिक
- अधिकांश
- विभिन्न
- देशी
- मूल निवासी टोकन
- नेटवर्क
- नया
- NFT
- अभी
- of
- on
- ONE
- ऑनलाइन
- ऑनलाइन खरीदारी
- OP
- आपरेशन
- परिचालन
- संचालन
- or
- आदेश
- संगठनों
- अन्य
- अन्य प्रोटोकॉल
- हमारी
- के ऊपर
- कुल
- अपना
- पैक
- प्राचल
- विशेष रूप से
- भागों
- पारित कर दिया
- घटना
- प्लेटो
- प्लेटो डेटा इंटेलिजेंस
- प्लेटोडाटा
- संभव
- संभावित
- तैयार करना
- निजी
- निजी कुंजी
- एस्ट्रो मॉल
- परियोजना
- गुण
- रक्षा करना
- प्रोटोकॉल
- प्रोटोकॉल
- प्रदान करना
- बशर्ते
- प्रदाताओं
- प्रयोजनों
- जल्दी से
- क्विलश
- उठाता
- कारण
- प्राप्त
- के बारे में
- क्षेत्रों
- नियमित
- रिहा
- रिलायंस
- प्रतिनिधित्व
- प्रतिनिधित्व
- प्रतिनिधित्व
- अनुसंधान
- अनुसंधान और विकास
- परिणाम
- वापसी
- वृद्धि
- जोखिम
- नियम
- वही
- योजना
- अनुभाग
- सुरक्षित
- सिक्योर्ड
- सुरक्षा
- सुरक्षा को खतरा
- देखना
- खंड
- सेवा
- सेवा प्रदाता
- सेवाएँ
- की स्थापना
- कई
- खरीदारी
- हस्ताक्षर
- हस्ताक्षर
- पर हस्ताक्षर
- एक साथ
- एक
- स्मार्ट
- स्मार्ट अनुबंध
- स्मार्ट अनुबंध
- So
- SOL
- समाधान
- कुछ
- कुछ
- अंतरिक्ष
- प्रायोजन
- ट्रेनिंग
- मानक
- मानकों
- प्रारंभ
- रहना
- फिर भी
- प्रस्तुत
- सफल
- ऐसा
- समर्थन करता है
- निश्चित रूप से
- लेता है
- से
- कि
- RSI
- लेकिन हाल ही
- उन
- वहाँ।
- इन
- वे
- चीज़ें
- इसका
- उन
- धमकी
- पहर
- सेवा मेरे
- टोकन
- टोकन
- भी
- ऊपर का
- चलाना
- लेन-देन संबंधी
- लेनदेन
- <strong>उद्देश्य</strong>
- प्रकार
- समझ
- अवांछित
- अपडेट
- अपडेट
- उन्नयन
- उपयोग
- प्रयुक्त
- उपयोगकर्ता
- उपयोगकर्ता अनुभव
- उपयोगकर्ताओं
- सत्यापित करें
- मूल्य
- बहुत
- देखें
- भेंट
- कमजोरियों
- भेद्यता
- चपेट में
- बटुआ
- जेब
- था
- we
- Web3
- वेबसाइट
- कुंआ
- प्रसिद्ध
- थे
- क्या
- कब
- कौन कौन से
- जब
- क्यों
- मर्जी
- साथ में
- गवाह
- विश्व
- गलत
- साल
- आप
- आपका
- जेफिरनेट