शायद सत्र आईडी और टोकन (आईपी, नमक, और सत्र आईडी पर आधारित हैश) का उपयोग करके, हर अनुरोध को पुन: उत्पन्न किया जाता है (एक तेज़ हैशिंग एल्गोरिदम का उपयोग) एक अच्छा दृष्टिकोण होगा? मैं डेटाबेस (वर्तमान में) में सत्र डेटा संग्रहीत करता हूं, और इसका मतलब है कि मेरे पास प्रत्येक अनुरोध के दो प्रश्न ओवरहेड हैं। यह इस तरह काम करता है:
- एसआईडी और टीओके मैच का चयन करें।
- डेटाबेस में मौजूदा क्लाइंट मैचों के आधार पर जेनरेट किए गए टोकन को सत्यापित करें।
- किसी संपत्ति में डेटा को deserialise।
- स्क्रिप्ट आदि हो रहा है।
- अद्यतन डेटा को सीरियलाइज़ करें, एसआईडी/टीओके को पुन: उत्पन्न करें, और डीबी अपडेट करें जहां एसआईडी/टीओके = पुरानी सिड और टोक़, अद्यतन डेटा और नए सिड और टोक़। कुकी को नए एसआईडी और टोक़ पर सेट करें।
इस तरह, पहली बार कुकीज जो कुछ भी मैं टोकन को आधार पर रखता हूं (इस मामले में, दूरस्थ पता), और यदि चोरी हो गया है और क्लाइंट डेटा खराब हो गया है, तो कुकी केवल एक अनुरोध के लिए उपयोगी है - जब तक कुकी को रोक दिया जाता है, तब तक यह बेकार है।
एकमात्र समझने योग्य कमजोरी मैं देख सकता हूं कि यदि हमलावर एक कुकी, स्पूफ और इसका उपयोग करने में कामयाब रहा, तो असली व्यक्ति एक और अनुरोध कर सकता था। इसे हल करने के कुछ तरीके हैं जिन्हें मुझे सोचने की ज़रूरत है।ओवरहेड दो प्रश्न हैं और एक टोकन हैश दो बार उत्पन्न करते हैं (एक बार सत्यापन के लिए, एक बार प्रतिस्थापन के लिए)।
हाय किवेली, जो उपयोगकर्ता के लिए बहुत विश्वसनीय नहीं है। ऐसे कई वातावरण हैं जहां आईपी पते अक्सर बदलते हैं, और उपयोगकर्ता बार-बार लॉग इन नहीं करना चाहते हैं, यही कारण है कि उन्होंने 'मुझे याद रखें' चुना है। –
कुकीज केवल एक विशिष्ट डोमेन द्वारा पहुंच योग्य हैं। इसके बारे में सोचें: अगर कोई कुकी चुरा सकता है, तो इसका मतलब है कि चोर के पास कंप्यूटर तक पहुंच है, अगर वह करता है, तो वह ब्राउज़र खोल सकता है और वैसे भी साइट पर जा सकता है। लेकिन हाँ, कुछ हमले किए जा सकते हैं। मैं आपको उपरोक्त तरीके से करने की सलाह दूंगा। – Loki
लोकी - यह गलत है। इंटरनेट पर सादे टेक्स्ट में कुकीज़ भेजी जाती हैं; उन्हें छिड़काव काफी छोटा है, खासकर यदि आप वायरलेस का उपयोग कर रहे हैं। – SquareCog