जब तक आप प्रत्येक ग्राहक को एक निजी कुंजी के साथ आपूर्ति नहीं करते हैं, जिसे आप व्यक्तिगत रूप से रद्द कर सकते हैं, तब तक आप प्रभावी रूप से अस्वीकार नहीं कर सकते। लेकिन यह शायद ओवरकिल है। अगर ज्यादातर लोग बुलेट फायर करने की जहमत नहीं उठाएंगे तो आपको बुलेटप्रूफ सॉल्यूशन की जरूरत नहीं है।
यह एक सुरक्षा प्रश्न है, इसलिए चलो एक खतरे के मॉडल और शमन रणनीतियों का वर्णन करते हैं।
मान लें कि आपके पास एक यूआरएल हिटिंग है जो आपके लिए ध्यान देने योग्य लागत (जैसे प्रोसेसिंग कॉस्ट) खर्च कर सकती है, और आप इसे एक सरल DoS अटैक और कॉपीकैट एप्स दोनों से बचाना चाहते हैं।
आसानी से विश्लेषण किए जाने से कनेक्शन को छिपाने के लिए एसएसएल का उपयोग करें। अनुरोध के महंगे हिस्से को करने से पहले कनेक्शन को जटिल करने के लिए नॉन-ओबियवोस पोर्ट नंबर, रीडायरेक्ट सीक्वेंस, कुकी एक्सचेंज का उपयोग करें। सर्वर को कनेक्शन स्वीकार करने के लिए यह बताने के लिए अपने ऐप में बेक किए गए कुछ गुप्त कोड का उपयोग करें।
अब कोई महँगे-से-हिट URL को केवल एक पैकेट स्निफ़र चलाकर या अपने कोड में URL-जैसे तार को देखकर नहीं सीख सकता। एक संभावित हमलावर को आपके ऐप को अपघटित करना होगा।
आप वास्तव में अपने कोड को विघटित होने और / या डिबगर के नीचे चलाने से नहीं बचा सकते। हमलावर अंततः गुप्त कुंजी और कनेक्शन अनुक्रम सीखता है।
आप ध्यान दें कि आपको अपने महंगे URL पर रूज के अनुरोध मिलने शुरू हो गए हैं: या तो एक हमले के रूप में, या एक कॉपीकैट ऐप के रूप में, जिसे चलाने के लिए आपकी सेवा तक पहुँच प्राप्त करनी होगी, या हो सकता है कि कोई शोषण कोड सार्वजनिक रूप से पोस्ट किया गया हो। आप एक वैध अनुरोध से एक दुष्ट अनुरोध नहीं बता सकते, हालांकि।
एक अलग गुप्त कुंजी के साथ, अपने ऐप में एक मुफ्त मामूली अपडेट बनाएं। यह एक अलग महंगा URL को हिट करना चाहिए जो कि समझौता किए गए महँगे URL के समान ही डेटा प्रदान करता है। कुछ समय के लिए, दोनों URL को सुलभ बनाएं।
अद्यतन संस्करण में अपना उपयोगकर्ता आधार स्विच देखें। समझौता किए गए महंगे URL को कुचलना और अंततः इसे 404। आपने एक सुरक्षा उल्लंघन को कम कर दिया है, उम्मीद है कि बहुत अधिक खोए बिना। एक वर्ग को वापस।
अस्वीकरण: मैं एक सुरक्षा विशेषज्ञ नहीं हूं।