728 x 90

Wykorzystanie stylometrii i uczenia maszynowego w informatyce śledczej

Wykorzystanie stylometrii i uczenia maszynowego w informatyce śledczej

Wielu Polaków zostało w 2019 i 2020 dotkniętych fałszywymi alarmami bombowymi, mającymi na celu doprowadzić do paraliżu różnych instytucji państwowych, albo przynajmniej dociążyć je dodatkową pracą i spowolnić przez to ich działanie.

Patrząc na kalendarz, można w tych działaniach znaleźć pewną chronologię i powtarzalność. Początek roku (styczeń/marzec) – alarmy bombowe najczęściej pojawiają się w hipermarketach (sieć Tesco zaatakowana), urzędach wojewódzkich, budynkach administracji państwowej. Maj „zarezerwowany” jest dla matur. W międzyczasie pojawiają się alarmy w sądach, prokuraturze, szkołach. Za każdym razem scenariusz jest podobny. Wysłane przez sprawcę ostrzeżenie skutkuje ewakuacją ludzi, postawieniem służb mundurowych w stan najwyższej gotowości i sprawdzaniem obiektu, którego dotyczy alarm. Na szczęście w żadnym z tych przypadków informacja o podłożeniu ładunku wybuchowego się nie potwierdziła.

W poszukiwaniu sprawcy

Wiosną 2019 w mediach pojawiają się informacje o próbach sparaliżowania matur. CBŚ podaje, że sprawca posłużył się sformułowaniami: za chwilę detonacja, eksplozja, zasobnik z gazem bojowym fosgen, bomba, ratujcie się, zginą ludzie. Tu pojawia się potrzeba identyfikacji autorów tych informacji. Z pomocą przychodzi stylometria. To metoda badawcza, która pozwala na identyfikowanie autorów lub chronologię tekstu na podstawie policzalnych cech językowych tekstu np. częstotliwości występowania określonych słów. Metoda ta opiera się o wnikliwą analizę przy wykorzystaniu nowatorskich metod komputerowych.

Stylometria historycznie

Założenia stylometrii przedstawił w 1890 roku Wincenty Lutosławski w pracy Principles de stylometrie jako analizę dzieła sztuki dla ustalenia charakterystyki stylu autora. Służyła głównie rozstrzyganiu kwestii autorstwa dzieł anonimowych bądź chronologii przekazu. Wcześniej podejście ilościowe zostało zastosowane w 1877 roku przez meteorologa Mendenhalla. Zaproponował on rozkład długości słowa jako cechę niezmienną od autora. Natomiast w 1901 r. zastosowano tę technikę do analizy dzieł Szekspira i Bacona. Zastosowanie stylometrii w technice elektronicznej zostało zainicjowane w 1964 roku przez Mostellera i Wallace’a, którzy użyli słów funkcyjnych i analizy bayesowskiej, aby zidentyfikować autorów kwestionowanych Federalist Papers. Z czasem stylometria stała się metodą używaną w informatyce śledczej do identyfikacji autorów anonimów na podstawie policzalnych cech językowych tekstu.

Założenia stylometrii

…są proste. Sposób pisania każdego człowieka jest do pewnego stopnia indywidualny, zaś teksty pisane przez niego w zbliżonym okresie czasu są do siebie podobne bardziej niż te, które dzieli większy odstęp czasu. Obliczając częstości występowania słów (często mało istotnych), mierząc powtarzalność i występowanie pewnych językowych struktur można stwierdzić, kiedy i przez kogo został napisany dany tekst. Z reguły autorzy mają tendencję do pisania w stosunkowo spójny, rozpoznawalny i unikalny sposób. Każda osoba ma swoje unikalne słownictwo (bogate / ograniczone). Jedni piszą krótkimi zdaniami, inni wolą długie bloki tekstu składające się z wielu zdań. Nie ma dwóch różnych osób, które używają średników, myślników i innych form interpunkcji w dokładnie taki sam sposób. W oparciu o metody stylometryczne (jest ich ponad 150) oblicza się zatem częstość występowania słów, mierzy ich powtarzalności i weryfikuje frekwencję określonych struktur językowych. Ciekawostką jest to, że zwyczajne słowa takie jak: się, nie, tu określają styl pisania danego człowieka dużo lepiej, niż długie zdania czy interpunkcja. Z pomocą stylometrii można sklasyfikować tekst ze względu na: autorstwo, czas powstania, rodzaj literacki, płeć autora, a nawet identyfikować niektóre choroby psychiczne (schizofrenia, cyklofrenia).

Zagrożenie dla anonimowości

Wyniki dopasowania tekstu w oparciu tylko o styl badanych dokumentów mogą stanowić podstawę do analizy tożsamości autora. Sam czas ich tworzenia może wskazywać na strefę czasową, w jakiej przebywa przestępca. Z kolei ustalenie adresu IP autora pozwala określić jego lokalizację geograficzną. Świadomość informatyczna osób dopuszczających się przestępstw systematycznie się zwiększa. To powoduje, że ich identyfikacja, a w konsekwencji pociągnięcie do odpowiedzialności karnej, staje się coraz bardziej utrudnione. Należy jednak pamiętać, że wraz z rozwojem poszczególnych technik stylometrii, zastosowanie ich do identyfikacji znacznie obniży poziom anonimowości autora.

Stawia to pod dużym znakiem zapytania możliwość anonimowego publikowania treści w internecie. Przestępcy mają wprawdzie szeroki wachlarz różnego rodzaju rozwiązań, które pozwalają im ukryć się w sieci. Wśród najpopularniejszych są: wykorzystanie serwerów proxy, usług VPN, sieci Tor, Freenet, czy I2P. Ale pomimo korzystania z tego typu rozwiązań, nadal nie ma gwarancji całkowitej, 100-procentowej anonimowości – w.in. właśnie ze względu na stylometrię! Wykorzystując wszelkie informacje (nawet zanonimizowane) gromadzone przez różnego rodzaju systemy czy narzędzia i analizując je przy użyciu zróżnicowanych metod stylometrycznych, można z dużą skutecznością określić tożsamość. Anonimowość w sieci to bowiem wypadkowa wiedzy, chęci, umiejętności ścigającego i ściganego. Z jednej strony stoi sprawca wykorzystujący dostępne w sieci skrypty, zdobywający wiedzę w szarej strefie Internetu. Z drugiej zaś organy ścigania, dysponujące metodyką, narzędziami i również wiedzą.

Pięta Achillesa

Zlokalizować przestępcę to jedno, co innego – udowodnić mu winę. Minusem są często ograniczenia przepisów prawa np. brak możliwości zindywidualizowania odpowiedzialności i przypisania jej konkretnej osobie, co często skutkuje umorzeniem postępowania. Według polskiego prawa karnego, z aktu oskarżenia należy usunąć wszystkie wątpliwości rozstrzygające na korzyść oskarżonego. Czyli jeśli nie można komuś przypisać jakiegoś czynu, nie może on zostać skazany. Dlatego przewrotnie czasem może okazać się, że dużo więcej może zrobić potencjalny haker niż policja.

Wystarczy zachować ostrożność?

Wróćmy do anonimowych alarmów bombowych. Przestępca posiadający wiedzę, jak dbać o bezpieczeństwo i jak sprowokować wspomniane wątpliwości działające na jego korzyść, zastosuje wszelkie środki ostrożności: skutecznie zaszyfruje dysk twardy, odpowiednio zabezpieczy telefon, skorzysta z zabezpieczonych połączeń w sieci Internet, użyje jednorazowego konta pocztowego, szyfrowanego komunikatora, założy konta na nieistniejące osoby (tzw. słupy) itd. Dodatkowo, najczęściej będzie też zorientowany w metodach pracy policji.

A organy ścigania będą próbować go zidentyfikować w oparciu nie tylko o ślady cyfrowe (jak np. logi). Powiążą je także z tym, co znajdą w świecie rzeczywistym. Zidentyfikują sprawcę na podstawie innych znalezionych, należących do niego materiałów. Są to różnego rodzaju pisma, opracowania, listy itp., wytworzone w ramach „normalnego życia” (np. w trakcie studiów), które można porównać z „bombowym” anonimem. I właśnie możliwość zastosowania stylometrii i uczenia maszynowego mogą w tym działaniu pomóc.

Tu warto przybliżyć termin uczenie maszynowe. To technologia, która zamiast programować komputery konkretnym algorytmem, uczy je wykonywania zadań na podstawie analizy danych. Uczenie maszynowe wykorzystuje zaawansowane algorytmy do „przyswajania wiedzy” z ogromnych źródeł danych, jakimi dysponują instytucje państwa. Im większe są zasoby danych, do których algorytmy mają dostęp, tym więcej mogą się nauczyć. Przykładów na faktyczne zastosowanie uczenia maszynowego jest mnóstwo (spersonalizowane rekomendacje produktów w witrynie Amazon, rozpoznawanie twarzy na Facebooku, sugerowanie najszybszej trasy w Mapach Google itd).

Jak wygląda analiza stylometryczna?


Aby z grupy podejrzanych osób można było wyodrębnić sprawcę należy zebrać/znaleźć dokumenty jakie tworzyli w określonej przestrzeni czasu i poddać odpowiedniej analizie i obróbce.

Metody stylometrii opierają się na:

  • długości zdania
  • długości wyrazu
  • ilości przecinków
  • wspólnym słownictwie (podobieństwo Jaccarda)
  • odległości edycyjnej (ilość zmian w tekście aby z jednego dokumentu otrzymać inny dokument)
  • podobieństwie cosinusowym (częstość występowania po sobie wybranych zbitków liter lub słów – tzw. n-gramów)

Metodyka krok po kroku

Analiza/poszukiwanie danych (10% czasu)

  • sprawdzenie, jakimi typami dokumentów dysponujemy (txt, docx, rtf)
  • skuteczność dopasowania rośnie wraz ze wzrostem ilości analizowanego tekstu

Ujednolicenie (50% czasu)

  • konwersja do wspólnego formatu txt
  • wyczyszczenie ze zbędnych danych (szumy, polskie „ogonki”)
  • normalizacja kodowania – po skasowaniu zbędnych znaków zastępuje się je pustym miejscem, kasuje powtarzające się spacje, znaki nowych linii, tabulatory i inne nieistotne elementy (tzw. stopwords)
  • przygotowanie danych (rozdzielanie zdania, wydzielanie interpunkcji, dzielenie tekstu na poszczególne słowa)
  • wyliczanie wskaźników – podział na bajtowe i słowne n-gramy
  • określenie średniej długości zdania, średnia długość słowa w zdaniu

Wyliczenie podobieństwa anonimu z pozostałymi dokumentami – statystyczne własności (30% czasu)

To tzw. analiza statystyczna, porównanie dwóch zborów danych pod względem wskaźników:

  • długość (ilość słów/znaków we wpisie)
  • bogactwo słownika
  • obecność słów zawierających różne kombinacje małych i dużych liter
  • ilość liter w słowach (częstość występowania słów o określonej długości) – użycia poszczególnych liter (bez względu na wielkość)
  • częstotliwość występowania:
    • cyfr
    • poszczególnych znaków interpunkcyjnych
    • znaków specjalnych
    • słów funkcyjnych (z, do, na)
    • poszczególnych par słów

Na podstawie danych obliczane jest podobieństwo cosinusowe wybranych zbiorów (im wartość jest bliższa 1, tym bardziej oba zbiory są do siebie podobne, a zarazem rośnie prawdopodobieństwo wspólnego autora – zaś im bliżej 0, tym bardziej różnią się od siebie).

Przedstawienie wyników w zrozumiały sposób (10% czasu)

Graficzny sposób prezentacji danych, np. w postaci tzw. heatmapy.

Podsumowując

Obliczając obecność najczęściej występujących słów w danym zbiorze tekstów porównuje się tzw. podobieństwo Jaccarda, a więc stopień, w jakim poszczególne zbiory się przecinają. Najbardziej zbliżone do siebie będą dokumenty napisane przez tego samego autora. Zważywszy na to, że każda dłuższa wypowiedź językowa składa się z niemal w połowie ze stu najczęstszych słów, porównanie proporcji tych wyrazów może wskazać na tak silne różnice osobnicze, że identyfikacja autorska nie sprawi żadnego problemu. Ta pierwsza setka to najczęściej proste i nudne słowa (patrz wyżej). Jak się jednak okazuje – to podstawowe elementy stylu językowego każdego człowieka! Stylometria opiera się bowiem na modelu języka jako zbioru słów. Z tego worka usuwa się kontekst, składnia, związki gramatyczne i znaki przestankowe. Zostaje tylko słowo, którego frekwencję występowania trzeba policzyć, a następnie określić proporcje względem innych wyrazów.

Więcej


Zainteresowały Cię narzędzia omawiane w tym filmie? Zobacz nasz kolejny artykuł, w którym je odtworzyliśmy, a nawet poprawiliśmy.

Do czego jeszcze służy stylometria?

Dzięki stylometrii identyfikuje się użytkowników internetu np. analizując kody malware, exploity, ransomware i inne, aby przypisać autorstwo odpowiedniej grupie przestępczej. Stylometrię wykorzystuje się także do poszukiwania wzorców dźwięków w obrazie video.

Stylometria to także badanie tzw. stylu/linii życia komputera (np. w jaki sposób przestępca wykorzystuje sprzęt). Określa się zależność funkcjonowania sprzętu (jeden sposób wykorzystania komputera może być podobny do sposobu wykorzystywania komputera przez inną osobę. Innymi słowy, mając podejrzanego i sprzęt, którego używał, można sprawdzić w jakiej kolejności i jakie programy/komunikatory/strony/pliki otwierał i porównać do określonego wzorca).

Inne metody porównywania

  • uczenie maszynowe (tzw. sieci neuronowe i Bayesowskie), zaciąganie serii dokumentów np. jednego autora aby komputer „nauczył się” stylu jednego twórcy i wychwycił nietypowe zależności określając czy ta sama osoba pisała dany tekst
  • pakiet NLTK do stylometrii w języku Python (107 różnych metod porównywania tekstów)
  • pakiet stylo do stylometrii w języku R

Jak zatem utrudnić pracę specjalistom od stylometrii?

Istnieją proste techniki umożliwiające zmianę stylu pisarskiego w sposób znacząco utrudniający identyfikację piszącego. Przede wszystkim należy zaznajomić się z metodami stylometrii bo tam znajduje się klucz do tej zagadki. Celowe użycie / unikanie określonych słów, struktur wyrazów, znaków interpunkcyjnych a przede wszystkim zwykłych nic nie znaczących (na pozór) wyrazów może ułatwić potencjalnemu sprawcy zadanie. Ponadto żeby stworzyć porządny anonim, trzeba być matematykiem, a przede wszystkim doskonałym lingwistą.

Przede wszystkim być na bieżąco

Stylometria to jedno z wysoce miarodajnych narzędzi do analitycznych badań językowych. Jest wciąż przedmiotem ciągłego doskonalenia i rozwija się na całym świecie w tym również w Polsce. Uniwersytet Jagielloński jest znaczącym ośrodkiem takich badań. Jako członek DARIAH-PL (Digital Research Infrastructure for the Arts and Humanities), największego obecnie konsorcjum humanistycznego w Polsce. Z pewnością potencjał zastosowania metod stylometrycznych poparty szybkim i intensywnym rozwojem badań i narzędzi w tej dziedzinie, jest czymś, co w przyszłości może znacznie poszerzyć zasoby informatyki śledczej.


Intencją autorów ani wydawcy treści prezentowanych w magazynie PAYLOAD nie jest namawianie bądź zachęcanie do łamania prawa. Jeśli popełniłeś lub masz zamiar popełnić przestępstwo, bądź masz wątpliwości, czy Twoje działania nie będą łamać prawa, powinieneś skonsultować się z najbliższą jednostką Policji lub Prokuratury, a jeśli są one związane z pieniędzmi, dla pewności również z Urzędem Skarbowym.

Nie zezwala się na użycie treści prezentowanych w magazynie PAYLOAD, ani produktów dostępnych w sklepie PAYLOAD, do celów popełniania przestępstw lub przestępstw skarbowych.