2009-06-04 9 views
12

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

उत्तर

16

बेशक वहाँ है। आप अपने कंप्यूटर पर सॉफ़्टवेयर इंस्टॉल कर रहे हैं जो स्क्रिप्ट/उपयोगकर्ता के विशेषाधिकारों के साथ चलता है जो इसे कॉल करता है। द्विआधारी पैकेजों की तुलना में शुद्ध रूबी में दुर्भावनापूर्ण कोड को देखना संभवतः संभव है। लेकिन अगर आपको लगता है कि स्रोत निरीक्षण दुर्भावनापूर्ण कोड को खोजने का एक गारंटीकृत तरीका है, तो under-handed C contest देखें।

यह कहा गया कि, यदि आप मैलवेयर लिखना चाहते हैं तो रूबी रत्न की तुलना में अधिक प्रभावी वितरण प्रणाली हैं। मैं आश्चर्य नहीं होगा अगर अस्तित्व में वास्तविक दुर्भावनापूर्ण जवाहरात की संख्या 0 है, और इस तरह है कि संभावना है कि यह एक दुर्भावनापूर्ण है वैसे ही 0 है ...

देखें: http://rubygems.org/read/chapter/14#page61

+0

लिंक के लिए धन्यवाद - > "मैं उन रत्नों पर भरोसा कैसे कर सकता हूं जो नेट से स्वचालित रूप से डाउनलोड होते हैं? वैसे ही आप अपने द्वारा इंस्टॉल किए गए सभी अन्य कोडों पर भरोसा कर सकते हैं। (आखिर में, आप नहीं कर सकते हैं।)" – Hola

+1

शायद जानबूझकर बहुत कम (या शून्य) हैं दुर्भावनापूर्ण रत्न, लेकिन बहुत सारे खराब लिखित रत्न हैं जिनमें सुरक्षा छेद हैं। रेल सुरक्षा ब्लॉग पर रूबी पढ़ें जहां महत्वपूर्ण RoR सुरक्षा घटकों में वास्तव में भयानक अंतर छेद नियमित रूप से पोस्ट किए जाते हैं। किसी भी जेम को जोड़ने से पहले दो बार सोचें और सुरक्षा कोड गुणवत्ता के लिए एक गेज प्राप्त करने के लिए हमेशा एक बार संक्षिप्त करें। –

+0

"खराब लिखित रत्न जिनमें सुरक्षा छेद हैं" - रत्न, अनुप्रयोग, ऑपरेटिंग सिस्टम ... –

3

जब भी आप किसी अज्ञात तर्क को किसी एप्लिकेशन में आयात करते हैं तो दुर्भावनापूर्ण कोड का जोखिम होता है। जोखिम केवल उतना गहरा होता है जितना डेटा उस एप्लिकेशन तक पहुंचता है। जावा एप्लेट्स कैसे sandboxed हैं की तरह।

आपके द्वारा भरोसा किए गए हस्ताक्षरित पैकेज प्राप्त करें, या स्रोत को देखें।

1

मैं ऊपर पोस्टर से असहमत कि अस्तित्व में दुर्भावनापूर्ण रत्न की संभावना 0 है। दुर्भावनापूर्ण रत्नों का उपयोग करने का हमेशा खतरा होता है। पागल हो जाओ, लेकिन अभी भी चीजें हो रही हैं।

+1

मुझे लगता है कि वह जो लिंक प्रदान करता है वह आपके बिंदु का बैक अप लेता है: http://rubygems.org/read/chapter/14#page61 – Hola

2

अगर मैं किसी दुर्भावनापूर्ण मणि की संभावना पर एक संभाल लेना चाहता था, तो मैं देखता हूं कि किसी भी भाषा में दुर्भावनापूर्ण पैकेजों का पता चला है (जैसे पायथन उदाहरण, या पर्ल का सीपीएएन), यह कितनी संभावना है कि किसी को भी ध्यान दिए बिना दुर्भावनापूर्ण पैकेज तैयार किया गया है, और क्या रूबी अन्य भाषाओं की तुलना में किसी भी बड़े जोखिम पर है।

मुझे लगता है कि मैं ट्रस्ट का वेब उत्पन्न कर सकता हूं - भले ही मुझे मणि लेखक नहीं पता, भले ही मैं किसी को जानता हूं?

मैं यह भी देख सकता हूं कि पैकेज प्रबंधक जैसे डेबियन जांच करते हैं कि पैकेज दुर्भावनापूर्ण हैं या नहीं, और यदि ऐसा है, तो क्या उन्होंने उस मणि की जांच की है जिसे आप उपयोग करना चाहते हैं।

1

मुझे विश्वास है कि रत्न के दो समूह हैं।

सबसे पहले "अच्छी तरह से ज्ञात रत्न", जो संयोग से सबसे बड़ी और अधिक (कभी-कभी मेरे कौशल के लिए अस्पष्ट) कोड/तर्क के साथ होते हैं। लेकिन उन रत्नों की समीक्षा कई अन्य डेवलपर्स की है।

फिर "माइनर रत्न" (जिसका अर्थ है कि व्यापक रूप से उपयोग और प्रसार नहीं किया जाता है)। यह रत्न कम संस्करण, बीटा राज्यों और इतने के लिए उपयोग करते हैं।

मेरा नियम थंब है: मैं पहले समूह पर भरोसा करता हूं और रत्न के दूसरे समूह से मैं जो कोड कर सकता हूं उसे पढ़ता हूं।

यह पूरी तरह से सच नहीं है क्योंकि मेरे पास मेरे सिस्टम में हर मणि के कोड को पढ़ने का समय नहीं है, लेकिन जब भी मुझे विधि कॉल को समझने की आवश्यकता होती है, या एक निश्चित कार्य कैसे होता है, तो मैं स्रोतों पर जाने की कोशिश करता हूं लागू किया गया है, जो मुझे कम से कम 2-3 स्रोत फ़ाइलों को पढ़ने के लिए लगभग हमेशा ड्राइव करता है।

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

उसने कहा, मैं रत्नों पर विश्वास करने के लिए उपयोग करता हूं, क्योंकि मुझे कभी भी जानबूझकर हानिकारक नहीं मिला है, लेकिन खराब कार्यान्वयन और कुछ सुरक्षा छेद हैं।

+0

लगता है जैसे एक अच्छा दृष्टिकोण। – Hola

0

वहाँ क्रिप्टोग्राफी द्वारा हस्ताक्षर जवाहरात के लिए प्रस्ताव किया गया है, तो आप को पता होगा कि कम से कम है कि लेखक का कोड के साथ छेड़छाड़ नहीं की गई है, लेकिन वहाँ इस पर कोई तेज हो गया है

http://pablotron.org/files/signing_gems.txt

संबंधित मुद्दे