CONTENT
- CHANGES
Szukaj
#top Konfiguracja¶
- Konfiguracja
- Plik smtpdfilter.conf
- SMTPd demon
- SMTP client
- paths
- plugins
- SPAM counter
- plugin: CLIENT-IPADDR-cidr
- plugin: CONT-body
- plugin: CONT-preg-pattern
- plugin: HEADers
- plugin: INS-CONT
- plugin: MAIL-FROM
- plugin: RCPT-TO
- plugin: SASL-MAILFROM
- Plik nets-cidr-list.conf
- Plik from-addr-list.conf
- Plik word-preg-pattern.conf
#top Plik smtpdfilter.conf¶
Główna konfiguracja demona przechowywana jest w pliku tekstowym smtpdfilter.conf, którego zarówna nazwa jak i lokalizacja może być określona poprzez podanie argumentu po opcji
-f /etc/smtpdfilter/smtpdfilter.conf
.#top SMTPd demon¶
Ustawienia sieciowe demona/serwera SMTP:
# # smtpdfilter.conf # serveraddr=0.0.0.0 serverport=10025 clientaddr=0.0.0.0 clientport=10026
Opcje
serveraddr
oraz serverport
określają adres IP oraz port na którym nasłuchuje demon plwiki:SMTP w oczekiwaniu na wiadomości do sprawdzenia. Obecnie obsługiwana jest tylko adresacja plwiki:IPv4,enwiki:IPv4, obsługa adresacji plwiki:IPv6,enwiki:IPv6 do zaimplementowania. Wartość serveraddr
ustawiona na 0.0.0.0
(jak w przykładzie powyżej) oznacza, że demon nasłuchuje na każdym adresie dostępnym na maszynie na której jest uruchomiony.Opcje
clientaddr
oraz clientport
określają adres IP oraz na jaki wiadomość po sprawdzeniu powinna zostać odesłana. Wartość clientaddr
ustawiona na 0.0.0.0
(jak w przykładzie powyżej) oznacza, że wiadomość zostanie odesłana z powrotem do maszyny z której została odebrana. Dzięki temu możliwe jest używanie jednego Content-Filtra dla wszystkich serwerów pocztowych jeśli pojawi się taka konieczność.#top SMTP client¶
Ustawienia sieciowe klienta SMTP:
# client options for send back smtpdtries=5 loopsleep=30
Opcja
smtpdtries
Opcja
loopsleep
#top paths¶
Ustawienia dotyczące ścieżek:
# path for: queuedur / logfile / pidfile datadir=/var/lib/smtpdfilter queuedir=/var/spool/smtpdfilter/queue debuglog=/var/log/smtpdfilter/smtpddebug.log smtpdlog=/var/log/smtpdfilter/smtpdfilter.log smtpdpid=/var/run/smtpdfilter.pid
Opcja
datadir
określa ścieżkę do katalogu, do którego SMTPdFilter powinien posiadać uprawnienia zapisu, w którym zapisywane są opcjonalne dane związane z działaniem filtra oraz pluginów.Opcja
queuedir
określa ścieżkę do katalogu, do którego SMTPdFilter powinien posiadać uprawnienia zapisu, w którym zapisywane są odebrane wiadomości od serwerów pocztowych poddawane przetwarzaniu. W przypadku gdyby z nieznanego powodu proces potomny Content-Filtra zakończył działanie, odebrana wiadomość nie zostanie utracona. Po wymuszeniu przeładowania konfiguracji proces wczyta pliki z kolejki oraz odeśle je z powrotem do serwera, od którego zostały odebrane bez ponownego już uruchamiania procesu filtracji.Opcja
debuglog
okresla ścieżkę do pliku, do którego SMTPdFilter powinien posiadać uprawnienia zapisu (lub uprawnienia do zapisu w katalogu w którym taki plik będzie się znajdował), w którym zapisywane są informacje szczegółowe dotyczącze działania SMTPdFiltra oraz jego pluginów.Opcja
smtpdlog
określa ścieżkę do pliku, do którego SMTPdFilter powinien posiadać uprawnienia zapisu (lub uprawnienia do zapisu w katalogu w którym taki plik będzie się znajdował), w którym zapisywane są standardowe informacje dotyczące działania SMTPdFilra oraz rezultat przetwarzania wiadomości.Opcja
smtpdpid
określa ścieżkę do pliku, w którym zostanie zapisany PID procesu SMTPdFilter (plik taki zostanie utworzony po uruchomieniu SMTPdFiltra, katalog w którym taki plik zostanie utworzony musi istnieć).#top plugins¶
Ustawienia związane z pluginami:
filterpath=/usr/lib/smtpdfilter/plugins filterpref=smtpdfilter filtersuff=pm.pl filterperm=1
Opcja
filterpath
określa katalog w którym znajdują się pluginy Content-Filtra.Opcje
filterpref
oraz filtersuff
określają wzorzec, który nazwa Content-Filtra musi spełniać, aby filtr został użyty jako plugin. Ścieżka do pliku z Content-Filtrem musi pasować do następującego wyrażenia: <filterpath>/<filterpref>*<filtersuff>
Aby dowolny skrypt napisany w języku perl mógł pełnić funkcję pluginu musi on spełniać kilka zasad:
- Skrypt musi mieć zdefiniowaną funkcję o nazwie:
perl_content_filter
- Funkcja o nazwie
perl_content_filter
jako argumenty wywołania przyjmuje następujące parametry:param handle $FHANDLE
param int \$retcntr
- reference intparam string \$retmsgs
- reference stringparam HASH \%CPSMTPD
- reference HASHstring ${$RCPSMTPD}{'HELO'} | $RCPSMTPD->{'HELO'}
string ${$RCPSMTPD}{'FROM'} | $RCPSMTPD->{'FROM'}
LIST @{${$RCPSMTPD}{'TO'}} | @{$RCPSMTPD->{'TO'}}
string ${$RCPSMTPD}{'DATA'} | $RCPSMTPD->{'DATA'}
param HASH \%CPSOCKINFO
- reference HASHstring ${$RCPSOCKINFO}{'sockaddr'} | $RCPSOCKINFO->{'sockaddr'}
string ${$RCPSOCKINFO}{'sockhost'} | $RCPSOCKINFO->{'sockhost'}
string ${$RCPSOCKINFO}{'sockport'} | $RCPSOCKINFO->{'sockport'}
string ${$RCPSOCKINFO}{'peeraddr'} | $RCPSOCKINFO->{'peeraddr'}
string ${$RCPSOCKINFO}{'peerhost'} | $RCPSOCKINFO->{'peerhost'}
string ${$RCPSOCKINFO}{'peerport'} | $RCPSOCKINFO->{'peerport'}
param HASH \%CPCONFIG
- reference HASHstring ${$RCPCONFIG}{value} | $RCPCONFIG->{value}
string ${$RCPCONFIG}{value} | $RCPCONFIG->{value}
string ${$RCPCONFIG}{value} | $RCPCONFIG->{value}
param HASH \%CPHEADERS
- reference HASHstring ${$RCPHEADERS}{'From'} | $RCPHEADERS->{'From'}
string ${$RCPHEADERS}{'To'} | $RCPHEADERS->{'To'}
string ${$RCPHEADERS}{'Subject'} | $RCPHEADERS->{'Subject'}
string ${$RCPHEADERS}{'...'} | $RCPHEADERS->{'...'}
- Funkcja o nazwie
perl_content_filter
jako wynik działania powinna zwracać wartość numeryczną:0
- plugin returned status in references$retcntr
+$retmsgs
-1
- means DROP message1
- means ACCEPT message (messsage counter=0 and stop analyze message)2
- plugin modified content or headers
#top SPAM counter¶
Ustawienia dotyczące klasyfikacji wiadomości jako pożądane/niepożądane:
# count pkts which causes marked message as SPAM spamcountpkts=-20 # useful when other than dovecot IMAP/POP3 server is used, # and there is not sieve filters which enable server site filtering messsages # so prepend Subject with below prefix (to disable set this empty) # oryginal Subject will be saved in extra header: X-Subject-Orig # do not forget append at the end space " " #spamsubjectprefix="[SPAM %d] " spamsubjectprefix=""
Opcja
spamcountpkts
określa ilość punktów powyżej której wiadomość zostanie określona jako niechciana oraz w nagłówku wiadomości Received-PCF
zostanie umieszczona liczba puntków oraz słowo SPAM
dzięki któremu dosyć łatwo napisać regułę z uzyciem filtrów/pluginów Sieve wiki1:LDA:Sieve,wiki2:Pigeonhole:Sieve dla serwera Dovecot, aby wiadomości były automatycznie przenoszone do folderu SPAM.Opcja
spamsubjectprefix
określa prefiks (tekst dodawany na początku istniejącego tematu wiadomości), który w sposób widoczny dla odbiorcy wiadomości pozwala określić, że wiadomość została oznaczona jako SPAM. Przydatne w przypadku serwerów IMAP, które nie obsługują przenoszenia (umieszczania w określonych folderach) wiadomości po stronie. W ten sposób łatwo napisać regułę w kliencie pocztowym, aby przenosił wiadomości do odpowiedniego folderu z określonym prefiksem temacie wiadomości.#top plugin: CLIENT-IPADDR-cidr¶
Ustawienia wykorzystywane przez plugin
CLIENT-IPADDR-cidr
# smtpdfilter---CLIENT-IPADDR-cidr---pm.pl # increase/decrease message count when: received from ipaddr match networkd defined in nets_cidr_file_list nets_cidr_adds_pkts=-5 nets_cidr_file_list=/etc/smtpdfilter/nets-cidr-list.conf
Opcja
nets_cidr_adds_pkts
określa domyślną liczbę punktów, które są przyznawane odebranej wiadomości z adresu IP lub podsieci określonych w pliku zdefiniowanym opcją nets_cidr_file_list
.Opcja
nets_cidr_file_list
określa ścieżkę do pliku w którym znajduje się lista adresów IP lub podsieci, dla których wiadomość otrzymuje domyślną liczbę punktów lub liczbę punktów określoną dla danego wpisu w pliku jeśli wpis adresu IP lub podsieci posiada własną punktację. Przykładowe wpisy przedstawione są poniżej w sekcji Plik nets-cidr-list.conf.Dla przykładu: jeśli wiadomość zostanie odebrana z poniższego adresu znajdującego się w pliku okreslonym opcją
nets_cidr_file_list
, wiadomość otrzyma domyślną liczbę punktów określoną opcją nets_cidr_adds_pkts
:10.41.0.54/32
Dla przykładu: jeśli wiadomość zostanie odebrana z poniższego adresu znajdującego się w pliku określonym opcją
nets_cidr_file_list
, wiadomość otrzyma liczbę punktów określoną dla niniejszego adresu IP, czyli tak jak poniżej -20
:10.41.0.56/32 = -20
#top plugin: CONT-body¶
Ustawienia wykorzystywane przez plugin
CONT-body
# smtpdfilter---CONT-body---pm.pl # increase/decrease message count when: message $body: contains percentage of all message great than body_cont_href_percent=0.40 body_cont_href_pkts=-15 body_cont_html_percent=0.80 body_cont_html_pkts=-15 body_cont_html_only_pkts=-15 body_cont_boundary_missing_pkts=-15 body_cont_diff_plaintext_html2text_pkts=-15
Opcja
body_cont_href_percent
określa minimalną procentową zawartość adresów URL w treści wiadomości, po przekroczeniu której wiadomość otrzymuje określoną opcją body_cont_href_pkts
ilość punktów. Dla przykładu: treść wiadomości zawiera 100 znaków, adresu URL, które można wyodrębnić z treści wiadomości stanowi co najmniej 40 znaków, procentowa zawartość adresów URL w treści wiadomości będzie większa niż 0.40 (40%), co klasyfikuje wiadomość jako podejrzaną, gdyż zwykle wiadomości nie zawierają treści składającej się niemal z samych adresów URL.Opcja
body_cont_href_pkts
określa ilość punktów przyznawana wiadomości w przypadku kiedy treść wiadomości zawiera procentowo więcej adresów URL niż określono opcją body_cont_href_percent
.Opcja
body_cont_html_percent
określa minimalną procentową zawartość kodu HTML w treści wiadomości (wiadomość zawiera więcej kodu HTML niż treści sformatowanej kodem HTML), po przekroczeniu której wiadomość otrzymuje określoną opcją body_cont_html_pkts
ilość punktów. Dla przykładu: treść wiadomości zawiera 100 znaków, po usunięciu kodu HTML (tagów HTML, znaczników HTML) treść wiadomości zmiejszy się do mniej niż 20 znaków, stąd co najmniej 80 znaków w treści wiadomości to kod HTML, co stanowi ponad 0.80 (80%) treści wiadomości, co klasyfikuje wiadomość jako podejrzaną i raczej jako bezużyteczną. Kod HTML ma za zadanie sformatować treść wiadomości, a nie sam stanowić treść wiadomości.Opcja
body_cont_html_pkts
określa ilość puntków przyznawana wiadomości w przypadku, kiedy treść wiadomości zawiera procentowo więcej kodu HTML niż określono opcją body_cont_html_percent
.Opcja
body_cont_html_only_pkts
określa ilość puntków przyznawana wiadomości w przypadku gdy wiadomość zawiera tylko treść w formacie HTML bez treści czystego tekstu (plain/text) lub treść jest pusta.Opcja
body_cont_boundary_missing_pkts
określa ilość punktów przyznawana wiadomości w przypadku, gdy w nagłówkach wiadomości zadeklarowana jest treść MIME składająca się z wielu części, natomiast w treści brakuje odpowiedniej konkstrukcji.Opcja
body_cont_diff_plaintext_html2text_pkts
określa ilość punktów przyznawana wiadomości w przypadku, gdy treść wiadomości w części Content-Type: text/html pozbawiona znacznikow (czysty tekst) stanowi połowę wielkości treści czystego tekstu (plain/text) lub jest dwa razy większy, co budzi podejrzenie, że treści wiadomości przesłane w alternatywnych formatach różnią się od siebie zawartością.#top plugin: CONT-preg-pattern¶
Ustawienia wykorzystywane przez plugin
CONT-preg-pattern
# smtpdfilter---CONT-preg-pattern---pm.pl # increase/decrease message count when: match one pattern defined in word_preg_file_list word_preg_adds_pkts=-5 word_preg_file_list=/etc/smtpdfilter/word-preg-pattern.conf
Opcja
word_preg_adds_pkts
określa domyślną liczbę punktów, które są przyznawane odebranej wiadomości, w przypadku znalezienia w treści lub temacie wiadomości wyrażenia określonego w pliku zdefiniowanego opcją word_preg_file_list
.Opcja
word_preg_file_list
określa ścieżkę do pliku w którym znajduje się lista wyrażeń, dla których po znalezieniu ich w treści lub temacie wiadomości, wiadomość otrzymuje domyślną liczbę punktów lub liczbę punktów określoną dla danego wyrażenia, jeśli wyrażenie posiada własną punktację. Przykładowe wpisy przedstawione są poniżej w sekcji Plik word-preg-pattern.conf.Dla przykładu: jeśli poniższe wyrażenie zawarte w pliku określonym opcją
word_preg_file_list
zostanie znalezione w treści lub temacie wiadomości, wiadomość otrzyma domyślną liczbę punktów określoną opcją word_preg_adds_pkts
:Alert
Dla przykładu: jeśli poniższe wyrażenie zawarte w pliku określonym opcją
word_preg_file_list
zostanie znalezione w treści lub temacie wiadomości, wiadomość otrzyma liczbę punktów określoną dla niniejszego wyrażenia, czyli tak jak poniżej -10
:Make More = -10
#top plugin: HEADers¶
Ustawienia wykorzystywane przez plugin
HEADers
# smtpdfilter---HEADers---pm.pl # 2014/07/02: moved into plugin: CONT-body #header_texthtml_pkts=-15 header_required_pkts=-10 header_required_keys=^Message-[Ii][Dd]|^Content-Type=-5|^User-Agent=-5|^Date|^From|^To|^Subject header_extra_pkts=-10 header_extra_keys=Sender|^X-[Pp][Hh][Pp]|X-TEST|X-[Mm][Aa][Ii][Ll][Ee][Rr]|X-[Mm][Rr][Aa][Ss]|X-[Ss][Pp][Aa][Mm]|X-[Uu][Nn][Ss][Uu][Bb]|X-[Ss][Ee][Nn][Dd][Ee][Rr]|X-[Rr][Ee][Cc][Ee][Ii][Vv][Ee][Rr]|X-Priority header_date_future_pkts=-15 header_date_past_pkts=-10 # date diff (future) max 300 seconds (5 minut), in other case not real Date header_date_future_diff=300 # date diff (past) max 172800 seconds (2 days), in other case not real Date header_date_past_diff=-172800
Opcja
header_required_pkts
określa domyślną ilość punktów przyznawana wiadomości w przypadku, gdy wiadomość nie zawiera jednego z wymaganych nagłówków wiadomości określonych opcją header_required_keys
.Opcja
header_required_keys
określa listę nagłówków rozdzielonych znakiem pipe |
, za brak dowolnego nagłówka z tej listy wiadomość otrzymuje liczbę punktów określoną opcją header_required_pkts
. Lista zawiera nagłówki obligatoryjne, które zawsze znajdują się w wiadomości wysyłanej z użyciem dowolnego desktopowego klienta pocztowego (programu komputerowego).Opcja
header_extra_pkts
określa domyślną ilość punktów przyznawana wiadomości w przypadku, gdy wiadomość zawiera jeden z nadmiarowych nagłówków wiadomości określonych opcją header_extra_keys
.Opcja
header_extra_keys
okresla listę nagłówków rodzielonych znakiem pipe |
, za obecność dowolnego nagłówka z tej listy wiadomość otrzymuje liczbę punktów określoną opcją header_extra_pkts
. Lista zawiera nagłówki, które często posiadają wiadomości niepożądane lub niechciane, a które to trudno dodać do wiadomości za pomocą dowolnego desktopowego klienta pocztowego (programu komputerowego).Opcja
header_date_future_pkts
określa ilość punktów przyznawana wiadomości w przypadku, gdy data wiadomości przedstawia przyszłą datę (niemożliwe jest wysłanie wiadomości z daty w przyszłości). Metoda często jest wykorzystywana, gdyż przy posortowaniu wiadomości według daty od najnowszej, wiadomości zawierające datę z przysłości zawsze będą znajdować się na początku listy.Opcja
header_date_past_pkts
określa ilość punktów przyznawana wiadomości w przypadku, gdy data wiadomości przedstawia przeszłą datę (jeśli wiadomość zbyt długo znajdowała się w kolejce do wysłania, to data dostarczenia wiadomości może znacznie różnić się od daty wysłania, jednakże data zbyt przeszła budzi wątpliwości).Opcja
header_date_future_diff
określa maksymalną ilość czasu różnicy, powyżej której wiadomość jest uznawana za wiadomość z przyszłości. Data wiadomości tworzona jest przez aplikację wysyłającą wiadomość, na której czas nie musi być zsynchronizowany, stąd może pojawić się pewna rozbieżność pomiędzy czasem bieżącym a czasem który jest umieszczany w nagłówkach jako data wysłania wiadomości.Opcja
header_date_past_diff
okresla maksymalną ilość czasu różnicy, powyżej której wiadomość jest uznawana za wiadomość bardzo przedawnioną. Data wiadomości tworzona jest przez aplikację wysyłającą wiadomość, na której czas nie musi być zsynchronizowany, stąd może pojawić się pewna rozbieżność pomiędzy czasem bieżącym a czasem który jest umieszczany w nagłówkach jako data wysłania wiadomości.#top plugin: INS-CONT¶
Ustawienia wykorzystywane przez plugin
INS-CONT
# smtpdfilter---INS-CONT---pm.pl #inscont_file_textfooter= #inscont_file_htmlfooter=
Opcja
inscont_file_textfooter
Opcja
inscont_file_htmlfooter
#top plugin: MAIL-FROM¶
Ustawienia wykorzystywane przez plugin
MAIL-FROM
# smtpdfilter---MAIL-FROM---pm.pl # increase/decrease message count when: from_mailfrom1diff2hdrsfrom_pkts=10 when domain(MAILFROM)!=domain(From) # domain to avoid marking message sended by root: MAILFROM: root@... From: logwatch@... from_mailfrom1diff2hdrsfrom_pkts=-20 # increase/decrease message count when: multiple sender in From: sender1@domain, sender2@domain ... from_multiplemailfrom_pkts=-50 # increase/decrease from_addr_adds_pkts=0 from_addr_file_list=/etc/smtpdfilter/from-addr-list.conf
Opcja
from_mailfrom1diff2hdrsfrom_pkts
określająca ilość punktów przyznawaną wiadomości w przypadku rozbieżności nadawcy wiadomości przedstawianej serwerowi poczty i nadawcy umieszczanego w treści wiadomości (dzięki czemu możliwe jest preparowanie wiadomości wysłanej od samego siebie do samego siebie pomimo, że wiadomość została odebrane z zewnętrznego serwera pocztowego nie obsługującego domeny odbiorcy).Opcja
from_multiplemailfrom_pkts
Opcja
from_addr_adds_pkts
Opcja
from_addr_file_list
Przykładowe wpisy przedstawione są poniżej w sekcji Plik from-addr-list.conf.Dla przykładu: jeśli wiadomość zostanie odebrana od poniższego nadawcy (host w komunikacja z serwerem po komendzie
MAIL FROM:
poda adres zawierający w dowonym miejscu poniższy ciąg znaków) znajdującego się w pliku okreslonym opcją from_addr_file_list
, wiadomość otrzyma domyślną liczbę punktów określoną opcją from_addr_adds_pkts
:example.org
Dla przykładu: jeśli wiadomość zostanie odebrana od poniższego nadawcy (host w komunikacja z serwerem po komendzie
MAIL FROM:
poda adres zawierający w dowolnym miejscu poniższy ciąg znaków) znajdującego się w pliku określonym opcją from_addr_file_list
, wiadomość otrzyma liczbę punktów określoną dla niniejszego nadawcy, czyli tak jak poniżej -20
:spam.example.com = -20
#top plugin: RCPT-TO¶
Ustawienia wykorzystywane przez plugin
RCPT-TO
# smtpdfilter---RCPT-TO---pm.pl # increase/decrease message count when: header To: not found or empty toto_rcptto1notin2hdrstoto_pkts=0 toto_rcptto1in2mailfrom_pkts=-15 toto_dburls_recipients=text:///var/lib/smtpdfilter/recipients.txt
Opcja
toto_rcptto1notin2hdrstoto_pkts
Opcja
toto_rcptto1in2mailfrom_pkts
Opcja
toto_dburls_recipients
#top plugin: SASL-MAILFROM¶
Ustawienia wykorzystywane przez plugin
SASL-MAILFROM
# smtpdfilter---SASL-MAILFROM---pm.pl
#top Plik nets-cidr-list.conf¶
Plik zawiera listę adresów IP lub podsieci nadawców wiadomości.
Plik zawiera listę adresów IP lub podsieci nadawców wiadomości.
Plik zawiera listę adresów IP lub podsieci nadawców wiadomości.
# nets-cidr-list.conf # ------------------- # CIDR/MASK = -value - increase spam counter (increase probability it is a SPAM) # CIDR/MASK = value - decrease spam counter (decrease probability it is a SPAM, increase probability it is NOT a SPAM) # CIDR/MASK = OK - WHITE LIST, set permamently 0 pkts and stop processing other plugins # CIDR/MASK = NOK - BLACK LIST, set permamently -spamcounterpkts and stop processing other plugins # 10.41.0.54/32 = -30 # 10.0.0.3/32 = -30 # 10.0.0.3/32 = 30 # 10.0.0.3/32 = NOK # 10.0.0.3/32 = OK
#top Plik from-addr-list.conf¶
Plik zawiera listę adresów lub domen nadawców wiadomości.
Plik zawiera listę adresów lub domen nadawców wiadomości.
Plik zawiera listę adresów lub domen nadawców wiadomości.
# from-addr-list.conf # ------------------- # FROM_ADDR = -value - increase spam counter (increase probability it is a SPAM) # FROM_ADDR = value - decrease spam counter (decrease probability it is a SPAM, increase probability it is NOT a SPAM) # FROM_ADDR = OK - WHITE LIST, set permamently 0 pkts and stop processing other plugins # FROM_ADDR = NOK - BLACK LIST, set permamently -spamcounterpkts and stop processing other plugins # good.user@example.org = 20 # spam.user@example.org = -20 # salesforyou.info = OK # salesforyou.info = NOK
#top Plik word-preg-pattern.conf¶
Plik zawiera listę słów.
Plik zawiera listę słów.
Plik zawiera listę słów.
# word-preg-pattern.conf # ---------------------- # pattern-word [ = -/+optional-pkts ] # logwatch contains: Begin #[Bb]egin # some email can contains Specialist # Special Alert # logwatch contains: company in http error log (www/default/img/company/...) #company getting Ready Major COUNTY LINE ENERGY Symbol traded C_Y Last Trade $.[0-9][0-9][0-9] 8-Day Target Giving Future Bulls $[0-9].[0-9][0-9][0-9] STOCK GOING HIGHER BUY NOW = -10 MAKE MORE = -10 Buy more = -10 benefity = -10 penis.* = -10 # some webpage software send Your password reminder # Your Research NOW offer personal discount wynagrodzenia.pl ###pracodawcy [Pp][Ee][Nn][Ii][Ss] = -30 [sS][eE][kK][sS] = -30 sponsorowane [Ee][Rr][Ee][Kk][Cc][Jj][AaEe] = -15 [Mm][Ii][Ee][Ss][Zz][Kk][Aa][Nn][Ii][Oo][Ww][Ee] <[Hh][Tt][Mm][Ll]> </[Hh][Tt][Mm][Ll]> <[Hh][Ee][Aa][Dd]> </[Hh][Ee][Aa][Dd]> <[Tt][Ii][Tt][Ll][Ee]> </[Tt][Ii][Tt][Ll][Ee]> <[Bb][Oo][Dd][Yy]> </[Bb][Oo][Dd][Yy]> <[Cc][Ee][Nn][Tt][Ee][Rr]> </[Cc][Ee][Nn][Tt][Ee][Rr]> <[Bb][Rr][ ]*/> <[Bb][Rr][ ]*> <a> <a[^>]+> </a> [Zz][Aa][Rr][AaOo][Bb][Ii][AaCc] #[0-9][0-9] [Zz][Ll] #[0-9][0-9] [Zz].. # r e k l a m a [Rr][Ee][Kk][Ll][Aa][Mm][Oo] [Kk][Uu][Pp][Ii][Ll][Ee][Mm] [Kk][Uu][Pp][Ii]..[Ee][Mm] dzialanosc dzia.ano.. dzia..alno.... menadzerow menad.er.w menad.er..w menad..er.w menad..er..w regionalnych wydawa.. naukowcy odkry.. rewolucj. [ ]buy[ ] risk budget product price [Uu]nsubscribe [Ss]prawd.. tutaj [Ss]prawd. tutaj [Ss]prawd.. jak [Ss]prawd. jak [Cc]zytaj dalej [Dd]owiedz się więcej [Dd]owiedz si.. wi..cej [Cc]zytaj tutaj pigu..ki pigu.ki stymulatory kliknij tutaj kutatas = -10 Dr. Chan amely cikket teljes vannak employ payment application artyku.. mened.er mened..er
Zmodyfikowany ostatnio: 2014/11/26 15:52:58 (10 lat temu),
textsize: 24,7 kB,
htmlsize: 37,2 kB
Zapraszam do komentowania, zgłaszania sugestii, propozycji, własnych przykładów, ...
Dodaj komentarzKomentarze użytkowników