सही मायने में SSH कनेक्शन हासिल करने के लिए ट्रिक्स


2

मुझे पता है कि SSH तब तक सुरक्षित है जब तक आप MITM हमले से पीड़ित नहीं होते हैं, लेकिन मैं यह जानना चाहता हूं कि क्या ऐसी परिस्थितियों में भी SSH को 100% सुरक्षित बनाने का कोई तरीका है, आप किसी भी संवेदनशील जानकारी से पहले सूँघ रहे हैं और डिस्कनेक्ट कर रहे हैं खुलासा किया है, या कम से कम यह असंभव नहीं बना है, लेकिन हमलावर के लिए वास्तव में पढ़ने / लिखने के लिए "अधिक कठिन" है (शायद डेटा को गड़बड़ी करने का एक तरीका है ताकि यह समझ में न आए या कुछ?)।

मुझे लगता है कि आपको वही मिला जो मैं चाहता हूं।

उदाहरण के लिए, यदि आप उस स्थिति से जुड़ने से इंकार करते हैं जिसमें फिंगरप्रिंट वह नहीं है जिसकी आपने अपेक्षा की थी, तो क्या MITM अभी भी काम करता है?

अगर मेरे दिमाग में विचार आते हैं तो मैं इस सवाल को अपडेट करने की कोशिश करूंगा।


आप पूर्व-साझाकरण कुंजियों द्वारा मिटम हमलों को पराजित कर सकते हैं।
CarlF

हाँ, मुझे लगता है कि काम करना चाहिए।
Guilherme Vieira

जवाबों:


5

आप सूँघ रहे हैं पता चलता है

यह वही है जो एसएसएच से बचाता है। जब तक आप होस्ट कुंजी को ध्यान से सत्यापित करते हैं, तब तक कोई फर्क नहीं पड़ता कि कोई आपके ट्रैफ़िक को पढ़ रहा है: यह सब एन्क्रिप्टेड है।

किसी भी संवेदनशील जानकारी का खुलासा करने से पहले काट देना

फिर से, मानक एसएसएच ठीक हो जाएगा। होस्ट कुंजी जाँच एसएसएच कनेक्शन स्थापित करते समय की गई पहली चीजों में से एक है; यदि आप इसे रद्द करते हैं, तो किसी भी प्रमाणीकरण डेटा को प्रसारित किए बिना कनेक्शन तुरंत बंद कर दिया जाता है।

उदाहरण के लिए, यदि आप उस स्थिति से जुड़ने से इंकार करते हैं जिसमें फिंगरप्रिंट वह नहीं है जिसकी आपने अपेक्षा की थी, तो क्या MITM अभी भी काम करता है?

हमलावर को कोई भी "निजी" एसएसएच डेटा प्राप्त नहीं होगा, अगर आपका यही मतलब है। ऊपर देखें - मेजबान कुंजी की जाँच पहले किए गए कार्यों में से एक है। जब तक सर्वर सत्यापित नहीं होता तब तक कुछ और नहीं भेजा जाता है।

हो सकता है कि डेटा को गारबेज करने का एक तरीका है, इसलिए इसका कोई मतलब नहीं है?

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


मैं मानता हूँ कि मैं एक क्रिप्टोग्राफर या कुछ भी नहीं हूँ। लेकिन IMHO, यदि आप होस्ट कुंजी फिंगरप्रिंट की सावधानीपूर्वक जांच करते हैं, तो SSHv2 उतना ही सुरक्षित है जितना इसे प्राप्त होता है।

  • यदि यह सुरक्षित नहीं होता, तो इसे ठीक / बदल दिया जाता / बदल दिया जाता। यह एक बार हुआ है: SSH v1 को SSH v2 द्वारा बदल दिया गया।

  • इसका मतलब है कि आप जरूर सर्वर और क्लाइंट दोनों में SSH v1 को अक्षम करें।

    SSH संस्करण 1 बहुत असुरक्षित है, और भले ही अधिकांश ग्राहकों को पहले SSHv2 का उपयोग करने के लिए कॉन्फ़िगर किया गया है, वे अभी भी v1 पर गिरेंगे यदि कोई सर्वर v2 की पेशकश नहीं करता है। यह एक MITM हमले के लिए एक अवसर का परिचय देता है ... हालांकि मुझे विवरण याद नहीं है, यह हमलावर के साथ एक बहुत ही समान फिंगरप्रिंट के साथ v1 कुंजी उत्पन्न करने के लिए कुछ करना है।

    ओपनएसएसएच के लिए, डाल दिया Protocol 2 आपकी कॉन्फ़िग फ़ाइल में।

  • बहुत कम संभावना है कि एसएसएच द्वारा उपयोग किए गए एल्गोरिदम में से एक टूट गया है। लेकिन अगर कोई आरएसए या डीएच को तोड़ने का प्रबंधन करता है, तो दुनिया को आपके सर्वर की सुरक्षा की तुलना में चिंता करने के लिए बड़ी समस्याएं होंगी ... (इसके अलावा, वैकल्पिक एल्गोरिदम हैं।)


वैसे, OpenSSH v5.8 ने DH और DSA से ECDH और ECDSA को अपने प्राथमिक एल्गोरिदम (क्रमशः प्रमुख एक्सचेंज और होस्ट कुंजी के लिए) के रूप में बदल दिया है।


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

@Kromey: सच है, लेकिन बहुत समान दिखने वाले उंगलियों के निशान के साथ अलग-अलग कुंजी बनाना संभव है; देख फ़ज़ी फिंगरप्रिंट्स प्रोजेक्ट
grawity

1
यह सच है, लेकिन "समान दिखना" "समान" नहीं है, और हर एक SSH ग्राहक मुझे स्टोर की होस्ट के बारे में जानता है और उसकी तुलना करता है केवल सटीक मिलान बाद में, जोर से शिकायत करने या यहां तक ​​कि एक बाइट बंद होने पर भी कनेक्ट करने से इनकार करना। जब तक आप प्रारंभिक कनेक्शन पर उस कुंजी को सही ढंग से सत्यापित करते हैं, आप सुनहरे हैं।
Kromey

"सटीक मिलान" में कुंजी एल्गोरिथ्म और प्रोटोकॉल संस्करण शामिल हैं, जिन्हें सावधानीपूर्वक सत्यापित भी किया जाना है। यदि क्लाइंट के पास आरएसए कुंजी संग्रहीत है, लेकिन सर्वर केवल डीएसए प्रस्तुत करता है, तो कुछ क्लाइंट केवल एक पुष्टिकरण संवाद पॉप अप करेंगे। (नवीनतम OpenSSH इसे बेहतर तरीके से संभालता है।)
grawity

ठीक है, इसलिए यदि मुझे कुछ फिंगरप्रिंट प्राप्त होता है जो मुझे उम्मीद है कि मेरे पास करने के लिए कुछ भी नहीं है लेकिन कनेक्ट नहीं है? यदि यह किया जा सकता है, तो यह एसएसएच का हिस्सा होगा, है ना?
Guilherme Vieira

-1

SSH ठीक नहीं है, यह मानव-मध्य हमले का खतरा है।

Microsoft आपके कनेक्शन पर ऐसा 'हमला' कर रहा है यदि आपके और उस सर्वर के बीच फ़ोरफ़्रंट TMG फ़ायरवॉल है जिसे आप तक पहुँचने का प्रयास करते हैं। और इसमें SSH प्रमाणपत्र को स्पूफ करना शामिल है।


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