Ciekawy(?) spam II

Krótkie nawiązanie do poprzedniego wpisu. Trochę dlatego, że pojawiło się kilka komentarzy, a i nowy egzemplarz spamu również w filtrach się zatrzymał.

Może najpierw kilka słów o tym, jak spam ten konkretnie(j) wygląda. Jest to długi tekst, pojedynczy komentarz zawiera ponad 7000 znaków (ponad 900 słów). Rozie pytał się, czy w treści jest dużo linków - nie, w takiej treści znajduję tylko 5 razy adres strony, która prawdopodobnie jest reklamowana. W pobliżu tego adresu znajdują się słowa kluczowe, na które prawdopodobnie “atakujący” chcą się pozycjonować. Zaskakująco(?) jest to prawdopodobnie fraza pozycjonowanie (stron) w google. Samo pozycjonowanie chyba nie wychodzi najlepiej, jeśli ktoś chce sprawdzić – proszę bardzo: ZnJlY3BlbnNnLmN5 (base64, rot13). Ta strona nie pojawia się wysoko na liście wyników dla wspomnianej frazy.

W kilku komentarzach pojawiało się przypuszczenie, że treść “komentarza” może być wynikiem pracy translatora. Raczej na pewno tak nie jest. Świadczy o tym choćby taka fraza:

Gorala ZAGoRZANINA, ktorego przedwczesna smierc okryla smutkiem takze rodzinnej MSZANIE DOLNEJ, znajduje sie. (...)

Mam poważne wątpliwości czy w anglojęzycznych tekstach pojawiają się tak bardzo “lokalne” dla naszego regionu słowa i nazwy miejscowości. Poza tym za naszym krajowym pochodzeniem tego spamu przemawia również to, kto w ten sposób się reklamuje (patrz wyżej – adres).

Swoją drogą sam pomysł użycia translatora jest dość sprytny. Konkretnie chodzi mi o to, że bot teoretycznie może operować na pewnej bazie tekstów, z których generuje w miarę unikalny komentarz. By zwiększyć swoje szanse powodzenia może jednak przed wysłaniem komentarza najpierw rozpoznać język właściwy dla danego miejsca (np. forum, bloga), przygotowany tekst automatycznie przetłumaczyć na właściwy język i dopiero w takiej postaci wysłać. Choć z drugiej strony być może skuteczniejszą techniką byłoby użycie innych komentarzy i tekstów z atakowanego forum do wygenerowania komentarza. Jeśli jest stosowany jakiś mechanizm statystyczny do klasyfikacji komentarza jako spam/nie spam, to występujące w opublikowanych komentarzach wyrazy/frazy są prawdopodobnie uważane za “czyste”. Zresztą mimikra (zwłaszcza kukułka mi tutaj pasuje) mogłaby być dalej posunięta, choćby w zakresie długości treści komentarza.

Jak wytłumaczyć brak polskich znaków? Wydaje mi się, że jest to zabieg celowy – tu dodatkową wskazówką mogą być małe litery występujące w miejscu polskich znaków w tych wyrazach, które są pisane wielkimi literami. Cytowany wyżej fragment nie jest odosobniony, inny przykład:

(...) pare Jego pierwszych ksiazek. ZAKOnCZENIE Pod koniec 1987 r. pare Jego pierwszych ksiazek. (...)

W sumie nie wiem dlaczego z polskiego tekstu usuwać polskie znaki, skoro spam jest adresowane na polskie strony i pod polskie ofiary. Odwieczny problem z różnymi kodowaniami naszych narodowych krzaczków? A może upośledzenie narzędzi spamujących?

Najprawdopodobniej wynikowy tekst “komentarza” jest generowany na podstawie bazy tekstów w języku polskim. Sam algorytm może być zbliżony do tego, o którym wspominał k4. Tekst nie musi być sensowny, nie jest przeznaczony dla człowieka. Jego celem jest zapewne oszukanie automatycznych filtrów (wspominałem o filtrach bayesowskich). W moim akurat przypadku wszystkie(?) przypadki zostały prawidłowo zakwalifikowane jako wymagające sprawdzenia, więc ta taktyka nie sprawdza się do końca skutecznie. Sama technika nie jest zresztą żadną nowością, wrzucanie w treść starego dobrego mailowego spamu dużej ilości “neutralnego” tekstu jest przecież stosowane od dawna.

W poprzednim wpisie zastanawiałem się nad ewentualną skutecznością użycia przy ocenie wiadomości kryteriów związanych z ortografią i gramatyką. Może nawet nie trzeba wchodzić na tak wysokie poziomy (zwłaszcza w tym drugim przypadku), ale wystarczającym podejściem będzie oparcie się na statystyce? Dla jasności – nie chodzi mi o projektowanie systemu do wychwytywania spamu, raczej po prostu zastanawiam się, czy w przypadku tej konkretnej techniki stosowanej przez spamerów prosta statystyka dotycząca, na przykład, prawdopodobieństwa wystąpienia w prawidłowym tekście określonych fraz składających się z dwóch lub trzech wyrazów, byłaby skuteczna. A jeśli tak, to w jakim stopniu. I jak na skuteczność wpłynęłoby uwzględnienie polskiej fleksji.

P.S. Jeśli ktoś chce zobaczyć jak w całości wyglądają te komentarze, proponuję poszukać po podanym adresie reklamowanej, tfu , “firmy”.

Oryginał tego wpisu dostępny jest pod adresem Ciekawy(?) spam II

Autor: Paweł Goleń