Zeitgeist सभी कोड ऑडिट को पूरा कर चुका हैं।

Anityamkalita
Zeitgeist Seer Program
5 min readAug 18, 2022

हमने हाल ही में अपने सॉफ़्टवेयर पर कोड ऑडिट के दो दौर पूरे किए हैं, और यहां चैनट्रूपर्स टीम की सबसे हालिया रिपोर्ट पर एक विस्तृत सारांश प्रस्तुत कर सकते हैं।

हमने हाल ही में अपने सॉफ़्टवेयर पर कोड ऑडिट के दो दौर पूरे किए हैं, और यहां चैनट्रूपर्स टीम की सबसे हालिया रिपोर्ट पर एक विस्तृत सारांश प्रस्तुत कर रहे हैं।

Zeitgeist में परदे के पीछे बहुत काम चल रहा है क्योंकि हम अपने आवेदन के लाइव होने की तैयारी कर रहे हैं। एक कुशल और उच्च गुणवत्ता वाले पूर्वानुमान बाजार अनुभव के लिए, हमें यह सुनिश्चित करने की आवश्यकता है कि हमारे सॉफ़्टवेयर के साथ कोई बड़ी बग या समस्या न हो, और इस प्रकार सहायता के लिए कुछ प्रमुख कोड लेखा परीक्षकों के उपयोग को नियोजित किया।

जबकि हम सबस्ट्रेट ब्लॉकचैन डेवलपर्स के एक अन्य समूह के साथ जुड़े हुए हैं, जिनके पास पोलकाडॉट परियोजनाओं के साथ व्यापक अनुभव है, हमने चैनट्रूपर्स की सेवाओं का भी उपयोग किया, जो खुद को पारिस्थितिकी तंत्र में सबसे प्रमुख ब्लॉकचैन सुरक्षा विशेषज्ञों में से एक के रूप में गर्व करते हैं। चैनट्रूपर्स ने अपनी विस्तृत रिपोर्ट को सार्वजनिक करने के लिए काफी दयालु थे, और इसलिए उसके प्रकाश में, और पारदर्शिता के लिए, हम आपके साथ कुछ महत्वपूर्ण निष्कर्ष साझा करना चाहते हैं जो उन्होंने अपने ऑडिट के दौरान किए थे (यह ध्यान में रखते हुए कि यह विशिष्ट रिपोर्ट Zeitgeist सॉफ़्टवेयर पर पूर्ण किए गए दो कोड ऑडिट में से एक है)।

चैंट्रूपर्स ने अपने द्वारा खोजे गए मुद्दों को चार श्रेणियों में विभाजित किया:

भारी जोखिम

मध्यम जोखिम

कम जोखिम

सूचना

कंपनी ने Zeitgeist कोड के साथ कुल चौदह मुद्दों का खुलासा किया जो कार्रवाई करने लायक थे, जिनमें से चार उच्च जोखिम श्रेणी में गिर गए, तीन को मध्यम जोखिम के रूप में वर्गीकृत किया जाएगा, चार को “कम जोखिम” माना जाएगा, और अंतिम तीन मुद्दों को “सूचनात्मक” माना गया।

उच्च जोखिम वाले मुद्दे

उच्च जोखिम वाले मुद्दे मुख्य रूप से बिजनेस लॉजिक और डेटा वैलिडेशन से संबंधित थे, जिसमें बिजनेस लॉजिक मुद्दों ने दुर्भावनापूर्ण अभिनेताओं को हमारे प्रोटोकॉल का फायदा उठाने की अनुमति दी होगी, जिससे सेवा से इनकार किया जा सकता है। उच्च जोखिम डेटा सत्यापन मुद्दे बिना अनुमति वाले बाजारों के संबंध में थे, जो दुर्भावनापूर्ण अभिनेताओं को “बाजार प्राधिकरण” भूमिकाओं का दुरुपयोग करने और अपनी पसंद के बाजारों को जबरदस्ती अस्वीकार करने की अनुमति देते थे, जबकि एक अन्य डेटा सत्यापन मुद्दे में पाया गया कि स्पष्ट बाजार बनाने के लिए सार्वजनिक रूप से उपलब्ध प्रेषण कॉल लेन-देन के रूप में चिह्नित नहीं किया गया था (इससे त्रुटि की स्थिति में उपयोगकर्ता के धन को आरक्षित रखा जा सकता था)।

मध्यम जोखिम मुद्दे

मध्यम जोखिम भेद्यताएं डेटा सत्यापन और व्यावसायिक तर्क से भी संबंधित थीं, इस बार उनमें से एक डेटा सत्यापन और दो व्यावसायिक तर्क से संबंधित हैं। एक सब्सिडी पूल था जिसमें न्यूनतम राशि की आवश्यकता नहीं थी, जो हमलावरों को उपलब्ध पूल फंड का दुरुपयोग करने की अनुमति देता। मध्यम-जोखिम वाले व्यावसायिक तर्क मुद्दों के संदर्भ में, एक ऐसा मुद्दा पाया गया जिससे “अस्वीकार बाजार” फ़ंक्शन बाजार की स्थिति की अनदेखी कर रहा था (इस प्रकार संभावित रूप से सफल बाजारों को अनावश्यक रूप से आवेदन से हटा दिया गया)। और तीसरा मध्यम जोखिम मुद्दा सीधे इस “अस्वीकार बाजार” मुद्दे से संबंधित था, जिससे संबंधित परिणाम बाजार के शेयरों को अस्वीकार कार्यक्षमता द्वारा नियंत्रित नहीं किया जाएगा, जिसका अर्थ है कि संबंधित परिणाम परिसंपत्तियों के साथ एक अस्वीकृत बाजार की स्थिति में, आरक्षित धन होगा रिहा नहीं किया जाए।

कम जोखिम वाले मुद्दे

कम जोखिम वाले मुद्दों में से तीन व्यवस्थापक कार्यों से संबंधित थे, जबकि एक श्रेणीबद्ध बाजारों में परिणाम बाजार हिस्सेदारी से संबंधित था। पहले व्यवस्थापक फ़ंक्शन ने पैलेट को ईवेंट उत्सर्जित करने की अनुमति दी, जब वह बाहरी संस्थाओं को रनटाइम में परिवर्तन या स्थितियों के बारे में बाहरी संस्थाओं को सूचित करना चाहता है, लेकिन विशिष्ट प्रशासनिक कार्यक्षमता से संबंधित घटनाओं को उत्सर्जित करने की सिफारिश की गई थी। दूसरा कम जोखिम वाला मुद्दा “admin_set_pool_as_stale” और “set_pool_as_stale” कार्यात्मकताओं में प्रदान किए गए बाज़ार प्रकारों को देखा, लेकिन उपयोगकर्ता द्वारा प्रदत्त मापदंडों पर बाद में सुरक्षा निर्णय लेने से बचने के लिए इस जानकारी को पूल इकाई में संग्रहीत किया जा सकता है।

तीसरे कम जोखिम वाले मुद्दे ने बाजार के परिणाम शेयरों का एक पूरा सेट खरीदने के लिए सार्वजनिक रूप से उपलब्ध प्रेषण कार्यक्षमता में आवश्यक न्यूनतम राशि की पहचान नहीं की, जिससे उपयोगकर्ता शून्य राशि के लिए अनुरोध जारी कर सकें। चौथे कम जोखिम वाले मुद्दे में पाया गया कि कुछ व्यवस्थापक कार्य “जमा_इवेंट” का उपयोग नहीं करते हैं, साथ ही कुछ संबंधित घटनाएं भी गायब हैं।

सूचनात्मक मुद्दे

सूचनात्मक मुद्दे मुख्य रूप से Zeitgeist के दस्तावेज़ीकरण से संबंधित हैं, और डेवलपर्स के लिए कमजोरियों को ढूंढना और ठीक करना कठिन बना सकते हैं। चैनट्रूपर्स को निम्नलिखित दस्तावेज़/सूचना संबंधी समस्याएं मिलीं जिन्हें ठीक करने की आवश्यकता है:

पहचान की गई पहली सूचनात्मक समस्या यह थी कि “इम्प्ला” कोड ब्लॉक से आइटम से जुड़े एक सब्सट्रेट डिस्पैचेबल फ़ंक्शन को जांच किए गए पैलेट के दस्तावेज़ीकरण में शामिल नहीं किया गया था। दूसरा यह था कि मार्केट पीरियड्स के “रेंज.एंड” मान के लिए कोई ऊपरी सीमा परिभाषित नहीं की गई थी, और तीसरे सूचनात्मक मुद्दे में पाया गया कि “admin_move_market_to_closed” उन मामलों को हैंडल नहीं करता है जहां “current_block” या “T::MarketCommons::now” ()” “रेंज.स्टार्ट” मान से छोटा है।

निष्कर्ष

उपरोक्त सभी चौदह मुद्दों की विधिवत विस्तृत विवरण में इंजीनियरिंग टीम को यहां Zeitgeist में रिपोर्ट किया गया था, और हमें तुरंत उन्हें संबोधित करने के लिए काम करना पड़ा। रिपोर्ट के दो सप्ताह के भीतर, हमने प्रत्येक मुद्दे का परीक्षण करने के लिए चैंट्रूपर्स को बुलाया और सुनिश्चित किया कि उन्हें पर्याप्त रूप से संभाला गया था। हमें यह रिपोर्ट करते हुए खुशी हो रही है कि चैनट्रूपर्स ने हमारे सुधारों की पूरी तरह से जांच की, और हम उन्हें कैसे पूरा करते हैं, इससे प्रसन्न हैं।

इस प्रकार चैनट्रूपर्स टीम ने कुछ सप्ताह बाद ऑडिट को बंद कर दिया, और इस व्यापक रिपोर्ट को संकलित किया जिसे हम यहां देखने के लिए उपलब्ध कराकर खुश हैं।

हम अपने सॉफ्टवेयर की जांच में चैंट्रूपर्स के काम के लिए आभारी हैं, और उनके पेशेवर और संचारी रवैये की सराहना करते हैं। हमने लगातार कहा है कि हमारी महत्वाकांक्षा उपलब्ध सर्वोत्तम प्रेडिक्शन मार्केट सॉफ्टवेयर का निर्माण करना है, और इस तरह के कोड ऑडिट इसे प्राप्त करने के लिए अनिवार्य हैं। हमें विश्वास है कि हमारे पास इन ऑडिट में शामिल चैनट्रूपर्स और अन्य लोगों के काम के लिए एक बेहतर प्रोटोकॉल है, और हम दुनिया के लिए अपने उन्नत सॉफ्टवेयर को जारी करने के लिए इंतजार नहीं कर सकते।

--

--