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).

wtorek, 3 lutego 2015

IBM TS3100 - You can reuse cleaning tapes labels

IBM TS3100 is LTO tape library (autoloader). Onboard software offers auto cleaning feature. The library makes decision when to load and use cleaning tape. To use that feature you have to reserve one or more slots for cleaning tapes at management webapp. (Other method is not to use auto cleaning and schedule cleanings at backup software installed on server.)

Screenshot below, active slots set to 21, so slots no. 22 and 23 are reserved for cleaning tapes (Symantec BackupExec can see only 1-21 slots and the portal slot)



This is cleaning tape from IBM with genuine label (included with TS3100 device). You can see label which begins with CLNU prefix and L1 suffix.


This is reorder code included on that tape (photo below) - 35L2086:


The LTO library alerted me that both of our cleaning tapes are worn out (50 loads per tape). I did ordered another two tapes using reorder code 35L2086.

But the new 35L2086 came without labels (photo below):


Some questions appeared in my head:

  • Does library really need a label on a tape? There are slots reserved for cleaning tapes. LTO tapes have got number of uses stored on chip - so library does not have to store it in own memory and to refer by label ID, does it? Empty slot in magazine has its own label - so library can recognize if slot is occupied even if tape has not a label on it, can't it?
  • Can I use any new label on a tape with auto cleaning feature (with no CLNU prefix)?
  • Can I reuse a label from old tape? Can it be safely removed without being damaged? How onboard software manage new tape (new chip) and label with already known ID.
  • Will I have to make an order for new custom labels (which is not cheap and takes time)?
All screenshot below are taken after first new tape (slot 23) was forced to work with the library. Watch slot 22 at screenshots below.

The management webapp alerts "end of life" of tape at 22 (50 media loads):



I am taking away old tape from 22 slot (by removing whole right magazine).

Slot 22 is empty. Label value is "-----------".

I am exchanging tape at 22 with new cleaning tape WITHOUT any label on it (by removing whole right magazine).
The unlabeled tape is at slot 22 (screenshot above). Label value is "Unknown". The library can notice that slot is occupied but it does not try to read a tape. There is NO "Cleaning Tape" in a "Comment" column. You cannot also choose slot 22 for cleaning task from webapp (only 23 slot is on dropdown list).

Now I am removing genuine label sticker from old IBM tape. I have to use Victorinox knife to catch a corner at first. Then I am pulling a label. The label sticker is strong enough. It's in one piece after operation. Then I putting a label back to new tape. It sticks very well. It won't fall off.

I am putting new tape labeled with old sticker into slot 22 once again.

Now slot 22 is recognized as "Cleaning Tape" (still don't know if "CLNU" prefix has something in common). Notice that "Media Loads" is without value (it was 50 earlier with the same label).

Now I am forcing to clean a drive with webapp menu. Slot 22 is available as cleaning tape source.


Works! After job is completed "Media Loads" is incremented to 1 for this tape.

My ass The world is saved!

Conclusions:

  1. You can reuse old labels because they are strong and TS3100 has no problem with duplicating ID on new tape. Still don't know if there is possibility to use any new label - without CLNU prefix. Maybe (I didn't want to loose any of new label for this exercise).
  2. Reorder No. on IBM tape does not determine if the label is included.
  3. While ordering custom labels for new labels - add some labels for future cleaning tapes.