Filtr na trolla

Bycie trollem internetowym ma swoje plusy i minusy, można kogoś zbluzgać bez powodu i cieszyć się swoją głupotą, czasami jednak administratorzy stron walczą z trollami stosując wymyślne filtry.

Tak jest lub było w przypadku wykrywania znanego „klaczowego” trolla okupującego swego czasu forum 4programmers, sprytny administrator Adam Boduch postanowił walczyć z twórczością trolla stosując taki oto wymyślny filtr:

<?php

/* ... */

Wrapper\Engine::instance()->atInit(function($engine) {
    $is_troll_z_play = has_troll_cookie();

    if ($_SERVER['REQUEST_METHOD'] === 'POST' && @$_GET['mode'] === 'submit') {
        if (isset($_POST['username']) && isset($_POST['content'])) { // tylko anonimow
            $matches_nick = troll_count_matches($_POST['username'], array(
                '/deus/i'               => 2.0,
                '/klacz/i'              => 2.0,
                '/demonical.?monk/i'    => 2.0
            ));
            $pattern_body = array(
                '/(?<!u)rucha/i'        => 1.0,
                '/klacz/i'              => 1.0,
                '/kutas/i'              => 1.0,
                '/sra/i'                => 1.0,
                '/g(ó|o)wn/i'          => 1.0,
                '/sperm/i'              => 1.0,
                '/ss(a|ie)/i'           => 0.5,
                '/wyli(z|ż)/i'         => 0.5,
                '/stajni/i'             => 0.5,
                '/zoofil/i'             => 0.5
            );
            $matches_body = troll_count_matches($_POST['content'], $pattern_body);

            if (isset($_POST['subject'])) { // nowy temat
                $matches_body += 1.5 * troll_count_matches($_POST['subject'], $pattern_body);
                $matches_body += 1.5 * troll_count_matches($_POST['tag'], $pattern_body);
            }
            if ($matches_nick + $matches_body > 2 || has_troll_cookie()) {
                $is_troll_z_play = true;

                $engine->log('contents.log', array(
                    'username'  => $_POST['username'],
                    'content'   => $_POST['content'],
                    'title'     => @$_POST['title'],
                    'tag'       => @$_POST['tag']
                ));
            }
        }
    }
    if ($is_troll_z_play) {
        define('TROLL_Z_PLAY', true);

        unset($_COOKIE['sid']);
        unset($_COOKIE['temp']);
    }
});

/* ... */

Regularne wyrażenia w połączeniu z systemem punktacji pozwoliły raz na zawsze pozbyć się trolla z forum, a Wam prezentuję to jako znakomity pomysł na wykrywanie tego typu niechcianych treści na stronach.

Magazyn Programista 1/2014

Ukazał się nowy numer miesięcznika Programista 1/2014.

Magazyn Programista 1/2014

W numerze:

  • Wprowadzenie do Entity Framework
  • Jak używać IBM Worklight – część 2
  • Wstęp do WPF – część 1
  • Web Crawling oraz Text Mining przy wykorzystaniu RapidMiner
  • PLY oraz Python, czyli sposób na Lexa oraz Yacca
  • Tworzenie usługi sieciowej opartej o Twisted
  • Automatyczne Testowanie Aplikacji JavaScript na przykładzie aplikacji napisanej w Backbone.JS
  • Zakodowana pomoc
  • Receptury projektowe – niezbędnik początkującego architekta
  • Strefa CTF – 30C3 CTF – cableguy
  • Pozyskaj pracownika albo zgiń!
  • Systemy proste, skomplikowane, złożone i chaotyczne, czyli Cynefin.
  • Programowanie równoległe i asynchroniczne w C# 5.0

Zachęcamy do lektury!

Process Explorer z obsługą VirusTotal

Process Explorer zyskał funkcjonalność pozwalającą na sprawdzenie plików procesu w skanerze VirusTotal:

procexpŻeby sprawdzić proces w VirusTotal należy kliknąć go prawym klawiszem myszy i wybrać w menu opcję sprawdzania:

checkVTPrzed skanowaniem pliku należy zaakceptować warunki TOS VirusTotal-a:

VT_TOSI naszym oczom ukaże się dodatkowa informacja, informująca o ilości detekcji po skanowaniu:

fileProp
Całkiem fajne 🙂

GG przegląda prywatne linki

ikony-gg-11Człowiek uczy się całe życie, ja dzisiaj nauczyłem się, że lepiej nie przesyłać prywatnych linków przez komunikator GG, gdyż ich mały bot lubi sobie zajrzeć co siedzi pod tym linkiem, a co się z tymi informacjami dzieje, kto wie?

91.197.15.34 - - [12/Jan/2014:22:28:05 +0100] "GET / HTTP/1.1" 302 5 "-" "GG PeekBot 2.0 ( http://gg.pl/ http://info.gadu-gadu.pl/praca )"

Więc następnym razem jak będziesz wysyłał znajomemu linka do super tajnego projektu 3 razy się zastanów czy aby koniecznie to zrobić przez GG 😉

Haker się sprzedał (forum). Prawdziwych hakierów już nie ma!

Święta minęły, Kevin był, a tutaj po rozmowie z zaprzyjaźnionym ex-moderatorem forum haker.com.pl dowiedziałem się, że owe forum zostało sprzedane. Kyrie elejson – skąd ja wezmę teraz cryptery!?

Serwis wystawiony był na aukcji Allegro za początkowe 10.000 PLN. Screenshota mam z cache’u Google:

haker_allegro_1haker_allegro_2

Na forum zarejestrowanych było 114 tysięcy użytkowników i wycenione zostało przez właściciela na 24.000 PLN (chociaż skoro wycenione na 24k dlaczego wystawione za 10k nie wiadomo). Wynika z tego, że każdy haker na haker.com.pl wyceniony był na 21 groszy, a wystawiony za 8 groszy, takiej floty hakerów za taką cenę może pozazdrościć samo NSA 🙂

Sprzedaż serwisu wzbudziła wiele kontrowersji wsród starej kadry moderatorów(ek):

haker_gorzkie_zale_1

Zwłaszcza, że nowy admin zaczął od wywalenia wielu wątków w dziale organizacyjnym, w tym pożegalnych wpisów starego administratora :), niby przez przypadek, ale jest się z czego pośmiać:

haker_gorzkie_zale_2Nowy admin próbuje się tłumaczyć… bezskutecznie:

haker_gorzkie_zale_3Na tą szczególną okazję nie mogłem się powstrzymać i przygotowałem oficjalne kondolencje od Security News:

rip_steroiduser

Można się pocieszać jedynie faktem, że forum jako tako istnieje, mimo, że porzucone przez całą poprzednią ekipę, jednak wychowankowie haker.com.pl prężnie działają i z tego można być dumnym!