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


25

99% उपयोगकर्ताओं की तरह, मैं तैयार बायनेरिज़ से उबंटू स्थापित करता हूं।

मैं खुद को कैसे सत्यापित कर सकता हूं कि वे बायनेरिज़ वास्तव में उबंटू के मूल स्रोत कोड से हैं?

यह सत्यापित करना अच्छा होगा कि बायनेरिज़ के साथ गड़बड़ करने के लिए एनएसए / किसी ने उबंटू या लिनोड (मेरा वीपीएस प्रदाता) के साथ सहयोग नहीं किया है। यदि हम बायनेरिज़ को सत्यापित कर सकते हैं, तो उन्हें पहली बार में यह प्रयास करने की संभावना नहीं होगी क्योंकि उन्हें उस पर कॉल करना आसान होगा।


आप स्रोत कोड पर एक नज़र डाल सकते हैं, उपयोग कर सकते हैं apt-get source, या अपने स्वयं के संकलन के लिए उपयोग कर सकते हैं। इस प्रश्न को देखें: askubuntu.com/questions/28372/…
विल्फ

4
संभवतः उपयोगी: पैकेज-स्थापित फ़ाइलों को मूल से कैसे सत्यापित करें? (डेबियन, लेकिन उबंटू में लागू होने के लिए पर्याप्त करीब होना चाहिए)
एक CVn

@ माइकलकॉर्जलिंग मैं उस प्रश्न के हमारे संस्करण की तलाश कर रहा था ...
ब्रेम

1
@ ब्रायम मुझे लगता है कि इस विशेष मामले में डेबियन / उबंटू में बहुत फर्क नहीं है। क्या फर्क पड़ता है सवालों का उद्देश्य है; उपरोक्त लिंक का उद्देश्य मुख्य रूप से स्थापना के बाद कुछ बिंदु पर दूषित फ़ाइलों का पता लगाना है, जबकि यह एक दुर्भावनापूर्ण रूप से प्रतिस्थापित या परिवर्तित फ़ाइलों का पता लगाने के उद्देश्य से लगता है, या बाइनरी फाइलें कथित स्रोत कोड से मेल नहीं खाती हैं। विभिन्न समस्याओं, यही वजह है कि मैंने केवल "संभवतः उपयोगी" लिंक को टैग किया।
एक CVn

3
दिलचस्प है, मुझे लगता है कि जेंटू भी पूरी तरह से इस मुद्दे से बचता है: वहां, आपको डाउनलोड किए गए स्रोत कोड अभिलेखागार पर भरोसा करना होगा। क्रिप्टोग्राफ़िक हस्ताक्षरों का उपयोग करें जो आप चाहते हैं; अगर आप इस बात पर भरोसा नहीं कर सकते हैं कि जो हस्ताक्षरित है वह वास्तविक है और यह वही है जो इसे होना चाहिए, वहाँ वास्तव में कुछ भी नहीं किया जाना है।
एक CVn

जवाबों:


36

आप सोर्सकोड डाउनलोड कर सकते हैं और इसे स्वयं संकलित कर सकते हैं। लेकिन प्रतीक्षा करें - पहले आपको उस सोर्सकोड की जांच करनी होगी, क्योंकि यदि कैननिकल ने एनएसए के साथ सहयोग किया है, तो वे शायद किसी कोडलॉगर या कुछ और के लिए अनुमति देने के लिए कुछ कोड दर्ज कर चुके हैं जो दूरस्थ रूप से सक्रिय हो सकते हैं।

इसलिए...

  1. सोर्सकोड डाउनलोड करने के बाद,
  2. आपको सभी कोड जांचने होंगे,
  3. और फिर इसे संकलित करें!

लेकिन प्रतीक्षा करें - क्या आप संकलक पर भरोसा कर सकते हैं ?


15
"क्या आप संकलक पर भरोसा कर सकते हैं?" जब आप एक स्पर्शरेखा पर जाते हैं और सवाल पढ़ते हैं कि सी कंपाइलर को स्क्रैच से कैसे संकलित किया जाए, तो यूनिक्स / लिनक्स को स्क्रैच (और संबंधित उत्तरों) से संकलित करें
बजे एक CVn

17
लेकिन क्या आप अपने हार्डवेयर पर भरोसा कर सकते हैं? शायद आपको अपने कंप्यूटर को खरोंच से भी बनाना चाहिए, और यही वह जगह है जहाँ आप कुछ मुद्दों पर चलते हैं ...
थॉमस

और क्या आप अपने वीएम को चलाने वाले हाइपरवाइजर पर भरोसा कर सकते हैं?
फर्नांडो कोर्रेया

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

6
लेकिन प्रतीक्षा करें - क्या आप भरोसा कर सकते हैं कि आप सभी संभावित समझौता किए गए क्षेत्रों को बताने से बचने के लिए एनसुबांट को फ़िल्टर या पूरी तरह से एनएसए द्वारा नियंत्रित नहीं किया जा रहा है?
TheZ

9

यदि आप "स्वीकार करने के लिए तैयार नहीं हैं, क्योंकि उबंटू ऐसा कहता है", तो आप नहीं कर सकते।


2
यदि आप अपने विशेष सिस्टम पर बायनेरिज़ उबंटू-मूल बायनेरिज़ को चेकसम की तुलना करके मेल खाते हैं, तो आप इसे [कोशिश] कर सकते हैं। बेशक, एक उचित रूटकिट किसी भी मामले में सिस्टम के भीतर से आसानी से पता लगाने योग्य नहीं होगा।
पीटरिस

2
यह तभी काम करता है जब आपको भरोसा हो कि "मूल उबंटू बायनेरिज़" के साथ छेड़छाड़ नहीं की गई थी। दूसरे शब्दों में, यदि आप स्वीकार करते हैं कि वे अच्छे हैं क्योंकि उबंटू ऐसा कहता है। ;)
fkraiem

5

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

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

वास्तव में इस समस्या के आसपास एक छोटा सा शोध समुदाय है - संकलन प्रजनन योग्य कैसे बनाया जाए।

कहा जा रहा है कि, डाउनलोड किए गए बाइनरी की एक मैनुअल तुलना और एक स्व-संकलित जोड़ा गया / संशोधित कोड का पता लगा सकता है , इसलिए यह किसी व्यक्ति के लिए बायनेरिज़ और स्रोत कोड को बायनेरिज़ में छिपाने के लिए जोखिम भरा होगा, क्योंकि यह पता लगाया जा सकता है।

लेकिन फिर भी संकलक पर भरोसा करने की समस्या है, जैसा कि पहले ही उल्लेख किया गया है ...


4

दो अलग-अलग मशीनों पर एक ही समान बायनेरिज़ बनाना एक कठिन समस्या है। टीओआर परियोजना उनके निर्माण के नियमित भाग के रूप में करती है। वहाँ वर्णन है कि वे इसे कैसे करते हैं। डेबियन और फेडोरा को इस वितरण के लिए संभव बनाने वाली परियोजनाएं लगती हैं, लेकिन वे प्रारंभिक अवस्था में हैं। ऐसा नहीं लगता कि उबंटू में कोई काम हुआ है

उबंटू बाइनरी पैकेज को पुन: पेश करने के लिए आपको उस वातावरण को पुन: पेश करने की आवश्यकता होगी जो इसे यथासंभव निकट में बनाया गया था। इसके साथ शुरू करने के लिए, आपको पहले यह पता लगाना होगा कि यह पैकेज कहाँ और कैसे संकलित है। ऐसा नहीं लगता है कि जानकारी को खोजना आसान है।


क्या विशिष्ट पर विवरण?
जोसेफ

मुझे अनदेखा करें, एक अलग पोस्ट के साथ उलझन में :)
टिम

0

उबंटू के एमडी 5 के साथ जाँच। यदि आपकी फ़ाइलों से प्राप्त एमडी 5 उबंटू द्वारा प्रकाशित एक से मेल खाता है तो किसी ने बायनेरिज़ इनबेटनी के साथ छेड़छाड़ नहीं की है।


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

ओपी ने पोस्ट किया: "मैं खुद को कैसे सत्यापित कर सकता हूं कि उन बायनेरिज़ वास्तव में उबंटू से मूल स्रोत कोड से हैं?" जवाब उस सवाल के लिए है। दूसरा एक हास्यास्पद है, जो यह जान सकता है कि क्या लिनक्स कर्नेल किसी के द्वारा छेड़छाड़ नहीं किया गया है (एनएसए या जो कभी भी?) आसान है, कोड डाउनलोड करें, इसे पढ़ें और एक बार जब आप खुश होते हैं तो इसे स्वयं संकलित करें। इसके अलावा, मेरा उत्तर उस प्रश्न के लिए है जिसे मैंने इस टिप्पणी की शुरुआत में कॉपी किया है।
योस्मोसो

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

0

यह एक कठिन काम है, मुझे लगता है कि इस जटिल काम से बेहतर है कि यहां भरोसा किया जाए। लेकिन सवाल क्या आप भरोसा कर सकते हैं?

क्योंकि ओपन सोर्स सॉफ्टवेयर उपयोगकर्ताओं को कोड में बदलाव के लिए कई स्वतंत्रता देता है, आप किसी पर भी भरोसा नहीं कर सकते।

इस उद्देश्य के लिए एक परिदृश्य बनाते हैं, मैं चाहता हूँ कि मेरी जाँच करें Ubuntu == source code, आप अपने स्रोत से संकुल की तुलना करने की कोशिश क्यों नहीं करते हैं?

  1. स्रोत से उबंटू के लिए एक बाइनरी पैकेज बनाएं।
  2. वितरण द्वारा प्रकाशित स्वयं के साथ स्व-निर्मित बाइनरी पैकेज की तुलना करें।
  3. स्रोत को डाउनलोड करने के लिए apt-get -b सोर्स का उपयोग करें।

लेकिन मेरे लिए अच्छी तरह से तुलना करने से आपको अलग-अलग टाइमस्टैम्प, वातावरण के कारण मामूली अलग परिणाम मिलते हैं, लेकिन क्या यह साबित होता है कि इसका स्रोत कोड से नहीं है!

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.