स्टॅक ओव्हरफ्लोवरील सर्वाधिक वापरल्या जावा कोड स्निपेटमध्ये एक त्रुटी आहे

जावा

मध्ये प्रकाशित केलेला एक अभ्यास ऑक्टोबर 2018 एम्पिरिकल सॉफ्टवेयर अभियांत्रिकी मासिकात शिक्षणशास्त्रज्ञ सेबॅस्टियन बाल्टेस आणि स्टीफन डायहल यांनी केले मध्ये उघडकीस आले की कोड स्निपेट प्रदान केला आहे कडून एका प्रश्नाचे उत्तर अँड्रियास लुंडब्लाड यांनी सप्टेंबर २०१० मध्ये स्टॅक ओव्हरफ्लो, पलान्टीर येथे जावा विकसक, हे समुदाय व्यासपीठावर सर्वाधिक प्रमाणात वापरले जावा कोड स्निपेट आहे.

तथापि, गेल्या आठवड्यात एका पोस्टमध्ये, लन्डब्लाडने स्पष्ट केले की कोड सदोष आहे आणि तो चुकीच्या पद्धतीने बाइटची संख्या रूपांतरित करीत आहे मानवी वाचनीय स्वरूपात. कोडमधील प्रश्नांमध्ये एक हजाराहून अधिक शिफारसी जमा झाल्या आहेत आणि बर्‍याच प्रकल्पांमध्ये याचा समावेश करण्यात आला आहे आणि जवळजवळ 7 हजार वेळा गीटहबच्या भांडारांमध्ये आहे.

हे लक्षात घेण्यासारखे आहे वापरकर्त्यांकडून त्रुटी आढळली नाही हा कोड त्यांच्या प्रकल्पात वापरला, परंतु टीपच्या मूळ लेखकाद्वारे.

विचारात घेतलेल्या कोडने बाइटचे आकार वाचनीय स्वरूपात रूपांतरित केले, उदाहरणार्थ 110592 मध्ये रूपांतरित केले "110.6 केबी" किंवा "108.0 केबी". कोड पूर्वी प्रस्तावित सल्ल्यांच्या रूपे म्हणून प्रस्तावित करण्यात आला होता, लॉगरिदम वापरुन ऑप्टिमाइझ केला गेला, ज्यात एका लूपमध्ये प्रारंभिक मूल्य विभाजित करून मूल्य निर्धारित केले जाते «10 18, 10 15, 10 12, 10 19, 10 6, 10 3 आणि 10 0 , बाइट मधील मूळ मूल्यापेक्षा विभक्त असल्यास.

ऑप्टिमाइझ केलेल्या आवृत्तीत चुकीच्या मोजणीमुळे (दीर्घ मूल्याचे ओव्हरफ्लो), खूप मोठ्या संख्येने प्रक्रिया करण्याचा परिणाम (एक्झाबाइट्स) वास्तविकतेशी संबंधित नाहीत.

लुंडब्लाडने स्पष्ट केले की कोडमध्ये क्षुल्लक रूपांतरण त्रुटी आहे ज्याचा परिणाम फक्त थोडा चुकीचा फाइल आकार अंदाज आला. ते म्हणाले की, असा अंदाज आहे की ते त्यापेक्षा खूपच वाईट झाले असते.

कोडमध्ये सुरक्षा असुरक्षा असू शकते, उदाहरणार्थ. जर तसे झाले असेल तर वापरकर्त्यांना असुरक्षिततेच्या संपर्कात आणून सर्व असुरक्षित अनुप्रयोगांची दुरुस्ती करण्यास महिने किंवा वर्षे लागली असती.

सल्ल्याच्या लेखकाने देखील समस्येकडे लक्ष वेधण्याचा प्रयत्न केला स्त्रोताचा संदर्भ न देता आणि परवाना निर्दिष्ट केल्याशिवाय उदाहरणे वापरणे.

“एकाधिक मानवी कोडर्ससह सहयोगी सत्रांमध्ये, आम्ही सीडब्ल्यूई (सामान्य अशक्तपणा गणना) सूचनांनुसार सुरक्षा असुरक्षांसाठी प्रत्येक संहिताचे स्वतःच मूल्यांकन केले.

कमीतकमी एका गिटहब-होस्ट केलेल्या प्रकल्पात वापरल्या गेलेल्या 72,483 स्कॅन कोड स्निपेटपैकी, आम्हाला एकूण 69 असुरक्षित कोड स्निपेट्स 29 प्रकारांमध्ये वर्गीकृत आढळली. अभ्यास केलेल्या अनेक कोड स्निपेट्स अद्याप निश्चित नाहीत, "संशोधकांनी त्यांच्या अहवालात म्हटले आहे.

69 असुरक्षित कोड स्निपेट्स स्टॅक ओव्हरफ्लो वर आढळले एकूण 2859 गीटहब प्रकल्पांमध्ये पुनर्वापर केला. स्टॅक ओव्हरफ्लोवरील सामायिक कोड स्निपेटची गुणवत्ता सुधारण्यासाठी, त्यांनी ब्राउझर विस्तार विकसित केला आहे जो स्टॅक ओव्हरफ्लो वापरकर्त्यांना प्लॅटफॉर्मवर डाउनलोड करताना स्निपेट्समधील असुरक्षा शोधण्याची परवानगी देतो.

तथापि, संशोधकांच्या सावधानतेनंतरही विकासक विश्लेषण न करता स्टॅक ओव्हरफ्लो कोड त्यांच्या प्रकल्पात कॉपी करतात.

अश्कना सामी, आयटीचे सहयोगी प्राध्यापक, अभियांत्रिकी व माहिती तंत्रज्ञान इराणच्या शिराझ विद्यापीठात ते म्हणाले

“स्टॅक ओव्हरफ्लो वरून गिटहबमध्ये सदोष कोड कसे स्थलांतरित होते हे तपासण्याचा हा प्रयत्न होता. मुळात आम्ही काय दाखवण्याचा प्रयत्न करीत आहोत ते म्हणजे स्टॅक ओव्हरफ्लो कोड याचा बारकाईने न पाहता उपयोग करण्यामुळे अनुप्रयोगातील असुरक्षा उद्भवू शकतात, ”सामी म्हणाली. अभ्यासामध्ये 2017 च्या शैक्षणिक लेखाचा संदर्भ देखील आहे.

या लेखानुसार, स्टॅक ओव्हरफ्लोवर पोस्ट केलेली 1161 असुरक्षित कोड स्निपेट्स Google Play वर उपलब्ध असलेल्या 1.3 दशलक्ष Android अॅप्समध्ये वापरली गेली.

मागील अभ्यासाव्यतिरिक्त, 46% विकसक ज्यांनी लेखक निर्दिष्ट केल्याशिवाय स्टॅकओव्हरफ्लो कोड वापरला, 75% लोकांना हे माहित नव्हते की कोड सीसी-एसए अंतर्गत परवानाकृत आहे आणि 67% लोकांना माहित नाही की यामुळे आवश्यकतेची अंमलबजावणी होते. विशेषता आहे.

इतर अभ्यासाच्या माहितीनुसार, नमुना कोड वापरणे केवळ कोडमधील बगच्या जोखमीशीच नव्हे तर असुरक्षा देखील संबंधित आहे.

उदाहरणार्थ, स्टॅकओव्हरफ्लोवरील 72483 सी ++ कोड नमुन्यांचे विश्लेषण केल्यावर, संशोधकांनी सर्वात लोकप्रिय शिफारसींच्या यादीमध्ये समाविष्ट केलेल्या 69 नमुन्यांमध्ये (जे 0.09% आहे) गंभीर असुरक्षितता ओळखली.

स्त्रोत: https://programming.guide


आपली टिप्पणी द्या

आपला ई-मेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित केले आहेत *

*

*

  1. डेटा जबाबदार: मिगुएल Áन्गल गॅटन
  2. डेटाचा उद्देशः नियंत्रण स्पॅम, टिप्पणी व्यवस्थापन.
  3. कायदे: आपली संमती
  4. डेटा संप्रेषण: कायदेशीर बंधन वगळता डेटा तृतीय पक्षास कळविला जाणार नाही.
  5. डेटा संग्रहण: ओकेन्टस नेटवर्क (EU) द्वारा होस्ट केलेला डेटाबेस
  6. अधिकारः कोणत्याही वेळी आपण आपली माहिती मर्यादित, पुनर्प्राप्त आणि हटवू शकता.