pg.gimran.org

Қарсы соққы беретін сүзгілер

Тамыз 2003 · Барлық эсселер

Пол Грэмнің «Қарсы соққы беретін сүзгілер» эссесінің аудармасы. Түпнұсқа: https://paulgraham.com/ffb.html. Машиналық аударма (Gemini).

Translation of Paul Graham's essay 'Filters that Fight Back'. Original: https://paulgraham.com/ffb.html. Machine translation (Gemini).

Байестік спам сүзгілеріне сілтемелер бойынша өтіп, арғы жағында не күтіп тұрғанын тексерту арқылы біз олардың дәлдігін арттыра алатын сияқтымыз. death2spam жобасынан Ричард Джоузи мұны қазір екіұдай жағдайларда қолданып жүр және жақсы жұмыс істейтінін айтады.

Неге мұны тек екіұдай жағдайларда ғана жасау керек? Және неге тек бір рет қана?

Сүзгілер спамды құрта ала ма? атты эссемде айтып өткенімдей, спамдағы барлық url бойынша өтудің қызықты бір қосымша әсері болар еді. Егер танымал электрондық пошта клиенттері спамды сүзу үшін осылай жасайтын болса, спам таратушының серверлеріне ауыр соққы тиер еді. Бұл туралы неғұрлым көп ойлансам, бұл соғұрлым жақсы идея болып көрінеді. Бұл жай ғана қызық нәрсе емес; спам таратушыларға қарсы бұдан артық дәл бағытталған қарымта шабуылды елестету қиын.

Сондықтан спам сүзгілерімен жұмыс істейтіндерге қосымша мүмкіндік ұсынғым келеді: егер қосылса, күдікті спамдағы әрбір url-ді n рет айналып өтетін (spider) «жазалау» режимі, мұндағы n мәнін пайдаланушы өзі орната алады. [1]

Көптеген адамдар атап өткендей, қазіргі электрондық пошта жүйесінің бір кемшілігі — оның тым енжарлығы. Ол не бұйырсаң, соны істейді. Осы уақытқа дейін бұл мәселені шешуге арналған барлық ұсыныстар жаңа хаттамаларды енгізуді талап ететіндей көрінетін. Ал мына ұсынысқа ол қажет емес.

Егер кеңінен қолданылса, автоматты түрде дерек жүктейтін спам сүзгілері электрондық пошта жүйесінің серпіліп, кері соққы беруіне әкелер еді. Осы уақытқа дейін спам таратушының пайдасына жұмыс істеп келген спамның орасан зор көлемі енді оның өзіне қарсы, бетіне қайта серпілген бұтақтай тиер еді. Автоматты түрде дерек жүктейтін спам сүзгілері спам таратушының шығындарын көбейтіп, сатылымын азайтар еді: оның трафик тұтынуы шарықтап кетер еді, ал серверлері жүктемеден тоқтап қалып, спамға жауап беруі мүмкін болған адамдар үшін қолжетімсіз болар еді.

Сағатына миллион хат жөнелттің бе — серверлерің сағатына миллион сұраныс қабылдайды.

Біз мұның тек күдікті спамдарға ғана жасалуын қамтамасыз етуіміз керек. Әдетте, миллиондаған адамға жіберілген кез келген url спамдық url болуы ықтимал, сондықтан әрбір хаттағы әрбір http сұранысын жіберу барлық уақытта дерлік дұрыс жұмыс істейді. Бірақ бұған сәйкес келмейтін бірнеше жағдай бар: мысалы, Yahoo Mail және Hotmail сияқты тегін пошта қызметтерінен жіберілген хаттардың төменгі жағындағы url-дер.

Мұндай сайттарды қорғау және теріс пайдаланудың алдын алу үшін деректерді автоматты түрде жүктеуді спамда жарнамаланған сайттардың қара тізімдерімен біріктіру қажет. Тек қара тізімдегі сайттар ғана сүзгіден өтіп тексерілуі керек және сайттар тек адамдар тексергеннен кейін ғана қара тізімге енгізілуі тиіс. Спамның өмір сүру ұзақтығы кем дегенде бірнеше сағатты құрайтындықтан, жаңа сайтты насихаттайтын спамға кедергі жасау үшін мұндай тізімді уақтылы жаңартып отыру оңай болуы керек. [2]

Ауқымды көлемдегі автоматты жүктеу тек өткізу қабілеті жоғары байланыс арнасы бар пайдаланушылар үшін ғана тиімді болар еді, бірақ спам таратушыларға елеулі қиындық тудыру үшін олардың саны да жеткілікті. Шын мәнінде, бұл шешім мәселені дәл көрсетеді. Спамның басты мәселесі мынада: аңғал бірер адамға жету үшін спам таратушы хатты барлығына таратады. Аңғал емес алушылар тек жанама зардап шегушілер ғана. Бірақ аңғал емес көпшілік аңғалдардың оған жауап беруін тоқтатпайынша (немесе тоқтатамыз деп қорқытпайынша), спам алуды тоқтатпайды. Автоматты түрде дерек жүктейтін спам сүзгілері оларға осыны істеуге мүмкіндік береді.

Бұл спамды құрта ма? Толық емес. Ең ірі спам таратушылар өз серверлерін автоматты жүктейтін сүзгілерден қорғай алар. Дегенмен, олар үшін мұны істеудің ең оңай әрі ең арзан жолы — хаттарына жұмыс істейтін жазылудан бас тарту (unsubscribe) сілтемелерін қосу болар еді. Ал ұсақ-түйектер мен өздерін жарнамалау үшін спам таратушыларды жалдаған «заңды» сайттар үшін бұл мәжбүрлі қажеттілікке айналар еді. Сондықтан, егер автоматты түрде дерек жүктейтін сүзгілер кеңінен тараса, олар автоматты түрде жазылудан бас тартатын сүзгілерге айналады.

Бұл сценарийде спам операциялық жүйенің істен шығуы, вирустар және қалқымалы терезелер сияқты тек дұрыс бағдарламалық құралдарды қолдануға ерінетін адамдарды ғана мазалайтын кеселдердің біріне айналар еді.

Ескертпелер

[1] Автоматты түрде дерек жүктейтін сүзгілер бағыттаулар (redirects) бойынша өтуі тиіс, және кейбір жағдайларда (мысалы, жай ғана «мына жерді басыңыз» дейтін бетте) бірнеше деңгейлі сілтемелер бойынша өтуі керек. Сондай-ақ, http сұраныстары танымал веб-шолғыштардың сұраныстарынан, соның ішінде реті мен referrer көрсеткіші бойынша да ажыратылмайтынына көз жеткізіңіз.

Егер жауап x уақыт ішінде қайтарылмаса, әдепкі бойынша оны спам болу ықтималдығы айтарлықтай жоғары деп есептеу керек.

n мәнін тұрақты еткенше, оны сол сайт аталған бұрын байқалған спамдар санының функциясына айналдыру жақсы идея болуы мүмкін. Бұл теріс пайдалану мен кездейсоқ қателіктерден қосымша қорғаныс деңгейін қосар еді.

[2] Бұл мақаланың түпнұсқа нұсқасында «қара тізімнің» (blacklist) орнына «ақ тізім» (whitelist) термині қолданылған болатын. Олар қара тізімдер сияқты жұмыс істеуі керек болса да, мен оларды заңдық тұрғыдан шабуылдарға азырақ осал болуы мүмкін деп ақ тізімдер деп атауды жөн көрдім. Бірақ бұл оқырмандарды шатастырған сияқты болды.

Қара тізімдер бірнешеу болуы керек шығар. Жалғыз осал тұс (single point of failure) шабуылдарға да, асыра пайдалануға да осал болар еді.

Осы мәтіннің нобайларын оқып шыққандары үшін Брайан Бертонға, Билл Еразуниске, Дэн Гиффинге, Эрик Реймондқа және Ричард Джоузиге алғыс білдіремін.