ऑडिटर का दावा है कि प्लैटिपस हमले ने कोड के गलत क्रम का फायदा उठाया

अस्वीकरण: लेख को यह दर्शाने के लिए अद्यतन किया गया है कि ओम्निशिया ने MasterPlatypusV4 अनुबंध के एक संस्करण का ऑडिट नहीं किया। इसके बजाय, कंपनी ने 1 नवंबर से 21 दिसंबर, 5 तक MasterPlatypusV2021 अनुबंध के एक संस्करण का ऑडिट किया।

8 मिलियन डॉलर का प्लैटिपस फ्लैश लोन हमला उस कोड के कारण संभव हुआ जो गलत क्रम में था, अनुसार प्लैटिपस ऑडिटर ओम्निशिया की पोस्ट-मॉर्टम रिपोर्ट के लिए। ऑडिटिंग कंपनी का दावा है कि समस्याग्रस्त कोड उनके द्वारा ऑडिट किए गए संस्करण में मौजूद नहीं था।

रिपोर्ट के अनुसार, प्लैटिपस मास्टरप्लैटिपसवी4 अनुबंध में "इसके आपातकालीन निकासी तंत्र में एक घातक गलत धारणा थी," जिसने इसे "हिस्सेदारी की स्थिति से जुड़े एलपी टोकन को अपडेट करने से पहले इसकी सॉल्वेंसी जांच" करने के लिए मजबूर किया।

रिपोर्ट में इस बात पर जोर दिया गया है कि इमरजेंसी विथड्रॉ फंक्शन के कोड में हमले को रोकने के लिए सभी आवश्यक तत्व थे, लेकिन इन तत्वों को केवल गलत क्रम में लिखा गया था, जैसा कि ओम्निशिया ने समझाया:

"MasterPlatypusV4::इमरजेंसीविथड्रॉ स्टेटमेंट्स को फिर से ऑर्डर करके और उपयोगकर्ता की राशि प्रविष्टि 0 पर सेट होने के बाद सॉल्वेंसी चेक करने से समस्या को रोका जा सकता था, जो हमले को होने से रोक देता।"

Omniscia ने 1 नवंबर से 21 दिसंबर, 5 तक MasterPlatypusV2021 अनुबंध के एक संस्करण का ऑडिट किया। हालाँकि, इस संस्करण में "बाहरी प्लैटिपसट्रेजर सिस्टम के साथ कोई एकीकरण बिंदु नहीं था" और इसलिए इसमें कोड की गलत पंक्तियाँ शामिल नहीं थीं।

यह नोट करना महत्वपूर्ण है कि जिस कोड का शोषण किया गया था वह ओम्निशिया के ऑडिट के समय मौजूद नहीं था। सर्वज्ञता के दृष्टिकोण का तात्पर्य है कि ऑडिट किए जाने के बाद डेवलपर्स ने किसी बिंदु पर अनुबंध का एक नया संस्करण तैनात किया होगा।

संबंधित: रेडियम ने हैक के विवरण की घोषणा की, पीड़ितों के लिए मुआवजे का प्रस्ताव किया

ऑडिटर का दावा है कि हिमस्खलन सी-चेन पते 0xc007f27b757a782c833c568f5851ae1dfe0e6ec7 पर अनुबंध कार्यान्वयन वह है जो था शोषित. इस अनुबंध की 582-584 पंक्तियाँ प्लैटिपसट्रेजर अनुबंध पर "isSolvent" नामक एक फ़ंक्शन को कॉल करती प्रतीत होती हैं, और 599-601 पंक्तियाँ उपयोगकर्ता की राशि, कारक और रिवार्डडेट को शून्य पर सेट करती प्रतीत होती हैं। हालाँकि, "isSolvent" फ़ंक्शन को पहले ही बुलाए जाने के बाद ये राशियाँ शून्य पर सेट हो जाती हैं।

प्लैटिपस टीम की पुष्टि की 16 फरवरी को कि हमलावर ने "[यूएसपी] सॉल्वेंसी चेक मैकेनिज्म में दोष" का फायदा उठाया, लेकिन टीम ने शुरू में और विवरण नहीं दिया। ऑडिटर की यह नई रिपोर्ट इस बात पर और प्रकाश डालती है कि कैसे हमलावर शोषण को पूरा करने में सक्षम हो सकता है।

प्लैटिपस टीम ने 16 फरवरी को घोषणा की कि हमला हुआ था. इसने हैकर से संपर्क करने और बग बाउंटी के बदले धन वापस पाने का प्रयास किया है। हमलावर फ्लैश्ड लोन का इस्तेमाल किया शोषण करने के लिए, जो कि उपयोग की जाने वाली रणनीति के समान है डीफ़्रॉस्ट वित्त शोषण 25 दिसंबर, 2022 को।