Poprzedni Następny

Czy można ukryć się w sieci?

Autorem tekstu jest Rafał Wójcicki
Junior Pentester w EXATEL

 


W tej publikacji postaram się pokazać nietypowe techniki wyszukiwania informacji o dowolnej osobie, a także jak z pozoru małe informacje składają się w większą całość, pozwalając na zdobycie jeszcze większej ilości danych na temat celu.

Chciałbym również zachęcić wszystkich czytających do lepszego ukrywania się w sieci i zarządzania swoimi danymi (OPSEC).

Zacznę od krótkiego wprowadzenia obejmującego kilka głównych definicji. Następnie przejdę do nieczęstych, ale bardzo skutecznych metod szukania informacji, żeby pod koniec artykułu umieścić już specyficzny i ciekawy przykład OSINTu.

Nie będę opisywał każdej metody, ponieważ metod jest tyle ile celów, a na to nie starczyłoby z pewnością nawet kilka tomów książek. Artykuł ten pełni rolę informacyjną, wzywa do OPSECu oraz jest prostym poradnikiem dla nietechnicznych zainteresowanych tematem osób i może nawet garścią ciekawostek dla osób, które mają w tej gałęzi doświadczenie.

 

Czym jest OSINT?

OSINT (Open-Source Intelligence) czyli rozpoznanie z ogólnodostępnych źródeł to według wielu specjalistów z branży najważniejszy krok w dobrze przeprowadzonym teście penetracyjnym. Techniki OSINT, często nazywane biały wywiadem, polegają na gromadzeniu informacji o np. firmie, pracownikach, obiektach itp. z publicznie dostępnych danych. Bardzo dobrze przeprowadzone rozeznanie może być często jedynym gwarantem sukcesu, szczególnie przy atakach gdzie przyczółek w systemie zdobywa się za pomocą phishingu. Ważną zaletą białego wywiadu jest jego pasywność (brak kontaktu z celem). Osoba pozyskująca w ten sposób informacje jest niewykrywalna, a przynajmniej w większości przypadków tak jest. Można wyróżnić także szary oraz czarny wywiad, którym nie będę zajmował się w tej publikacji, ale warto zaznaczyć, że szary wywiad często balansuje na granicy prawa, a czarny zazwyczaj wiąże się już z oczywistym łamaniem przepisów. Techniki OSINT są niejednokrotnie specyficzne oraz spersonalizowane (dopasowane do celu), jednakże można wyróżnić kilka głównych sposobów pozyskiwania informacji.

Czym jest OPSEC?

We wstępie wspomniałem o OPSECu (Operations Security) tj. procesie zarządzania ryzykiem i tworzeniem strategii tak, aby zdradzać o sobie możliwie jak najmniej, celem ochrony informacji, firmy, obiektu, albo własnej osoby. OPSEC jest odpowiedzią na biały i szary wywiad. Nie wyklucza go, ale uzupełnia. Znając metody OSINT można udoskonalić swój OPSEC co przyniesie korzyści dla firmy w której pracujemy jak i dla nas samych.

OSINT, a Doxing

Biały wywiad jest ściśle powiązany z doxingiem, czyli ujawnianiem prywatnych informacji o celu. OSINT służy w tym przypadku głównie do znajdowania wielu informacji o ofierze, a następnie na podstawie ich, próby różnych ataków w celu zdobycia jak największej ilości danych. Pozyskane informacje publikowane są na stronach takich jak np. doxbin.org. Celem doxingu jest zaszkodzenie ofierze, a metody używane podczas doxowania często wykraczają poza biały wywiad. Niemniej jednak oba te pojęcia mają ze sobą wiele wspólnego.

Wstępne założenia dla OSINT

Należy pamiętać, że w każdej nauce, jak i tej, funkcjonują pewne aksjomaty, od których wszystko się zaczyna, i zgodnie z którymi stawia się kolejne założenia. Trudność OSINTu polega głównie na odpowiednim szukaniu informacji, stawianiu właściwych aksjomatów oraz korelacji między danymi. Poniżej przedstawię różne punkty wstępne (aksjomaty), a informacje, które chcemy pozyskać będą specyficzne w zależności od przypadku. Należy również pamiętać, że w przypadku hakowania i pozyskiwania informacji warto powtarzać swoje kroki jednak różnymi narzędziami. Zdarza się, że wyniki będą się różnić lub wprowadzać coś nowego w nasze poszukiwania.

 

Podstawowe metody pozyskiwania informacji

#1 Od numeru telefonu do pozyskania kont oraz danych osobowych.

Wiele osób, szczególnie starszych, nie zdaje sobie sprawy, że niektóre z ich danych, takich jak hasła, krążą w Internecie ze względu na wycieki, które przytrafiają się nawet największym gigantom. Ci, którzy zdają sobie z tego sprawę, może nawet korzystają ze specjalnych stron do sprawdzania czy nasze dane wyciekły (https://haveibeenpwned.com/), ale ile osób wie o takich stronach jak dehashed (https://www.dehashed.com/) czy breachdirectory (https://breachdirectory.tk/  niedawno strona została zdjęta, ale może jeszcze powróci) gdzie agregowane są ogromne bazy danych z wycieków. Wydaje się, że panuje powszechne przekonanie o trudnym dostępie do baz danych z wycieków. Tak jakby trzeba byłoby mieć ogromne umiejętności, dostęp do odpowiednich stron w sieci Tor i garść znajomości. O ile to jest prawda w przypadku niektórych baz danych, o których nawet ich właściciele nie wiedzą, to nie ma to jakiegoś szerokiego zastosowania. Ogromna ilość wykradzionych informacji jest dostępna na wyciągnięcie ręki. Strona dehashed agreguje naprawdę obszerne treści tego typu, jeżeli wierzyć im na słowo, na obecną chwilę (wrzesień 2021) jest to około 14,5 miliarda rekordów.

Wśród rekordów można wyróżnić: loginy, hasła, numery telefonów, imiona i nazwiska, adresy zamieszkania, emaile, a także vin. Efekty na tej stronie potęgują się dzięki korzystaniu z wyrażeń regularnych, które przedstawię w jednym z przypadków.

Scenariusz:

Bob zna nasz numer telefonu i bez skrępowania pisze do nas nękające SMSy. Naszym celem jest ustalenie tożsamości Boba.

Atak:

Korzystając z dehashed znajdujemy o nim mnóstwo informacji, między innymi imię i nazwisko, adres IP (który już od dawna jest zapewne inny), login, hasło i email, czyli dość pokaźny zasób informacji. Tutaj przykład danych z jednego z wycieków:

Teraz wiemy kto stoi za tymi SMSami.

 

#2 Kiedy wszystko inne zawodzi, ale jest Gmail

Scenariusz:

Dostajemy mnóstwo wiadomości od tajemniczego adoratora, ale chcielibyśmy dowiedzieć się kim on jest. Posiadamy tylko adres email w domenie gmail.com. Dodatkowo nie możemy znaleźć żadnych informacji na temat tego maila.

Atak:

Nie ma problemu. Wystarczy skorzystać z narzędzia Ghunt https://github.com/mxrch/GHunt, które pobiera ciekawe informacje z profilu jak: imię i nazwisko (lub cokolwiek wprowadzone w tamte pola), avatar, recenzje, kalendarz, zdjęcia google, kanał na Youtube, lokalizacja, Google Hangouts. Niektóre z tych informacji często są podawane z określonym prawdopodobieństwem. Przy użyciu tego narzędzie udało nam się poznać prawdopodobne imię i nazwisko osoby oraz prawdopodobną lokalizację na podstawie opinii na temat różnych restauracji. Dodatkowo w procesie próby odzysku hasła poznaliśmy model telefonu używany przez adoratora korzystając z opcji “nie pamiętam hasła”  i przeklikując się pomiędzy różnymi metodami.

 

#3 Nie ma już prawie nic, ale jest aż Google dorks

Google dorking polega na pozyskiwaniu informacji wykorzystując popularną wyszukiwarkę google. Zawiera ona różne polecenia dzięki, którym można ułatwić sobie wyszukiwanie. Ich lista znajduje się na tej stronie: https://gist.github.com/sundowndev/283efaddbcf896ab405488330d1bbc06

Scenariusz:

Nasz cel wysłał nam email, który wygląda na spear phishing (nakierowanie na konkretną ofiarę, a nie na mnóstwo celów jak w phishingu). Chcemy dowiedzieć się kim jest ta osoba lub przynajmniej pozyskać więcej informacji o niej.

Atak:

Skorzystamy z google dorkingu a konkretniej z filtru site:, który przeszuka konkretne strony pod kątem występujących fraz. Doskonale do tego celu nadadzą się dwie strony https://pastebin.com/ i https://doxbin.org/ gdzie ta pierwsza to popularna strona gdzie wkleja się głównie kawałki kodu, ale też bardzo często są tam publikowane dane z małych wycieków, doxbin przedstawiałem już wcześniej (tam raczej nic nie znajdziecie, ale zawsze warto spróbować). W wyszukiwarce google należy wpisać site:pastebin.com

example@email.com albo site:doxbin.org example@email.com. W tym przypadku udało nam się znaleźć nietypowe hasło, które po przeszukaniu w dehashed wskazało na konkretną osobę, co nie kończy badania. Należy teraz wykazać, że nowo znalezione informacje należą do właściciela maila.

 

 

 #4 Zdjęcia z metadanymi

Scenariusz:

Chcemy poznać imię i nazwisko osoby, która wysłała nam tajemnicze zdjęcie w SMS.

Atak:

Każdy plik ma w sobie jakieś metadane, które służą różnym celom. W przypadku zdjęć zazwyczaj są to parametry aparatu, a także (coraz rzadziej) lokalizacja. Niestety nieczęsto można skorzystać z tej techniki ze względu na czyszczenie przez wiele portali tych danych. Tym razem jest inaczej, bo zdjęcie dostaliśmy w SMSie. Czytanie metadanych jest proste – można skorzystać z narzędzi online http://exif-viewer.com/ albo narzędzi na desktopy takich jak exiftool.

(Uwaga na starsze wersje https://blogs.blackberry.com/en/2021/06/from-fix-to-exploit-arbitrary-code-execution-for-cve-2021-22204-in-exiftool).

Po odczytaniu danych EXIF bez problemu możemy namierzyć ofiarę, o ile udostępnia w metadanych lokalizacje. Reszta jest już zdecydowanie prostsza. Czasami można też poznać model telefonu, co zawęża poszukiwania kiedy np. będziemy mieli do czynienia z kilkoma emailami w domenie gmail.com

Powyższy zrzut prezentuje niektóre informacje, które akurat udało się wyciągnąć ze screenshota ekranu. Tutaj wiadomo, że użyłem do tego celu narzędzia gnome-screenshot.

 

#5 Zdjęcia bez metadanych

Scenariusz:

Tym razem dostaliśmy zdjęcie bez metadanych (np. z Facebooka ). Chcemy po raz kolejny namierzyć osobę.

Atak:

Jeżeli zdjęcie przedstawia jakieś miejsce albo osobę warto skorzystać z wyszukiwania obrazu. Wiele osób pewnie używało Google Grafika, który jest naprawdę świetnym narzędziem, ale niestety tylko dla identycznych obrazów tzn szukanie podobnych obrazów jest nieefektywne. Są dużo skuteczniejsze wyszukiwarki jak np. Yandex, który potrafi to naprawdę dobrze. Na yandexie mógłbym skończyć, ale to z pewnością nie byłoby satysfakcjonujące. Jest jeszcze jedna strona, która czasami działa dużo lepiej niż yandex, mianowice https://pimeyes.com/. Poniżej przykład:

Tutaj wiadomo poszło akurat łatwo. Niestety nie mogę użyć dla przykładu wizerunku prywatnej osoby, więc zachęcam do sprawdzania samego siebie.

Czasami wyniki są wręcz zaskakujące więc naprawdę polecam je sprawdzić. Tym sposobem znaleźliśmy jedno ze zdjęć osoby w lokalnej gazecie. Reszta to tylko kwestia czasu.

 

#6 Łut szczęścia

Scenariusz:

Po raz kolejny dostaliśmy zdjęcie, ale nie byle jakie. W tle jest samolot i kawałek mokrej trawy, ale niestety nie ma Boba. Bob oczywiście jest w Polsce.

Atak:

Ten przypadek jest nieco naciągany, bo ciężko dostać zdjęcie samolotu w tle, a tym bardziej okolicy gdzie widać jaka była pogoda. Dodatkowo nie zawsze istnieją warunki, żeby sprawdzić gdzie jest ofiara. Postanowiłem, że o tym wspomnę jako ciekawy scenariusz, który być może kiedyś się wydarzy. Dostaliśmy zdjęcie przed chwilą, a kontekst sugeruje, że zdjęcie zostało zrobione nie dawniej niż kilka minut wcześniej. Korzystając z https://www.flightradar24.com/ możemy namierzyć potencjalne miejsca, gdzie może znajdować się samolot, czyli również osoba, której szukamy. Poniżej przykład:

Okazuje się, że tylko w dwóch województwach padało, a akurat wtedy leciało przez nie kilka samolotów z czego jeden nad miastem. W zależności od sytuacji może udałoby się ustalić województwo, a nawet miasto. Ważne, że pozyskaliśmy jakieś informacje, a obszar zawęziliśmy już “tylko” do dwóch województw. W białym wywiadzie każda informacja może być na wagę złota. Nie zapominajmy o tym!

 

#7 Kiedy nic innego nie skutkuje

Ten przypadek jest bez scenariusza. Chcę wspomnieć o jednym  z najskuteczniejszych narzędzi do białego wywiadu czyli https://osintframework.com/. Mieści w sobie masę stron i materiałów umożliwiających zbieranie informacji. Dodatkowo całość jest podzielona na sekcje w zależności od stanu wiedzy jaki mamy na temat ofiary. Warto skorzystać i próbować, bo OSINT framework to nieoceniona pomoc.

#8 Za dużo informacji

Scenariusz:

Jedna z osób wypisuje do nas notorycznie z adresu email. Bez problemu znajdujemy wiele informacji o tej osobie (nawet konta na specyficzne domeny!) ale mamy przed sobą za dużo informacji i powiązań.

Atak:

Tutaj do akcji wkracza Maltego. Naprawdę świetne narzędzie, które jest jeszcze skuteczniejsze w połączeniu ze stronami internetowymi. Maltego przeszukuje ogromne ilości informacji z różnych portali społecznościowych i agreguje te wszystkie treści wyświetlając je w formie mapy myśli, która zdecydowanie ułatwia pracę. W przypadku ofiary bez problemu ustaliliśmy jakie informacje są nam potrzebne. Dostaliśmy też garść nowych danych, takich jak właściciel domeny, potencjalne numery telefonu i kilka nicków. Osobiście nie używam tego narzędzia jako jednego z pierwszych narzędzi ze względu na to, że dużo lepiej sprawdza się szukając informacji o stronie niż o konkretnym użytkowniku.

 

#9 Bądź jak Sherlock

Scenariusz:

Alice podczas jednej z prób adorowania zostawiła nam nieumyślnie swój własny nick.

Atak:

Oczywiście można skorzystać ze strony dehashed, ale nie zawsze otrzymamy jakieś wyniki. W końcu wszystkie dane pochodzą z wycieków. A co w przypadku, w którym nick nie wyciekł? To wydaje się być problemem, jednak  możemy przeszukać popularne portale pod kątem nicka. W tym celu pomoże nam narzędzie https://github.com/sherlock-project/sherlock, które przeszukuje wiele popularnych serwisów z kontami o podanym nicku. Czasami wypluwa kilka false-positive (informacje, które wydają się być prawdziwe, jednak okazują się fałszywe), ale tak czy siak jest naprawdę świetne. Alternatywą jak i dodatkowym narzędziem jest https://whatsmyname.app/. Warto z nich skorzystać, bo efekty często mogą przekraczać oczekiwania.

#10 Regex jest naprawdę potężny

Scenariusz:

John podszywa się pod nas na Facebooku. Stworzył profil z takim samym imieniem i nazwiskiem oraz zdjęciem. Co najgorsze, ma więcej znajomych i lajków od nas!

Atak:

Na pierwszy rzut oka wydaje się, że nic nie uda nam się ustalić. Zdjęcie jest nasze, a dodatkowo Facebook czyści EXIF. Jest jeszcze jedna informacja, którą możemy pozyskać (swoją drogą jest to częsta praktyka na wielu portalach) – odzyskiwanie konta. Najczęściej jest bezszelestne (uwaga na Instagrama, to wyjątek od reguły!). Zazwyczaj zanim odzyskamy konto podawane są nam skąpe informacje. W przypadku Facebooka i Gmaila są to dwie ostatnie cyfry numeru telefonu. Dodatkowo Facebook zdradza pierwszą oraz ostatnią literę w nazwie emailu oraz jego długość. Domenę trzeba zgadnąć samemu, ale to żaden problem – większość popularnych domen ma różną długość dzięki czemu jeszcze łatwiej ustalić z jaką skrzynką pocztową mamy do czynienia. Klikamy w “Zapomniałem hasła” i wpisujemy jego nick na fb, który pojawia się w pasku url na górze. Jeżeli jest to FBID (ciąg numerów zastępujący nazwę) można próbować użyć opcji – nie mogę odzyskać tego konta na facebooku. Niestety nie wiem czy te drugie rozwiązanie jest bezszelestne. Na szczęście większość osób ma ustawiony nick na fb.


Z tego możemy wywnioskować dużo więcej. Załóżmy, że John ma email:
j****7@*****.com

Podaną frazę możemy wrzucić na dehashed:

email:j????7&domain:gmail&number:???????54.

Dehashed wyszuka nam wszystkie wyniki o podanych wzorcach, dzięki czemu znacząco zawęzimy sposób szukania do maksymalnie kilku wyników. Następnie możemy skorzystać z Ghunt, żeby spróbować ustalić więcej informacji.

 

#10 Tylko nazwa WiFi

Scenariusz:

Jedna z osób wysłała nam screenshota z naszymi zdjęciami do których nie powinna mieć dostępu. W pasku statusu telefonu widnieje nazwa WiFi.

Atak:

Okazuje się, że nawet z pozoru mało istotne informacje mogą zdradzać o nas dużo więcej niż można byłoby sobie wyobrazić. Jedną z takich informacji jest nasza nazwa WiFi. Na stronie https://wigle.net można podejrzeć różne informacje na temat parametrów WiFi oraz jego lokalizacji. Oczywiście wiele WiFi nie ma na liście, ale tym razem mieliśmy trochę szczęścia i znaleźliśmy sprawcę.

#11 Allegro to nie tylko zakupy

Scenariusz:

Wiemy, że nasz figurant posiada konto na Twitterze z konkretną nazwą użytkownika. Chcemy dowiedzieć się o nim trochę więcej.

Atak:

Po nazwie użytkownika udało nam się znaleźć pasujący adres email korzystając z narzędzia Maltego. Niestety wszystkie inne sposoby zawiodły, a to zdecydowanie za mała ilość informacji. Wiemy, że ofiara jest Polakiem, więc najpewniej ma konto Allegro. Klikamy “zapomniałem hasła”, wpisujemy email i gotowe. Allegro ujawnia aż 6 cyfr numeru telefonu. Teraz, za pomocą dehashed i regex, możemy przeszukać potencjalne numery telefonów, a następnie w ramach wykluczania niektórych numerów ustalić kto jest naszym figurantem. Bardziej szczegółowo opisałem to na moim blogu: https://wandenreich.weebly.com/blog/ustalanie-numeru-telefonu-oraz-innych-danych-z-wykorzystaniem-allegro-oraz-baz-danych.

 

#12 Brak informacji

Scenariusz:

Znamy tylko imię i nazwisko figuranta. Wszystkie metody OSINT zawiodły.

Atak:

W takim wypadku pozostaje tylko permutacja emaili czyli tworzenie potencjalnych emaili w oparciu o pewne standardy takie jak imie.nazwisko@domena. Jednym z narzędzi, których możemy użyć jest:

https://github.com/jacobgoh101/email-permutator

przy odrobienie szcześcia znajdziemy odpowiednią osobę, ale zanim przystąpimy do szukania, potrzebujemy jeszcze listę domen i dopiero wtedy, łącząc ze sobą te dwa elementy możemy sprawdzić jakie emaile istnieją, a jakie nie. W tej metodzie należy uważać, żeby się zbytnio nie wychylić. Niektóre maile można sprawdzić po cichu (Gmail), a niektórych niestety nie.

Znając email możemy już dużo więcej. W tym przypadku znaleźliśmy lokalizacje osoby przypisanej do konkretnego emaila.

 

 

Zaawansowane metody pozyskiwania informacji

 

# 4chan kontra przeciwnik Trumpa

Zdecydowałem się umieścić ten wpis jako pokaz tego, że OSINT jest naprawdę szeroki, a liczba sposobów pozyskiwania danych ogromna, więc zacznę od krótkiego wstępu.

Jeden z przeciwników Donalda Trumpa często w różnych miejscach transmitował napis “He will not divide us”. Czasami były to ściany budynków, czasami znane miejsca, ale za każdym razem policja przeszkadzała mu w transmisji. W związku z tym postanowił ukryć flagę z wyżej wspominanym napisem, w miejscu, w którym nikt jej nie znajdzie. Następnie odpalił transmisje na całą dobę i można byłoby pomyśleć, że nikt takiej małej flagi nie znajdzie, ale nic bardziej mylnego. Jeden z użytkowników osławionego 4chana na podstawie samolotów, które przelatywały nad flagą o różnych porach dnia, określił w miarę dokładną lokalizacją o promieniu kilku kilometrów. Inny z użytkowników, który mieszkał w tej lokalizacji postanowił, że przejedzie wokół niej, cały czas trąbiąc autem. W ten sposób można było określić po której stronie najpewniej jest flaga. Dalej było już trochę łatwiej i gdy nadszedł zmrok jeden z użytkowników na podstawie położenia gwiazd określił bardzo dokładną lokalizację, rzędu kilku metrów. Po odkryciu miejsca oczywiście flagę podmieniono. Morał z historii jest taki, że jeżeli nie ma takiej potrzeby, nie należy wyjawiać jakichkolwiek informacji, nieważne jak wydawałyby się mało znaczące.

 

Podsumowanie

Mam nadzieję, że tym wpisem zachęciłem wiele osób do OPSECU oraz do zagłębienia się w metody OSINT. To naprawdę ciekawy temat, które przydaje się dosyć często w życiu codziennym. W kolejnym wpisie zajmę się zaawansowanymi metodami i ciekawymi przypadkami białego wywiadu. Bardzo dziękuje wszystkim za poświęcony czas!

Podobne