जब मैं उबंटू से चल रही डिस्क को अधिलेखित करने के लिए 'dd' का उपयोग करता हूं तो क्या होता है?


9

अगर मैं उपयोग करूं तो क्या होगा?

sudo dd if=/dev/zero of=/dev/sda

एक Ubuntu स्थापित से चल रहा है /dev/sda ?


मैंने इसे VM में आज़माया था, और यह प्रतीत होता है कि डिस्क को सही ढंग से मिटा दिया है। क्या हर बार यही होगा? क्या यह उबंटू इंस्टॉल और सभी डेटा को "वाइप" करने का एक सुरक्षित तरीका है?

मेरा प्रश्न कुछ हद तक इससे प्रेरित है:

  1. मैं कंप्यूटर से उबंटू को कैसे अनइंस्टॉल करूं?
  2. 'Rm -rf /' सिस्टम की सभी फाइलों को हटाने में कैसे सक्षम है?

2
नहीं नहीं नहीं। बुरा विचार। यदि आप सुरक्षित रूप से अपने डेटा को मिटाना चाहते हैं तो इस पर भरोसा न करें।
एंड्रे बोरी

जवाबों:


16

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

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

यदि आप किसी प्रकार की घबराहट हटाने की सुविधा चाहते हैं, तो मैं सुझाव देता हूं कि आपकी डिस्क को LUKS (उबंटू इंस्टॉलर ऐसा कर सकता है) के साथ एन्क्रिप्ट किया जा सकता है और फिर सिक्योरिटी स्टैक एक्सचेंज पर मेरे उत्तर का अनुसरण कर सकता है । इसमें क्रायपेडर को पोंछना शामिल है जो आकार में केवल 2 एमबी है और इसे ओवरराइट करने में एक सेकंड से भी कम समय लगता है। फिर सिस्टम को पुनरारंभ करें और डिस्क एन्क्रिप्शन कुंजी मेमोरी से चली जाएगी, उन्हें पुनर्स्थापित करने का कोई तरीका नहीं होने के बाद से क्रिप्टएडर स्वयं भी चला गया है।


इसके अलावा संबंधित: Security.stackexchange.com/questions/106131/…
André Borie

10

मैंने आर्क विकी पन्नोंdd से थोड़े अधिक उन्नत उपयोग उधार और थोड़ा संशोधित उपयोग करके एक वीएम का बलिदान किया ।

पहले एक अच्छी प्रगति मीटर स्थापित करें:

sudo apt-get install pv

और फिर 'एन्हांस्ड' ddकमांड चलाएं

sudo openssl enc -aes-256-ctr -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null \
| base64)" -nosalt </dev/zero \
| pv -bartpes "$(sudo blockdev --getsize64 /dev/sda)" \
| sudo dd bs=64K of=/dev/sda

यह एईएस सिफरटेक्स से भरी हुई डिस्क को छोड़ देगा। एक पूर्ण और सुरक्षित डिस्क वाइप? शायद अपने स्वयं के ddउदाहरण से बेहतर है लेकिन कुछ भी पूरी तरह से सुरक्षित या गारंटी नहीं है ...

यहां छवि विवरण दर्ज करें

और तुम मुझे एक वीएम देना है :)

संदर्भ:


क्या आप इस पर एक उदाहरण दे सकते हैं कि वाक्यविन्यास कैसा होगा यदि कोई डिस्क को जीरो (यदि = / dev / शून्य) के साथ डिस्क का उपयोग करके भरें ddऔर pvकृपया?
स्टॉर्मलॉर्ड

1
@ स्टॉर्मलॉर्ड आप इसे pv(पाइप दर्शक) के माध्यम से पाइप करते हैं , इसलिएdd if=/dev/zero | pv | dd of=/dev/sdX
someonewithpc

2
आपको वीएम का बलिदान करने की आवश्यकता नहीं है - बस एक स्नैपशॉट पहले से बना लें, और जब आप पूरा कर लें तो बहाल करें :-)
जोनासक्ज़ - मोनिका

तो भले ही कुछ लिखने के पीछे हो, कुल परिणाम स्टेग्नोग्राफ़िक रूप से जटिल है। "कचरा" के बिना अन्यथा शून्य मानों को खोजने के लिए डिस्क को हेक्सडंप करना सरल होगा।
मैकेंज़्म

6

संक्षिप्त उत्तर: यह मोटे तौर पर वही करेगा जो आप चाहते हैं और फिर कुछ भी काम नहीं करेगा। का उपयोग करते हुए ddफाइल सिस्टम जो साधन किसी भी बाधाओं जो लागू होगा वहाँ अब प्रासंगिक नहीं हैं कि नीचे एक स्तर पर आप कर रहे हैं ऑपरेटिंग (यह मतलब नहीं है कि गिरी यदि आप ऐसा करने को नहीं रोका जा सकता है - लेकिन यह नहीं है)। फाइलसिस्टम से कुछ सामग्री पहले से ही मेमोरी में है, उदाहरण के लिए कर्नेल और ddप्रोग्राम स्वयं, और कुछ कैश में होंगे। इस बात की संभावना है कि यदि सिस्टम मल्टी-यूजर मोड में है, तो कुछ फाइलें वापस हो सकती हैं, जबकि ddप्रगति जारी है, यह मानते हुए कि वे वास्तव में बदल गए हैं, और यदि आप स्मृति दबाव में हैं, तो वहां से कुछ पृष्ठ भी स्वैप हो सकते हैं। (उन्हें रिबूट के बाद एन्क्रिप्ट किया जाना चाहिए और इस तरह अनुपयोगी होना चाहिए)।

अधिकांश आदेश जो आप इसे जारी rebootकरेंगे - जिसमें शामिल हैं - कैश में नहीं होगा और इसलिए काम नहीं करेगा। इसलिए यदि आप एकल उपयोगकर्ता मोड में हैं, तो यह बहुत अच्छा काम करेगा, यदि आप बहुउपयोगकर्ता मोड में हैं तो यह अधिकांश डेटा को मिटा देगा। आदर्श रूप से आपको इसे किसी अन्य माध्यम से बूट किया जाना चाहिए (यहां तक ​​कि शायद initrd पर रोकना) ताकि आप सुनिश्चित कर सकें कि सभी लेखन कहां से आ रहे हैं।

यदि आप एक सुरक्षित वाइप चाहते हैं, तो यह काम नहीं करेगा क्योंकि यदि आप इसे अभी शून्य कर रहे हैं तो मूल डेटा के कुछ निशान बाकी रहेंगे। आमतौर पर आप तीन रैंडम राइट्स चाहते हैं, जिसका मतलब होगा - ज्यादा स्लो लेकिन सुरक्षित होने के /dev/urandomबजाय कॉपी करना /dev/zero। कुछ लोग सुझाव दे सकते हैं कि आप /dev/random"शुद्ध" यादृच्छिक डेटा के लिए डिवाइस का उपयोग करते हैं - कोई छद्म यादृच्छिक नहीं - लेकिन इस उद्देश्य के लिए किसी को PRNG बीज को क्रैक करने और डेटा को सफलतापूर्वक मास्क करने का मौका अनिवार्य रूप से नगण्य है।

यदि आप वास्तव में पागल हैं, तो आपको स्टोरेज डिवाइस को एक भट्टी में फेंकने की जरूरत है ताकि वह डिग्नेटाइज / डिस्चार्ज हो जाए।


1
क्या आपको dd चुनौती याद है? यह साल पहले था, लेकिन उन्होंने किसी भी कंपनी को एक इनाम की पेशकश की, जो एक हार्ड ड्राइव से किसी भी डेटा को पुनर्प्राप्त कर सकता था जिसे एक बार में शून्य कर दिया गया था। उनके पास कोई लेने वाला नहीं था।
केसी

1
"तीन बार" बात पूरी तरह से बकवास है। यादृच्छिक डेटा 1 बार निश्चित रूप से अप्राप्य है। यहां तक ​​कि शून्य से भी उबरना महंगा होगा (@ केसी की टिप्पणी देखें)। शायद अगर इनाम $ 1b थे या वे लेने वाले होंगे ...
R .. GitHub STOP HELPING ICE

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

4

जैसा कि आपके VM ने डिस्क को पोंछ कर किया है और आपके सिस्टम को अनुपयोगी बना देगा।

हालाँकि, अगर आपके मन में 'पैनिक विलोपन' है, तो ddहो सकता है कि इसके लिए पर्याप्त तेज़ न हो और मुझे यकीन नहीं हो रहा है कि उस मामले में तेज़ कमांड या प्रोग्राम उपलब्ध करा रहे हैं।


1

यह काम करना चाहिए, रनिंग प्रक्रिया राम में आयोजित की जाती है और इसे डिस्क की आवश्यकता नहीं है। मैं वैसे भी cd या usb से चलने वाले लाइव सिस्टम का उपयोग करूंगा। यहां तक ​​कि डायन, डिस्क वाइपिंग के लिए एक विशेष लाइव लिनक्स भी है।

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

Ssd ओवरराइटिंग का उपयोग करते समय सावधानी बरतें क्योंकि वियर लेवलिंग के कारण सभी डेटा को हटाने की गारंटी नहीं है।

यदि आप पूर्ण डिस्क एन्क्रिप्शन (ल्यूक्स) का उपयोग करते हैं, तो आपको पूर्ण डिस्क को हटाने की आवश्यकता नहीं है, लुक्स हेडर को हटाना पर्याप्त है।

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