मेरे पास एक ऐसा प्रोग्राम है जो स्मृति में सुरक्षा-संवेदनशील जानकारी (जैसे निजी कुंजी) रखता है, क्योंकि यह प्रोग्राम के जीवनकाल में उनका उपयोग करता है। इस प्रोग्राम के प्रोडक्शन संस्करणों को यह सुनिश्चित करने के लिए RLIMIT_CORE से 0 सेट किया गया है कि कोर डंप जिसमें यह संवेदनशील जानकारी हो सकती है, कभी भी उत्पादित नहीं होती है।मैं कैसे सुनिश्चित करूं कि मेरा लिनक्स प्रोग्राम कोर डंप का उत्पादन नहीं करता है?
हालांकि, जबकि इस core(8)
मैनपेज में उल्लेख नहीं है, apport documentation on the Ubuntu wiki का दावा है,
नोट भले ही ulimit (विकलांग कोर फ़ाइलों के लिए सेट है कि शून्य की एक कोर फ़ाइल आकार specyfing ulimit का उपयोग करके -सी 0), apport अभी भी दुर्घटना पर कब्जा करेगा।
क्या मेरी प्रक्रिया के भीतर कोई तरीका है (यानी, बाहरी प्रणाली के कॉन्फ़िगरेशन पर भरोसा किए बिना) कि मैं यह सुनिश्चित कर सकता हूं कि मेरी प्रक्रिया का कोर डंप कभी उत्पन्न नहीं होता है?
नोट: मुझे पता है कि बहुत सारी विधियां हैं (जैसे नीचे दी गई टिप्पणियों में उल्लिखित) जहां रूट या प्रक्रिया स्वामी विशेषाधिकार वाले उपयोगकर्ता अभी भी संवेदनशील डेटा तक पहुंच सकते हैं। जो मैं यहां लक्षित कर रहा हूं वह संवेदनशील डेटा के अनजाने एक्सपोजर को डिस्क पर सहेजा जा रहा है, जिसे उबंटू बग ट्रैकिंग सिस्टम, या ऐसी चीजों को भेजा जा रहा है। (यह स्पष्ट करने के लिए Basile Starynkevitch के लिए धन्यवाद।)
ध्यान दें कि एक निर्धारित उपयोगकर्ता कोर डंप प्राप्त करने के लिए अपने आवेदन को चलाने वाले अपने कर्नेल को पैच कर सकता है। –
और प्रक्रिया मेमोरी '/ proc /' –