Ssh में PermitUserEnvironment के सुरक्षा जोखिम


11

मैं एक ssh खोल के लिए env चर पारित करने के लिए PermitUserEnvironmentऔर फ़ाइल के उपयोग के बारे में काफी कुछ पोस्ट पढ़ा है ~/.ssh/environment। आधिकारिक sshd डॉक्स और कुछ अन्य संसाधनों को ऐसा करने के कुछ सुरक्षा जोखिमों से जूझना पड़ता है।

पर्यावरण प्रसंस्करण को सक्षम करने से उपयोगकर्ता LD_PRELOAD जैसे तंत्रों का उपयोग करके कुछ कॉन्फ़िगरेशन में पहुंच प्रतिबंधों को बायपास करने में सक्षम हो सकते हैं।

सक्रियण के संभावित सुरक्षा मुद्दे क्या हैं PermitUserEnvironment? मैं इन पर्यावरण चर में DB कनेक्शन विवरण रखना चाह रहा था, क्या यह उचित है?


मैंने ओपनएसएसएच परियोजना के साथ एक बग रिपोर्ट दर्ज की, जिसमें उन्हें sshd_config मैन पेज पर कुछ शब्द जोड़ने के लिए कहा, इस मुद्दे को स्पष्ट करते हुए: Bugzilla.mindrot.org/show_bug.cgi?id=2317
फ्लोरिन आंद्रेई

जवाबों:


16

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

पर्यावरण प्रसंस्करण को सक्षम करने से उपयोगकर्ता LD_PRELOAD जैसे तंत्रों का उपयोग करके कुछ कॉन्फ़िगरेशन में पहुंच प्रतिबंधों को बायपास करने में सक्षम हो सकते हैं।

यदि आप SSH मजबूर कमांड्स का उपयोग कर रहे हैं, तो यह सीमित करने के लिए कि लोग ssh के माध्यम से क्या कर सकते हैं (उदाहरण के लिए, यदि आप लोगों को केवल उपयोग करने के लिए प्रतिबंधित कर रहे हैं sftpया scp), तो किसी को पर्यावरण चर जैसे LD_PRELOAD(या संभवतः भी PATH) सेट करने की अनुमति देकर उन्हें आपका अपहरण करने की अनुमति मिलेगी अपने स्वयं के कोड के साथ बुनियादी पुस्तकालय कॉल की जगह पर प्रतिबंध। दूसरी ओर, यदि आप .ssh/environmentअपने उपयोगकर्ताओं की ओर से बना रहे हैं और वे अन्यथा इसे प्रबंधित करने में सक्षम नहीं हैं, तो आपके जोखिम अपेक्षाकृत छोटे हैं।

अपने विशेष उपयोग के मामले के बारे में अधिक जानकारी के बिना एक निश्चित उत्तर प्रदान करना कठिन है।


मैं केवल 2 या 3 विश्वसनीय पार्टियों (अपने संगठन के भीतर देव) से उनके rsa कुंजी के माध्यम से सर्वर तक पहुंच की अनुमति दे रहा हूं। तो आप जो कह रहे हैं वह ठीक लगता है
रोब स्क्वायर्स

आपके उत्तर से, मुझे लगता है कि मुझे इस विकल्प को सक्षम करने के सुरक्षा निहितार्थ के बारे में कोई नींद नहीं खोनी चाहिए, यदि मेरे सभी ssh खाते पूर्ण बैश एक्सेस (कोई sudo) प्रदान करते हैं। सही बात?
फ्लोरिन आंद्रेई

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