मैं एक बड़े पैकेज को कैसे सत्यापित कर सकता हूं कि git रेपो सुरक्षित है?


9

मैं विशेष रूप से emacs पतवार देख रहा हूँ , जिसमें निम्नलिखित गुण हैं:

  • इसके हजारों आवागमन हैं
  • यह काफी हद तक एक उपयोगकर्ता द्वारा बनाए रखा है
  • अनुरक्षक के पास कोई अन्य प्रोफाइल (सोशल मीडिया आदि) नहीं है, मैं कुछ खोजों पर पाया गया था
  • इसे आज भी सक्रिय रूप से बनाए रखा गया है

चूंकि मैं अपने पाठ संपादक में उपयोग करने के लिए अपने कंप्यूटर पर मनमाना कोड स्थापित करने वाला हूं, इसलिए मैं यह सत्यापित करना चाहता था कि क्या यह किसी भी समीक्षा प्रक्रिया से गुजर चुका है। मैं "अच्छी तरह से यह खुला स्रोत है" कहना चाहता हूं, लेकिन मैं वास्तव में सभी कोड को ऑडिट करने की क्षमता से बहुत दूर हूं। मैं यह मानना ​​चाहूंगा कि समुदाय के अन्य लोगों ने इसकी समीक्षा की है, लेकिन एक यह संभवत: गलत है, और दो में मिनट-टू-मिनट कमिट हैं। क्या अन्य रणनीतियाँ मुझे याद आ रही हैं?

रिकॉर्ड के लिए वेक्टर सरल है: "ओपन सोर्स" यह सब बहुत ज्यादा मायने नहीं रखता है अगर योगदानकर्ता एक थकाऊ खाते के तहत काम कर रहा है, या यदि कोई समीक्षा प्रक्रिया नहीं है।


6
" सत्यापित करें " एक बड़ा शब्द है। शब्द के नियमित अर्थ में, मुझे लगता है कि जवाब है, "आप नहीं (आप नहीं कर सकते)।" आप एक पुस्तकालय के लिए विकास गतिविधि का पालन कर सकते हैं, और आप डिजिटल हस्ताक्षर और इस तरह की जांच कर सकते हैं, लेकिन ऐसा कुछ भी नहीं है जो निश्चित और निश्चित है, मुझे विश्वास है।
ड्रू

3
अच्छा प्रश्न। FWIW, कोड जो Emacs के साथ आता है, उसकी समीक्षा की जाती है (emacs-diffs mailing-list के माध्यम से), लेकिन अगर कुछ योगदानकर्ता एक सुरक्षा छेद जोड़ने के लिए थे, तो मुझे यकीन है कि वह ऐसा करने में सक्षम होगा, जिस पर ध्यान दिए बिना। बेशक, मुझे आश्चर्य होगा कि अगर एमाक्स में पहले से ही बहुत बड़े आकस्मिक सुरक्षा छेद नहीं हैं, तो मुझे यकीन नहीं है कि यह कितनी बड़ी समस्या हो सकती है। इसलिए मुझे लगता है कि अधिक पुन: आश्वासन देने में सक्षम होने के लिए, किसी व्यक्ति को विशिष्ट सरल खतरों पर ध्यान देने की आवश्यकता है (जैसे कि यह जांचना आसान होना चाहिए कि क्या कोड किसी प्रकार का गैर-छिपी निगरानी करता है)।
स्टीफन


1
@ सत्तेफान, मैं केवल एक स्पॉट चेक के बारे में सोच रहा था। मेरे दृष्टिकोण से, mapatoms"खतरनाक" समूह को एक साथ रखा जा सकता है start-process, evalऔर funcall। बेशक कुछ गलत सकारात्मक होंगे, लेकिन अगर पैकेज उन कार्यों में से किसी का भी उपयोग नहीं करता है, तो इसे बड़ी निश्चितता के साथ हानिरहित के रूप में चिह्नित किया जा सकता है।
abo-abo

1
आप जोड़ने के लिए नई जरूरत है make-process, साथ ही call-process, dbus-<foo>, make-network-stream, और फिर vc-do-command, vc-git-command, .... और अगर आप डाल evalऔर funcall"खतरनाक" श्रेणी में है, तो सबसे / सभी संकुल खतरनाक हैं।
स्टीफन

जवाबों:


7

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

कुछ चीजें हैं जो आपको सुरक्षित महसूस करा सकती हैं:

  • लोकप्रिय पैकेज के लिए छड़ी

हालांकि लोकप्रिय पैकेज स्वचालित रूप से इस तथ्य की अधिक समीक्षा नहीं करते हैं कि उनके पास अधिक उपयोगकर्ता हैं, इसका मतलब यह है कि आपके बढ़ने से पहले दुर्भावनापूर्ण व्यवहार की संभावना का पता लगाया जाता है।

  • कोड मेट्रिक्स को देखें

जीथब पर आप परियोजनाओं के योगदान के इतिहास का एक अच्छा दृश्य प्राप्त कर सकते हैं । भले ही सिद्धांत लेखक लेखकों की एक विस्तृत श्रृंखला वाले अधिकांश कमिट करता है, यह दर्शाता है कि कोड की स्थिरता और प्रभावशीलता में सक्रिय रुचि वाले अन्य लोग हैं।

  • GNU ELPA और MELPA को रोकें HEADs (MELPA) पर नज़र रखने वाले रिपॉजिटरी में स्थिर या संयुक्त राष्ट्र के अधीनस्थ सबमिशन (मुरब्बा) की अनुमति देना

जबकि रक्तस्राव के किनारे रहने वाले लोगों के लिए एक निश्चित अपील है जो नवीनतम चमकदार विशेषताओं को चाहते हैं इसका मतलब है कि आप अपने वातावरण में नवीनतम प्रतिबद्ध को स्वीकार करने वाले पहले व्यक्ति हो सकते हैं। दुर्भावनापूर्ण न होने पर भी आपको प्रवाह की स्थिति में एक पैकेज मिल सकता है जबकि "आधिकारिक" रिलीज़ में कम से कम किसी तरह की शाप की समीक्षा होगी। उदाहरण के लिए जीएनयू ईएलपीए पैकेज केवल उन ईमैक-डेवेल उपयोगकर्ताओं द्वारा प्रतिबद्ध अधिकारों के साथ प्रतिबद्ध होंगे।

अंततः मुझे यकीन है कि कुछ बिंदु पर पैकेज सिस्टम के माध्यम से एक सुरक्षा उल्लंघन होगा, भले ही यह केवल अवधारणा प्रयोग का प्रमाण हो। यह वह बिंदु होगा जो आपको अपने नियमित बैकअप पर निर्भर करना पड़ सकता है।


1
जब यह "ट्रस्ट" आता है तो मुरब्बा एक खराब संग्रह है। यह किसी को भी किसी भी नाम से किसी भी पैकेज को शून्य सत्यापन या समीक्षा के साथ अपलोड करने की अनुमति देता है। और यह बिल्कुल ठीक नहीं है (बस खुले मुद्दों की संख्या को देखो)।
चंद्रग्रहण

@lunaryorn: अच्छी बात है, मैं उत्तर में संशोधन करूँगा।
stsquad 28’15

@lunaryorn MELPA में एल्मर्मलड रिपॉजिटरी की तुलना में अधिक खुले मुद्दे हैं, इसलिए मुझे संदेह है कि यह एक प्रयोग करने योग्य मीट्रिक है।
वामासा

@stsquad केवल वही चीज जो MELPA Stable आपको देती है, उन चीजों की रिलीज़ टैग की जाती है, जो MELPA वैसे भी समाप्त हो जाती हैं, इसलिए मैं यह नहीं देखता कि Marmalade का उपयोग करने की तुलना में यह कितना सुरक्षित है।
वामासा

1
@wasamasa क्षमा करें, मेरी टिप्पणी खराब तरीके से प्रकाशित की गई थी। संख्या निश्चित रूप से बहुत कुछ नहीं बताती है, लेकिन खुले मुद्दे बता रहे हैं : नए मुद्दों पर शून्य प्रतिक्रिया है, कोई टिप्पणी नहीं, यहां तक ​​कि लेबल या असाइनमेंट भी नहीं। मुरब्बा प्रभावी रूप से मृत है।
चंद्रग्रहण
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.