जवाबों:
हाँ यही है। लेकिन संवेदनशील डेटा के लिए GET का उपयोग करना कई कारणों से एक बुरा विचार है:
इसलिए, भले ही Querystring सुरक्षित है, यह querystring पर संवेदनशील डेटा स्थानांतरित करने के लिए अनुशंसित नहीं है।
[१] हालाँकि मुझे यह ध्यान देने की आवश्यकता है कि RFC बताता है कि ब्राउज़र को HTTPS से HTTP पर रेफ़रर्स नहीं भेजने चाहिए। लेकिन इसका मतलब यह नहीं है कि एक बुरा 3 पार्टी ब्राउज़र टूलबार या एक HTTPS साइट से एक बाहरी छवि / फ्लैश इसे लीक नहीं करेगा।
History caches in browsers
या ir के लिए कुछ संदर्भ जोड़ सकते हैं?
"नेटवर्क पैकेट से सूँघने" के दृष्टिकोण से एक GET अनुरोध सुरक्षित है, क्योंकि ब्राउज़र पहले सुरक्षित कनेक्शन स्थापित करेगा और फिर GET पैरामीटर वाले अनुरोध को भेजेगा। लेकिन GET url का उपयोग उपयोगकर्ता ब्राउज़र इतिहास / स्वतः पूर्ण में संग्रहीत किया जाएगा, जो पासवर्ड डेटा को संग्रहीत करने के लिए एक अच्छी जगह नहीं है। बेशक, यह केवल तभी लागू होता है जब आप व्यापक "वेबसेवा" परिभाषा लेते हैं जो एक ब्राउज़र से सेवा का उपयोग कर सकती है। यदि आप इसे केवल अपने कस्टम एप्लिकेशन से एक्सेस करते हैं तो यह समस्या नहीं होनी चाहिए।
इसलिए पासवर्ड डायलॉग के लिए कम से कम पोस्ट का उपयोग करना चाहिए। साथ ही जैसा कि लिंक लिटजेक में बताया गया है कि एक GET URL आपके सर्वर लॉग में लिखे जाने की अधिक संभावना है।
हां , आपके क्वेरी स्ट्रिंग एन्क्रिप्ट किए जाएंगे।
इसके पीछे का कारण यह है कि क्वेरी स्ट्रिंग्स HTTP प्रोटोकॉल का एक हिस्सा है जो एक एप्लिकेशन लेयर प्रोटोकॉल है, जबकि सुरक्षा (SSL / TLS) भाग ट्रांसपोर्ट लेयर से आता है। SSL कनेक्शन पहले स्थापित किया जाता है और फिर क्वेरी पैरामीटर (जो HTTP प्रोटोकॉल से संबंधित होते हैं) सर्वर पर भेजे जाते हैं।
एसएसएल कनेक्शन स्थापित करते समय, आपका क्लाइंट क्रम में निम्नलिखित चरण करेगा। मान लीजिए कि आप example.com नामक साइट पर लॉग इन करने का प्रयास कर रहे हैं और क्वेरी मापदंडों का उपयोग करके अपनी साख भेजना चाहते हैं। आपका पूरा URL निम्न की तरह लग सकता है:
https://example.com/login?username=alice&password=12345)
example.com
को एक आईपी पते पर हल करेगा (124.21.12.31)
। उस जानकारी को क्वेरी करते समय, केवल डोमेन विशिष्ट जानकारी का उपयोग किया जाता है, अर्थात, केवलexample.com
उपयोग किया जाएगा।124.21.12.31
से जुड़ने का प्रयास करेगा और 443 पोर्ट (एसएसएल सेवा पोर्ट डिफ़ॉल्ट HTTP पोर्ट 80 नहीं) से कनेक्ट करने का प्रयास करेगा।example.com
अपने क्लाइंट को इसके प्रमाणपत्र भेजेगा।इसलिए, आप संवेदनशील डेटा को उजागर नहीं करेंगे। हालाँकि, इस विधि का उपयोग करके HTTPS सत्र में अपनी साख भेजना सबसे अच्छा तरीका नहीं है। आपको एक अलग दृष्टिकोण के लिए जाना चाहिए।
(e.g http://example.com/login?username=alice&password=12345)
:।
हाँ। HTTPS सत्र का पूरा पाठ SSL द्वारा सुरक्षित किया जाता है। जिसमें क्वेरी और हेडर शामिल हैं। उस संबंध में, एक POST और GET बिलकुल एक जैसा होगा।
आपकी पद्धति की सुरक्षा के लिए, उचित निरीक्षण के बिना कहने का कोई वास्तविक तरीका नहीं है।
SSL पहले मेजबान से जोड़ता है, इसलिए होस्ट नाम और पोर्ट नंबर को स्पष्ट पाठ के रूप में स्थानांतरित किया जाता है। जब होस्ट प्रतिक्रिया देता है और चुनौती सफल होती है, तो क्लाइंट HTTP अनुरोध को वास्तविक URL (तीसरी स्लैश के बाद कुछ भी) के साथ एन्क्रिप्ट करेगा और सर्वर पर भेज देगा।
इस सुरक्षा को तोड़ने के कई तरीके हैं।
"बीच में आदमी" के रूप में कार्य करने के लिए प्रॉक्सी को कॉन्फ़िगर करना संभव है। मूल रूप से, ब्राउज़र वास्तविक सर्वर से प्रॉक्सी से कनेक्ट करने के लिए अनुरोध भेजता है। यदि प्रॉक्सी इस तरह से कॉन्फ़िगर किया गया है, तो यह एसएसएल के माध्यम से वास्तविक सर्वर से कनेक्ट होगा लेकिन ब्राउज़र अभी भी प्रॉक्सी से बात करेगा। इसलिए यदि कोई हमलावर प्रॉक्सी तक पहुंच प्राप्त कर सकता है, तो वह सभी डेटा को स्पष्ट पाठ में देख सकता है।
आपके अनुरोध ब्राउज़र इतिहास में भी दिखाई देंगे। उपयोगकर्ताओं को साइट को बुकमार्क करने के लिए लुभाया जा सकता है। कुछ उपयोगकर्ताओं के पास बुकमार्क सिंक टूल इंस्टॉल किए गए हैं, इसलिए पासवर्ड डेली.साइस या किसी अन्य स्थान पर समाप्त हो सकता है।
अंत में, हो सकता है कि किसी ने आपके कंप्यूटर को हैक किया हो और कीबोर्ड लॉगर या स्क्रीन स्क्रैपर (और ट्रोजन हॉर्स टाइप के बहुत सारे वायरस करते हों) इंस्टॉल किए हों। चूंकि पासवर्ड सीधे स्क्रीन पर दिखाई देता है (जैसा कि पासवर्ड डायलॉग में "*" के विपरीत है), यह एक और सुरक्षा छेद है।
निष्कर्ष: जब सुरक्षा की बात आती है, तो हमेशा पीटा मार्ग पर भरोसा करें। वहाँ सिर्फ इतना है कि आप नहीं जानते, नहीं सोचेंगे और जो आपकी गर्दन को तोड़ देगा।
हाँ, जब तक कोई आपके मॉनीटर पर आपके कंधे को नहीं देख रहा है।
मैं के बारे में बयान से सहमत नहीं है [...] HTTP संदर्भदाता रिसाव (लक्ष्य पेज में एक बाहरी छवि पासवर्ड लीक हो सकता है) में स्लाव की प्रतिक्रिया ।
HTTP 1.1 RFC स्पष्ट रूप से बताता है :
यदि ग्राहक एक सुरक्षित प्रोटोकॉल के साथ स्थानांतरित किया गया था, तो ग्राहक एक (गैर-सुरक्षित) HTTP अनुरोध में एक रेफर हेडर फ़ील्ड शामिल नहीं कर सकता।
वैसे भी, सर्वर लॉग और ब्राउज़र इतिहास क्वेरी स्ट्रिंग में संवेदनशील डेटा नहीं डालने के लिए पर्याप्त कारणों से अधिक है।
आप कुछ नमक के साथ MD5 हैश परम के रूप में पासवर्ड भेज सकते हैं। ऑर्ट के लिए सर्वर साइड पर इसकी तुलना करें।