Кіріспе

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

Бастапқы идея

Том Листон түпнұсқалық "Лабреа" бағдарламасын жасады. Ол бір машинада іске қосылған торпитті арқылы бүкіл желіні қорғай алады. Машина, жауап келмейтін (қолданылмаған мекенжайларды көрсететін) Адресті шешу протоколының сұрауларын тыңдайды, содан кейін осы сұрауларға жауап береді, сканердің бастапқы SYN пакетін қабылдайды және жауап ретінде SYN/ACK жібереді. Ол сокетті ашпайды немесе қосылымды дайындамайды, тіпті SYN/ACK жібергеннен кейін қосылымды ұмытып кетуі мүмкін. Бірақ, қашықтағы жақ өзінің ACK-ін жібереді (ол назарға алынбайды) және 3 тарихи қол алысу толыққан деп санайды. Содан кейін ол деректерді жібере бастайды, бірақ олар көздеген жеріне жетпейді. Қосылым біраз уақыттан соң ажыратылады, бірақ жүйе оның тірі (орнатылған) қосылыммен жұмыс істеп жатыр деп ойлағандықтан, оны уақытында ажыратудан сақтанып, қайта жіберуге, кері кетуге, қайта жіберуге және т.б. тырысады. "Лабреа" бағдарламасының кейінгі нұсқалары кіріс деректерге жауап беру мүмкіндігін де қосты, қайтадан шикі IP пакеттерін пайдаланып, торпиттің серверінің сокеттері мен басқа ресурстарын қолданбайды, жіберуші жақты "баяулауды" сұраған жалған пакеттермен. Бұл қосылымды сақтап, сканердің уақытын одан да көп ысырапқа жібереді.

SMTP-қаптамалар

Бір кезде спаммен күресудің мүмкін болатын жолдарының бірі – әрбір жіберілген хат үшін шағын төлем қабылдау еді. Мұндай жасанды құн енгізу арқылы, төлем жеткілікті түрде төмен болса, заңды қолдануға тигізер әсері ұсақ болады, ал автоматтандырылған жаппай спам бірден тиімсіз болып кетеді. Тарпитинг бұған ұқсас (бірақ техникалық тұрғыдан әлдеқайда қарапайым) тәсіл ретінде қарастырылуы мүмкін, онда спамдердің шығыны ақша емес, уақыт пен тиімділік тұрғысынан өлшенер еді. Аутентификация процедуралары пайдаланушылар жарамсыз парольдерді енгізген кезде жауап беру уақытын ұзартуы мүмкін. SMTP аутентификациясы да осыдан ерекшелік емес. Дегенмен, спам жіберілетін жердегі серверден серверге SMTP беру аутентификацияны қажет етпейді. SMTP тарпиттері үшін әртүрлі әдістер талқыланып, іске асырылды, олар Mail Transfer Agent (MTA, яғни пошта сервері бағдарламалық қамтамасы) қосылатын немесе оның алдында прокси ретінде орналасқан жүйелер. Бір әдіс бастапқы сәлемдесу хабарын кешіктіру арқылы барлық хаттарды жіберу уақытын бірнеше секундқа ұзартады ("сәлемдесу кешіктіруі"). Бұл идеяның мәні – заңды хатты жеткізуге сәл уақыт кетсе, маңызды емес, бірақ үлкен көлемде спамдер үшін бұл айырмашылықты тудырады. Бұл әдістің кемшілігі – пошта тізімдері мен басқа да заңды жаппай жіберілімдер ашық түрде рұхсат етілген тізімге енгізілуі керек, әйтпесе олар да зардап шегеді. Кейбір электрондық пошта жүйелері, мысалы sendmail 8.13+, күшті сәлемдесу кешіктіруін іске асырады. Бұл әдіс қосылыс орнатылған кезде тоқтап, трафикті тыңдайды. Егер ол өзінің сәлемдесуінен бұрын қандай да бір трафикті анықтаса (RFC 2821 талаптарын бұза отырып), қосылысты жабады. Көптеген спамдер SMTP-ішін спецификацияға сәйкес жазбайтындықтан, бұл келіп түсетін спам хабарлардың санын азайтуы мүмкін. Тағы бір әдіс – тек белгілі спамдерді кешіктіру, мысалы, қара тізімді пайдалану (Спам, DNSBL қараңыз). OpenBSD бұл әдісті өздерінің негізгі жүйесіне OpenBSD 3.3 нұсқасынан бастап, арнайы мақсаттағы демонмен (spamd) және өрт қабырғасындағы (pf) белгілі спамдерді осы тарпиттерге қайта бағыттау мүмкіндігімен біріктірді. MS Exchange жарамсыз мекенжайға жіберген жіберушілерді тарпиттей алады. Exchange мұны SMTP коннекторы аутентификация жүйесіне қосылғандықтан жасай алады. Тағы бір айқын идея – greylisting, ол қарапайым тілмен айтқанда, бұрын көрінбеген IP-адрестен алғашқы қосылу әрекетін қабылдамайды. Бұл әдіс негізінде спамдер әрбір хабарламаны жіберу үшін бір ғана қосылу әрекеті жасайды (немесе қысқа уақыт ішінде бірнеше әрекет), ал заңды пошта жеткізу жүйелері ұзақ уақыт бойы қайталап тырысады. Олар қайтадан тырысқаннан кейін, ешқандай кедергісіз кіргізіледі. Соңында, күрделірек әдіс, электрондық поштаны нақты уақытта сүзгілеу бағдарламалық қамтамасымен біріктіруге тырысады, жіберіліп жатқанда электрондық поштаны сүзгілеп, сүзгінің "спамдық ықтималдығы" көрсеткішіне жауап ретінде байланыстың уақытын ұзартады. Мысалы, спам сүзгісі әрбір жолдан кейін немесе әрбір x байттан кейін бұл хабарламаның спам болу ықтималдығын "болжайды". Бұл ықтималдық қаншалықты жоғары болса, MTA беруді соғұрлым кешіктіреді.

IP деңгейіндегі пластиналар

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

SMTP-IP деңгейіндегі аралас таранзит

Сервер белгілі бір электрондық хабарламаның спам екенін анықтай алады, мысалы, ол спам-тұзаққа жіберілгендіктен немесе сенімді пайдаланушылардың шағымдарынан кейін. Сервер хабарламаны жіберуге жауапты IP-адрестің тарпиттелуіне лайық екенін шеше алады. Қолжетімді DNSBL-дермен өзара тексеру, әділ таратушыларды тарпит дерекқорына қосудан сақтауға көмектеседі. Linux libipq кітапханасын пайдаланатын бағдарлама кіріс SMTP қосылымдарының қашықтан алынған адрестерін осы дерекқормен салыстыра алады. SpamCannibal – осы идеяға негізделген GPL лицензиялы бағдарламалық қамтамасыз ету; Stockade – FreeBSD ipfirewall қолданып жүзеге асырылған ұқсас жоба. IP деңгейінде тарпиттеудің бір артықшылығы – MTA басқаратын TCP қосылымдарының күйлі болуы. Яғни, MTA ұйықтағанда көп процессорды қолданбаса да, әр қосылымның күйін сақтау үшін қажетті жадты пайдаланады. Керісінше, LaBrea стиліндегі тарпиттеу күйсіз болып табылады, демек спамдерге қарсы күресте шығындарды азайтады. Алайда, спамдер ботнеттерді пайдаланып, компьютерлік ресурстарының көп бөлігін сыртқа шығара алатынын ескеру қажет.

Сын

Тарапитталған қосылым қабылдаушыға үлкен мөлшерде трафик тудыруы мүмкін, себебі жіберуші қосылым орнатылған деп есептейді және деректерді жіберуге (содан кейін қайта жіберуге) тырысады. Қазіргі кездегі компьютерлік бот-желілердің орташа мөлшерін ескере отырып, іс жүзінде күдікті трафикті толығымен тоқтату, оны тараптудан гөрі тиімді. Осылайша, тек TCP SYN сегменттері ғана қайта жіберіледі, толық HTTP немесе HTTPS сұраныстары емес.

Тар-питингтің коммерциялық іске асырылуы

MS Exchange-тен басқа, "тар-пит" идеясының тағы екі сәтті коммерциялық іске асырылуы болды. Біріншісін Филадельфияда орналасқан TurnTide стартап компаниясы әзірледі, және 2004 жылы Symantec оны 28 миллион долларға қолма-қол сатып алды. TurnTide Anti Spam Router-де өзгертілген Linux ядросы бар, ол TCP трафигімен түрлі амалдар жасауға мүмкіндік береді, мысалы, TCP терезесінің мөлшерін өзгерту. Электрондық пошта жіберушілерді әртүрлі трафик кластарына топтастыру және әр класс үшін өткізу қабілетін шектеу арқылы, зиянды трафик мөлшері азаяды – әсіресе, трафик көлемі жоғары болғандықтан оңай анықталатын жалғыз көзден келген жағдайда. Symantec компаниясы сатып алынғаннан кейін, MailChannels деп аталатын канадалық стартап компаниясы ұқсас нәтижелерге жету үшін сәл өзгеше тәсіл қолданатын "Traffic Control" бағдарламалық құралын шығарды. Traffic Control – жартылай нақты уақыт SMTP проксисі. TurnTide құрылғысы желілік қабатта трафик пішімдеуін қолданса, Traffic Control қолданба қабатында жеке жіберушілерге трафик пішімдеуін қолданады. Бұл тәсіл ботнеттерден келетін спам трафигін өңдеуде тиімдірек, себебі бағдарламалық құрал жеке спам-зомбилерден келетін трафикті баяулатуға мүмкіндік береді, оның үстіне трафикті классқа біріктірудің қажеті болмайды.