|
|
|
Test polskich serwerów - zabawa w odbijanie |
| Drukuj |
|
Email
|
|
Napisał Tomasz Andrzej Nidecki (3005 odsłon)
|
|
04.04.2006 11:41 |
Spamerzy stosują czasem taktykę, która ułatwia im obejście filtrów, a
jednocześnie wykorzystuje pewną wadę serwerów pocztowych (albo ich
nieodpowiednią konfigurację). Taktyka ta nie jest nowa (spotkałem się z
nią już dawno temu), ale ostatnio zyskała na popularności, o czym
rozpisują się różnorakie media.
Oto opis tej taktyki, wyniki testu podatności polskich serwerów
pocztowych, a także wyjaśnienie, co powinien zrobić administrator
serwera pocztowego, aby nie stać się pośrednikiem wykorzystanym przez
spamera.
Jak to działa
Wspomniana taktyka polega na wykorzystaniu mechanizmu odbijania listów
wysłanych na nieistniejące adresy pocztowe. Działa ona następująco:
- Jako kopertowy adres nadawcy spamer podaje adres ofiary, do której chce wysłać spam.
- Jako adres odbiorcy, podaje nieistniejący adres pocztowy na istniejącym serwerze pocztowym.
- Niektóre serwery już podczas próby wysłania listu odpowiedzą,
że adres nie istnieje, co uniemożliwi zastosowanie tej taktyki
spamerowi.
- Inne serwery przyjmują list, niezależnie od tego czy adres
odbiorcy istnieje czy nie, a jeśli po jego przyjęciu okaże się, że nie
istnieje, odsyłają komunikat o niedostarczeniu na podany adres
kopertowy nadawcy, czyli... adres ofiary spamera.
W ten sposób ofiara otrzymuje list od serwera-pośrednika,
zawierający informacje o niedostarczeniu przesyłki (której ofiara nigdy
nie wysyłała), a w załączniku spam.
Technika ta charakteryzuje się kilkoma zaletami (dla spamera oczywiście):
- Listy w formie zwrotów mają o wiele większą szansę ominąć filtry antyspamowe analizujące treść e-maila.
- Tak przygotowany spam przychodzi z niewinnego serwera
pocztowego, a więc większość filtrów działających na poziomie serwera
odbiorcy go nie zablokuje (np. szare listy, SPF, większość DNSBL-i).
- Odbiorca spamu (czyli ofiara) zazwyczaj zainteresuje się
dziwnym zwrotem (czegoś, czego nigdy nie wysyłał) i przeczyta spam w
załączniku. Może pomyśleć, że wysłał go wirus z jego komputera (bo
przecież adresem nadawcy jest jego własny adres — większość
użytkowników poczty nie jest świadoma tego, jak łatwo go sfałszować).
Może przekazać list administratorowi (tak, niejednokrotnie przekazywano
mi takie listy...). Słowem — spamer osiągnie sukces, bo wzbudzi
zainteresowanie treścią załącznika.
Czemu jednak nie wszystkie serwery pocztowe odbijają list na nieistniejący adres jeszcze przed jego przyjęciem?:
- Po pierwsze, wiele serwerów jest po prostu tak skonstruowanych (w
przeszłości zbudowane były tak praktycznie wszystkie). Sprawdzenie
adresu odbiorcy następuje dopiero po przyjęciu listu do kolejki. Ma to
na celu usprawnienie procesu przetwarzania listów (sprawdzenie czy
adres jest prawidłowy wymaga zasobów systemowych i opóźnia proces
przyjmowania listu, szczególnie na obciążonych serwerach).
- Po drugie, jeśli serwer już na etapie przyjmowania listu
poinformuje spamera, że adres nie istnieje, spamer może wykreślić go ze
swojej bazy. Spamerzy często robią ataki słownikowe na serwery, w
których wysyłają listy do wielu adresów ze słownika, sprawdzając czy
serwer przyjmie list czy nie. Jeśli na część adresów odpowie negatywnie
(że adres nie istnieje), a część pozytywnie, spamer może być absolutnie
pewien, że te z odpowiedzią pozytywną są prawidłowe. W ten sposób
tworzy bazę istniejących adresów, które może potem sprzedać innemu
spamerowi.
Niestety, ze względu na fakt że opisana taktyka jest
stosowana coraz częściej przez spamerów, administratorzy serwerów
pocztowych nie mają chyba innego wyjścia, jak wprowadzić odbijanie
listów na nieistniejące adresy przed ich przyjęciem, mimo że takie
rozwiązanie daje spamerowi możliwość przeprowadzania ataków
słownikowych. Sam do niedawna byłem wielkim zwolennikiem przyjmowania
każdego listu (aby nie dawać spamerom pożywki w postaci działających
adresów), ale sytuacja zmusiła mnie do wprowadzenia zmian na
administrowanych przeze mnie serwerach pocztowych.
Utrzymywanie serwera pocztowego, który może być wykorzystany do
wysyłania spamu tą techniką może spowodować, że serwer ten zostanie
uznany za szkodliwy, w takim samym stopniu jak np. open relay lub open proxy. Podobnie jak istnieją czarne listy adresów IP (DNSBL)
skupiające adresy serwerów open relay i open proxy, powstaną takie,
które skupiają adresy serwerów umożliwiających stosowanie tej taktyki
(nazwijmy je roboczo "open bounce"). Moje poszukiwania w Internecie
wykazały, że już co najmniej jeden DNSBL skupia adresy takich serwerów (TQMcube)
Zmodyfikowanie serwera, aby odrzucał listy do nieistniejących odbiorców
przed ich przyjęciem nie zawsze jest łatwe. Administratorom pomóc może strona zawierająca szczegółowe informacje na ten temat oraz stosowne linki. Ze swojej strony mogę podpowiedzieć administratorom qmaila, że ten problem doskonale rozwiązuje łata realrcptto.
Test i jego wyniki
Postanowiłem przeprowadzić test, jak zachowują się polskie serwery. Skorzystałem z tej samej listy, co w teście na używanie szarych list: oto ona. Do przetestowania użyłem programu będącego modyfikacją tego, który użyłem do testowania szarych list: oto on.
Uwaga: program sprawdza tylko odpowiedź serwera po podaniu adresu
odbiorcy — czasem odrzucenie listu może nastąpić po podaniu jego treści
(jednak program został skonstruowany w ten sposób, by nie wysyłać
listów do wszystkich testowanych serwerów, a jedynie podejmować próbę,
która zostaje następnie przerwana).
Wyniki mnie przeraziły. Wszystko wskazuje na to, że spośród 114
przetestowanych serwerów, aż 47 (czyli ponad 40%) przyjęłoby list na
losowo wygenerowany, szesnastoznakowy adres w ich domenie (oto ich lista).
Postanowiłem więc sprawdzić czy w razie przyjęcia listu na
nieistniejący adres, serwery te odrzucają pocztę informując, że adres
nie istnieje (czyli czy mogą być w praktyce wykorzystane przez
spamera). Możliwe bowiem, że przyjmują listy na nieistniejące adresy,
ale są one wyrzucane do kosza lub przekierowywane do administratora.
Wyniki potwierdzają, że następujące serwery odrzucają pocztę (15 na 114
przetestowanych, czyli prawie 15%), czyli są serwerami "open bounce"
(podano po kolei adres serwera, nazwę domeny oraz oprogramowanie
serwera, uzyskane w oparciu o nagłówki listów lub sprawdzone za pomocą
narzędzia smptscan):
- bluehosting.pl (bluehosting.pl) — qmail 1.03 + vpopmail,
- mx2.boo.pl (boo.pl) — najprawdopodobniej Sendmail 8.11.x lub 8.12.x,
- mail.domena.pl (domena.pl) — qmail 1.03,
- esem.pl (esem.pl) — qmail 1.03 + vpopmail,
- mail.host1.pl (host1.pl) — qmail 1.03,
- hoster.pl (hoster.pl) — qmail 1.03 + vpopmail,
- lars.internetia.pl (nethosting.pl) — Exim 3.35,
- domino2.netia.pl (netia.pl) — Lotus Domino,
- trio.pocztowy.net (pocztowy.net) — Exim 4.43,
- smtp3.polbox.com (polbox.com) — Postfix 1.1.11,
- box.punkt.pl (punkt.pl) — najprawdopodobniej zmodyfikowany qmail 1.03,
- rozeta.com.pl (rozeta.com.pl) — Exim 3.35,
- ssl.v-net.pl (v-net.pl) — qmail 1.03 + vpopmail,
- vbiz.pl (vbiz.pl) — qmail 1.03 + vpopmail,
- tel.wizja.net (wizja.net) — Postfix 1.1.11.
Serwery dla domen: ibc.pl, virtual.pl odrzuciły list dopiero po podaniu
jego treści (a więc działają prawidłowo). Natomiast pozostałe nie
odpowiedziały, co sugeruje że listy na nieistniejące adresy są
automatycznie wrzucane do kosza lub np. kierowane na specjalne konto
(to zachowanie jest też jak najbardziej dopuszczalne, choć szkoda, iż
tak skonfigurowany serwer nie informuje nadawcy nie będącego spamerem
że np. pomylił adres).
Przy okazji testu okazało się, ze trzy serwery które wcześniej
greylistingu nie stosowały, teraz już go stosują (mail.4me.pl,
smtp.fr.pl oraz mx.inomail.pl), a także wykryłem że serwery MX dla
domen online.pl, pipni.pl oraz tpsa.pl są źle skonfigurowane —
odrzucają próby wysłania listu podając komunikat "relaying denied" lub
podobny, czyli traktują mnie jako zewnętrznego użytkownika próbującego
wysłać list do zewnętrznej domeny (!).
Najciekawszym przypadkiem okazały się jednak dwie domeny. Pierwsza to
polbox.com. List został przesłany do serwera podanego w DNS-ie jako MX,
czyli odpowiedzialnego za daną domenę, po czym zacząłem codziennie
dostawać od innego serwera (o zbliżonym IP) informacje o czasowym
niedostarczeniu wiadomości z komunikatem: "connect to free.polbox.pl:
Connection refused". Druga ciekawa domena to pocztowy.net (znacząca
nazwa...). Od serwera zarządzającego tą domeną zacząłem otrzymywać
komunikaty o opóźnieniu dostarczenia informujące, że serwer nie może
stworzyć katalogu dla poczty ("Permission denied: cannot create
/Maildir").
Jak widać, choć wsród serwerów dominuje qmail, to jest tu także
Sendmail, Exim oraz Postfix. Nie znam zbyt dobrze trzech ostatnich
wymienionych programów, tak więc nie wiem czy wynika to z
nieprawidłowej domyślnej konfiguracji, czy też z wad starszych wersji.
Podsumowanie
Podczas, gdy serwerów open relay i open proxy jest już bardzo niewiele,
serwerów "open bounce" jak widać chociażby w naszym kraju jest jeszcze
dużo. Jeśli spamerzy zaczną bardziej masowo korzystać z opisanej
taktyki, a wiele polskich serwerów wyląduje na czarnych listach, dużo
e-maili może do nas nie dochodzić. Sytuacja nie wygląda obecnie zbyt
różowo, szczególnie że nie zawsze łatwo jest zmienić sposób działania
serwera pocztowego. Aby jednak sytuacja uległa zmianie, należy o
problemie mówić. I dlatego zdecydowałem się zrobić ten test i opisać
jego wyniki.
Sprawdźcie proszę za pomocą mojego skryptu (albo samodzielnie) serwery
pocztowe na których macie konta. Prześlijcie informacje ich
administratorom — dla ich i dla Waszego dobra, aby serwery nie znalazły
się na czarnych listach, z których czasem trudno być usuniętym.
http://spam.jogger.pl
|
|
|