फ़िल्टर जो पलटवार करते हैं

अगस्त 2003

हम बायेसियन स्पैम फ़िल्टर की सटीकता को बेहतर बनाने के लिए उन्हें लिंक फ़ॉलो करने के लिए कह सकते हैं ताकि यह देखा जा सके कि दूसरे छोर पर क्या इंतज़ार कर रहा है। death2spam के रिचर्ड जोवे अब सीमावर्ती मामलों में ऐसा करते हैं, और रिपोर्ट करते हैं कि यह अच्छा काम करता है।

यह केवल सीमावर्ती मामलों में ही क्यों करें? और केवल एक बार ही क्यों?

जैसा कि मैंने Will Filters Kill Spam? में उल्लेख किया है, स्पैम में सभी यूआरएल को फ़ॉलो करने का एक मनोरंजक दुष्प्रभाव होगा। यदि लोकप्रिय ईमेल क्लाइंट स्पैम को फ़िल्टर करने के लिए ऐसा करते हैं, तो स्पैमर के सर्वर को गंभीर झटका लगेगा। मैं इस बारे में जितना अधिक सोचता हूँ, यह उतना ही बेहतर विचार लगता है। यह सिर्फ मनोरंजक नहीं है; स्पैमर्स पर एक अधिक सटीक प्रतिशोध की कल्पना करना मुश्किल होगा।

इसलिए मैं स्पैम फ़िल्टर पर काम करने वालों के लिए एक अतिरिक्त सुविधा का सुझाव देना चाहूँगा: एक "दंड" मोड जो, यदि चालू हो, तो संदिग्ध स्पैम में प्रत्येक यूआरएल को n बार स्पाइडर करेगा, जहाँ n उपयोगकर्ता द्वारा निर्धारित किया जा सकता है। [1]

जैसा कि कई लोगों ने नोट किया है, वर्तमान ईमेल प्रणाली की समस्याओं में से एक यह है कि यह बहुत निष्क्रिय है। यह वही करता है जो आप उसे बताते हैं। अब तक समस्या को ठीक करने के सभी सुझावों में नए प्रोटोकॉल शामिल लगते हैं। यह वाला नहीं करेगा।

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

एक मिलियन ईमेल प्रति घंटे भेजें, अपने सर्वर पर एक मिलियन हिट प्रति घंटे प्राप्त करें।

हम यह सुनिश्चित करना चाहेंगे कि यह केवल संदिग्ध स्पैम पर ही किया जाए। एक नियम के रूप में, लाखों लोगों को भेजा गया कोई भी यूआरएल एक स्पैम यूआरएल होने की संभावना है, इसलिए हर ईमेल में हर http अनुरोध जमा करना लगभग हर समय ठीक काम करेगा। लेकिन कुछ ऐसे मामले हैं जहाँ यह सच नहीं है: उदाहरण के लिए, Yahoo Mail और Hotmail जैसी मुफ्त ईमेल सेवाओं से भेजे गए मेल के नीचे यूआरएल।

ऐसी साइटों की सुरक्षा के लिए, और दुरुपयोग को रोकने के लिए, ऑटो-पुनर्प्राप्ति को स्पैम-विज्ञापित साइटों की काली सूची के साथ जोड़ा जाना चाहिए। केवल काली सूची में शामिल साइटों को ही क्रॉल किया जाएगा, और साइटों को केवल मनुष्यों द्वारा निरीक्षण के बाद ही काली सूची में डाला जाएगा। स्पैम का जीवनकाल कम से कम कई घंटे होना चाहिए, इसलिए किसी नई साइट को बढ़ावा देने वाले स्पैम के साथ हस्तक्षेप करने के लिए ऐसी सूची को समय पर अपडेट करना आसान होना चाहिए। [2]

उच्च-मात्रा वाला ऑटो-पुनर्प्राप्ति केवल उच्च-बैंडविड्थ कनेक्शन वाले उपयोगकर्ताओं के लिए व्यावहारिक होगा, लेकिन स्पैमर्स को गंभीर परेशानी देने के लिए उनमें से पर्याप्त हैं। वास्तव में, यह समाधान समस्या को चतुराई से दर्शाता है। स्पैम के साथ समस्या यह है कि कुछ भोले-भाले लोगों तक पहुँचने के लिए स्पैमर हर किसी को मेल भेजता है। गैर-भोले प्राप्तकर्ता केवल संपार्श्विक क्षति हैं। लेकिन गैर-भोले बहुमत तब तक स्पैम प्राप्त करना बंद नहीं करेंगे जब तक कि वे जवाब देने वाले भोले-भाले लोगों को रोकना (या रोकने की धमकी देना) बंद न कर दें। ऑटो-पुनर्प्राप्त स्पैम फ़िल्टर उन्हें ऐसा करने का एक तरीका प्रदान करते हैं।

क्या इससे स्पैम खत्म हो जाएगा? पूरी तरह से नहीं। सबसे बड़े स्पैमर शायद अपने सर्वर को ऑटो-पुनर्प्राप्त करने वाले फ़िल्टर के खिलाफ सुरक्षित रख सकते हैं। हालाँकि, उनके लिए सबसे आसान और सबसे सस्ता तरीका यह होगा कि वे अपने मेल में काम करने वाले अनसब्सक्राइब लिंक शामिल करें। और यह छोटे-मोटे लोगों के लिए, और "वैध" साइटों के लिए एक आवश्यकता होगी जिन्होंने उन्हें बढ़ावा देने के लिए स्पैमर्स को काम पर रखा था। इसलिए यदि ऑटो-पुनर्प्राप्त करने वाले फ़िल्टर व्यापक हो जाते हैं, तो वे ऑटो-अनसब्सक्राइब करने वाले फ़िल्टर बन जाएंगे।

इस परिदृश्य में, स्पैम, OS क्रैश, वायरस और पॉपअप की तरह, उन प्लेगों में से एक बन जाएगा जो केवल उन लोगों को प्रभावित करते हैं जो सही सॉफ़्टवेयर का उपयोग करने की परवाह नहीं करते हैं।

नोट्स

[1] ऑटो-पुनर्प्राप्त करने वाले फ़िल्टर को रीडायरेक्ट का पालन करना होगा, और कुछ मामलों में (जैसे, एक पृष्ठ जो केवल "यहां क्लिक करें" कहता है) एक से अधिक स्तर के लिंक का पालन करना होगा। यह भी सुनिश्चित करें कि http अनुरोध लोकप्रिय वेब ब्राउज़र के अनुरोधों से अप्रभेद्य हों, जिसमें क्रम और रेफ़रर शामिल हों।

यदि प्रतिक्रिया x समय के भीतर वापस नहीं आती है, तो कुछ काफी उच्च स्पैम संभावना पर डिफ़ॉल्ट करें।

n को स्थिर बनाने के बजाय, इसे उस साइट का उल्लेख करने वाले स्पैम की संख्या के फ़ंक्शन बनाना एक अच्छा विचार हो सकता है। यह दुरुपयोग और दुर्घटनाओं के खिलाफ सुरक्षा का एक और स्तर जोड़ देगा।

[2] इस लेख के मूल संस्करण में "ब्लैकलिस्ट" के बजाय "व्हाइटलिस्ट" शब्द का इस्तेमाल किया गया था। हालांकि वे ब्लैकलिस्ट की तरह काम करने वाले थे, मैंने उन्हें व्हाइटलिस्ट कहना पसंद किया क्योंकि यह उन्हें कानूनी हमले के प्रति कम संवेदनशील बना सकता है। इसने पाठकों को भ्रमित कर दिया है।

शायद कई ब्लैकलिस्ट होनी चाहिए। विफलता का एक बिंदु हमले और दुरुपयोग दोनों के प्रति संवेदनशील होगा।

धन्यवाद ब्रायन बर्टन, बिल येराज़ुनिस, डैन गिफ़िन, एरिक रेमंड, और रिचर्ड जोवे को इस लेख के ड्राफ्ट पढ़ने के लिए।