बुराई नौकरानी के खिलाफ बचाव, / बूट विभाजन को हटाने के लिए कैसे संभालना है


11

एलयूकेएस पूर्ण डिस्क एन्क्रिप्शन का उपयोग करते समय, आप दुष्ट नौकरानियों के खिलाफ सुरक्षा कैसे करेंगे ?

दुष्ट नौकरानी का हमला तब होता है जब आप दूर होने के दौरान किसी को आपके कंप्यूटर पर भौतिक पहुँच प्राप्त करते हैं और अगली बार जब आप अपना कंप्यूटर शुरू करते हैं तो अपने FDE पासवर्ड को पकड़ने के लिए अनएन्क्रिप्टेड / बूट पार्टीशन से समझौता करते हैं।

समाधान में से एक आपके / बूट विभाजन को एक यूएसबी स्टिक पर छोड़ना है जो हमेशा आपके साथ होता है (नौकरानी इसे प्राप्त नहीं कर सकती है), लेकिन मुझे उस पर कौन सी फाइलसिस्टम का उपयोग करना चाहिए, और मैं कैसे हटाने के लिए अपने सिस्टम को कॉन्फ़िगर करता हूं यूएसबी स्टिक (और इस प्रकार / बूट पार्टीशन)?

मैं CentOS का उपयोग कर रहा हूं, लेकिन सामान्य, डिस्ट्रो-अज्ञेयवादी उत्तर निश्चित रूप से स्वागत योग्य हैं। धन्यवाद।

जवाबों:


5

अंत में समझ में आया। यह अभी भी वास्तव में हैकिंग और गंदा लगता है क्योंकि सिस्टम को कभी पता नहीं चलता है कि /bootमाउंट नहीं किया जा सकता है और आपको कुछ भी करने से पहले इसे मैन्युअल रूप से माउंट करना होगा जो इसे लिख सकता है (सिस्टम अपडेट, आदि के बारे में सोचें), लेकिन इसके अलावा यह पूरी तरह से काम करता है ।

  • अपने फ्लैश ड्राइव को एक एकल विभाजन के साथ तैयार करें, जिस पर बूट झंडा लगा हो। आप shred -n 1 -v /dev/sdXइसे किसी भी पिछले बूट सेक्टर सहित पूरी तरह से मिटाने के लिए चला सकते हैं ; एक बार यह fdiskएक विभाजन और उस पर mkfsअपनी पसंद की फाइल सिस्टम बनाने के लिए चलाया जाता है।
  • अपने फ्लैश ड्राइव को कहीं माउंट करें, /mnt/bootया /newbootठीक भी करेंगे।
  • /bootफ्लैश ड्राइव से सब कुछ खत्म हो गया mv /boot/* /newboot
  • अपने को संपादित करें /etc/fstabऔर मूल बूट विभाजन के UUID को बदल दें (या यदि कोई फ्लैश नहीं है तो एक प्रविष्टि बनाएं) आपके फ्लैश ड्राइव में से एक से मिलान करने के लिए। आप UUID के साथ प्राप्त कर सकते हैं lsblk -o name,uuidnoautoविकल्प भी जोड़ें ताकि ड्राइव स्वचालित रूप से माउंट न हो सके ताकि सिस्टम को बूट करना शुरू कर सके (जैसे कर्नेल लोड हो जाने के बाद) उस पर FS को भ्रष्ट किए बिना।
  • मूल बूट विभाजन और फ्लैश ड्राइव को अनमाउंट करें ( umount /boot && umount /newboot) और फ्लैश ड्राइव को माउंट करें; यदि आपकी fstab प्रविष्टि सही है, तो आप बस चला सकते हैं mount /bootऔर यह fstab में निर्दिष्ट UUID के आधार पर स्वचालित रूप से इसे माउंट कर देगा।
  • नए बूट के UUIDs और "भौतिक" स्थिति को प्रतिबिंबित करने के लिए अपने बूटलोडर के कॉन्फ़िगरेशन को पुनः बनाएं, GRUB के लिए फ्लैश ड्राइव वास्तव में कंप्यूटर में पहली हार्ड ड्राइव के रूप में दिखाई देगा ( hd0)। यदि आप अधिकांश डिस्ट्रो द्वारा प्रदत्त डिफ़ॉल्ट GRUB कॉन्फ़िगरेशन स्क्रिप्ट का उपयोग करने के साथ ठीक हैं, तो आप चला सकते हैं grub-mkconfig -o /path/to/grub.cfgऔर यह वर्तमान में माउंट किए गए विभाजन और / या fstab के अनुसार फ़ाइल उत्पन्न करेगा। ध्यान दें कि CentOS 7 के लिए, grub.cfgवास्तव में सही स्थित है /boot/grub2/grub.cfg

बूट विभाजन तक पहुँचने वाले किसी भी ऑपरेशन को करते समय, अपने USB स्टिक को कनेक्ट करें और चलाएं mount /boot। एक बार करने के बाद, आप दौड़ सकते हैं umount /boot। ध्यान दें कि बाद वाला कमांड पूरा होने में क्षण ले सकता है क्योंकि यह बफ़र्स को डिस्क में फ्लश कर रहा है (डिस्क खुद ही धीमी है इसलिए कर्नेल बफ़र्स कुछ चीजों को गति देने के लिए ऑपरेशन लिखते हैं)।


गंदा नहीं है, यह ऐसा करने का सबसे स्पष्ट तरीका है। इसे लिखने के लिए धन्यवाद!
dbanet

0

इस विशेष मुद्दे पर एक और दृष्टिकोण एन्क्रिप्शन कुंजी को स्टोर करने के लिए टीपीएम का उपयोग करना है, लेकिन रक्षा इसे प्रभावी बनाने के लिए उपयोगकर्ता पर भरोसा करती है। एक अल्पविकसित, RHEL7- आधारित समाधान tpm-luks ( https://github.com/GeisingerBTI/tpm-luks ) है।

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

क्योंकि महत्वपूर्ण सब कुछ एक क्रॉफोग्राफ़िक हैश के साथ मापा जाता है, अनिवार्य रूप से एक दुष्ट नौकरानी के लिए अपने GRUB / कर्नेल / रैमडिस्क को बदलने के लिए कोई रास्ता नहीं है जो आपके एफडीई पासफ़्रेज़ को इकट्ठा करने में मदद करता है। एक अतिरिक्त बोनस के रूप में, आपको FDE पासफ़्रेज़ की आवश्यकता नहीं है! आप सिद्धांत रूप में मानव-पठनीय पासफ़्रेज़ को पूरी तरह से हटा सकते हैं और पूरी तरह से tpm-luks पर भरोसा कर सकते हैं, लेकिन यदि आप उस मार्ग पर जाते हैं, तो संभवतः यह एक अच्छा विचार है कि आप अपने LUKS हेडर को संग्रहीत करें और इसे बैकअप के रूप में रखें।

जैसा कि मैंने उल्लेख किया है, इसके लिए उपयोगकर्ता पर कुछ परिश्रम की आवश्यकता होती है। यदि आपने कंप्यूटर को अप्राप्य छोड़ दिया है, और आपको पासफ़्रेज़ प्रॉम्प्ट के साथ प्रस्तुत किया गया है, तो संभवतः यह एक खराब आइडिया है, जब तक कि आपने कुछ जाँच न कर ली हों। उस बिंदु पर, आपको एक लाइव सीडी वातावरण में बूट करना चाहिए और यह देखने के लिए देखना चाहिए कि क्या tpm-luks में एक बग है, या यदि /bootविभाजन वास्तव में बदल गया है। आप अभी भी /bootविभाजन को अनएन्क्रिप्टेड छोड़ रहे हैं , लेकिन यदि कुछ महत्वपूर्ण बदल जाता है, तो मुख्य डिस्क को कभी भी डिक्रिप्ट नहीं किया जाता है।

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