मेरे पास एक PHP स्क्रिप्ट है जो HTTP रेफरर की जांच करती है।
if ($_SERVER['HTTP_REFERER'] == 'http://www.example.com/') {...}
हालांकि, इस inherintly असुरक्षित लगता है ... क्योंकि क्या होता है उपयोगकर्ता 'http://example.com/'
या 'http://www.ExaMple.com'
(जो दोनों के समानता परीक्षण से मेल नहीं खाते) में जाता है।
प्रश्न: यह सुनिश्चित करने के लिए एक बेहतर समानता परीक्षण क्या है कि HTTP रेफरर 'example.com'
से आ रहा है?
बन आप रक्षा के लिए यह प्रयोग कर रहे हैं चाहते हैं? यह कैसे मदद कर सकता है? –
यह रक्षा की पहली पंक्ति है (विशेष रूप से मुझे पता है कि रेफरर को धोखा दिया जा सकता है)। यह किसी भी चीज को सुरक्षित नहीं रख रहा है, लेकिन साथ ही, मैं नहीं चाहता कि लोग सीधे इसे कॉल करके मेरी webservice का दुरुपयोग कर रहे हों। लोगों को अर्द्ध ईमानदार रखने के लिए यह अधिक मतलब है। – Hank
कोई उपयोगकर्ता tamper डेटा का उपयोग करके http_referer को नियंत्रित कर सकता है। हालांकि, सीएसआरएफ हमले में रेफरर का इस्तेमाल "जाली" नहीं किया जा सकता है। – rook