poniedziałek, 16 lutego 2015

REGEX poradzi sobie z "niemieckimi naukowcami"

Od kilkunastu dni nasz antyspam przepuszcza wiadomości z informacją, że niemieccy naukowcy zbudowali program, który zarabia pieniądze za darmo. Okazuje się, że nie tylko nasz system sobie z tym nie radzi, ale jest to problem dotykający generalnie "polski" internet.

Próbka takiego maila:

"
Niemieccy uczeni dokonali imponujacego odkrycia!
Stworzyli oni program, ktory handluje i zarabia pieniadze na gieldzie bez udzialu czlowieka!
W odroznieniu od czlowieka, program nie potrzebuje jedzenia, snu, nie myli sie i podejmuje decyzje dopiero po dokonaniu szczegolowej analizy calego rynku...
Zwykly czlowiek nie jest w stanie tego dokonac..

Nie spiesz sie. Nie zarabiaj wiecej niz 10 000 euro miesiecznie. W przeciwnym razie zwrocisz na siebie uwage i pokazesz, ze handluje za ciebie maszyna.
Instrukcje znajdziesz klikajac na odnosnik..
Nie trac czasu, graj i zarabiaj!
"

Mail za każdym razem przychodzi z innego adresu email, z innym tytułem, z inną treścią. Zawsze zawiera link, ale ten zawsze prowadzi gdzie indziej.

A jednak jest w tym prawidłowość..

Spójrzcie na budowę tych linków.. zawsze jest to jakiś skrypt PHP o mądrej nazwie (code.php, error.php, page.php, etc.)

Takie URL-e trafiły do naszych skrzynek:
http://go3mobilesites.com/options.php?7Aqyu=b9MaZy
http://2539.club/model.php?ZPdgVzg3=QjP
http://turkhafizleri.com/inc.php?BqYmR8=UjR6s
http://chungcu-hongkongtower.com/utf.php?GYw=g67wUUZD
http://podhalanie.com/config.php?jX=zJwo6JLmp
http://babytoshi.com/config.php?1=5H6NVqLTyV
http://womenshealthnet.org/template.php?5a9db5L=pkXc
http://appinmobiliaria.com/footer.php?EZ=Enznww7G5
http://tablainteractiva.ro/css.php?3GYyhx=HkoAf
http://fileppi.com/files.php?9i54rc=AzfCD
http://bookasailing.com/menu.php?9i54r=cAzfCD
http://fantaniarteziene.eu/dir.php?Cufyus=kNhP9
http://traderscapital.com/code.php?GyU3A=Uxt2po
http://praxisforum-europa.eu/error.php?efj3NAe=Svrk
http://riodio.eu/error.php?47Jn2=wbsFT1
http://siberserv.com/template.php?FcVeXfA=qaUq
http://tk-transport.eu/page.php?47Jn2=wbsFT1
http://karekartun.com/admin.php?WFt=8RReyJRk
http://rifkin-investments.com/lib.php?13dyeM=bg2aK
http://bresourceseventmanagement.com/lib.php?r98k8=XL2Rw
i tak dalej i tak dalej - mam tego zdecydowanie więcej.

Aż się prosi o REGEX.

Tu posiłkuję się onlinowym narzędziem https://regex101.com/ i buduję regex-a z palca.

Wychodzi mi na to, że poniższy REGEX obejmuje wszystkie moje przypadki:

http:\/\/[\d\w\-\.]+\.(\w){2,5}(\/\w+)?\/\w+\.php\?(\d|\w){1,10}=(\d|\w){1,10}[^&]

..choć przydałby się mądrzejszy (który np. uwzględnia słownikowe nazwy plików php: code.php, error.php, page.php, etc.), żeby zminimalizować ryzyko błędnej klasyfikacji.



Nasz firmowy software to Symantec Messaging Gateway 10.5. Okazuje się, że potrafi posługiwać się wzorcami regularnymi.

Klikam kolejno Content (na górze) > Patterns (po lewo) > Custom (zakładka). I dodaję nowy wzorzec (nazywam go sobie "SPAM by URL"). Wklejam wyżej zaproponowany REGEX.



Następnie trzeba zbudować politykę, która wykorzysta ten wzorzec. Dodaję nową politykę, klikając Content (u góry) > Polices | Email. Nazywam ją "SPAM by URL (by REGEX)".

Dodaję i definiuję warunek, jak poniżej na ilustracji. Dodaję akcję "Treat as suspected spam" (suspected dlatego że nie mam pewności, że zaproponowany REGEX nie zacznie wycinać rzeczy ważnych i potrzebnych).



Idąc dalej, ponieważ podjęte akcja znaczy "traktuj jako SPAM", muszę się upewnić, że na zakładce Spam mam przygotowaną odpowiednią politykę na "Suspected Spam".

W moim przypadku jest to przesunięcie maila do kwarantanny (user dostanie podsumowanie maili podejrzanych o bycie spamem - może je uwalniać indywidualnie z kwarantanny do swojej skrzynki).


To jest rozwiązanie podane na szybko. Ale daje nadzieję. Być może będzie wymagało drobnego dostosowania.

AKTUALIZACJA

Linki spamerów ulegają zmianie.

Pojawiły się nowe maila, których linki pasują do nowego wzorca:

http:\/\/[\d\w\-\.]+\.(\w){2,5}\/sites\/default\/files\/\w+\.php\?(\d|\w){1,10}=(\d|\w){1,10}[^&]

W Symantecu tworzę wzorzec (pattern) numer #2 i dodaję go do utworzonej uprzednio polityki (Email Content Filtering Policy) jako dodatkowy warunek. W polityce ustawione jest spełnienie dowolnego z warunków (Any).

Brak komentarzy:

Prześlij komentarz