[PL] Szurkogadanie #27

Homepage:

https://youtu.be/Y0IZgcLKGtw

Description:

Wprowadzenie

Podcast

Cześć. Ja jestem Kacper Szurek a to 27 odcinek podcastu Szurkogadanie w którym opowiadam o tematach luźno powiązanych z bezpieczeństwem.

W tym odcinku o błędzie w wyszukiwarce Google, który pozwalał na tworzenie fałszywych informacji.

Opowiem także jak przestępcy omijają wykrywanie swoich złośliwych domen przy użyciu niewidocznej spacji.

Czy kurz na kamerze może się komuś przydać? O wykrywaniu osób ze sobą powiązanych na podstawie brudu na obiektywie a także jak i dlaczego zaatakowano urządzenia Google Chromecast służące do strumieniowania treści na telewizorze.

Podcast ten można również znaleźć na Spotify oraz Google i Apple Podcasts oraz Anchor.

Jeżeli interesujesz się branżą security lub jesteś programistą, który chciałby zadać pytanie o swój kod - zapraszam na grupę od 0 do pentestera na Facebooku.

Zapraszam do słuchania!

1. Fake newsy to wiadomości, których celem jest zachęchenie użytkownika do kliknięcia w link.

Liczy się chwytliwy nagłówek i ciekawe zdjęcie - często mające zaszokować potencjalnego Internautę.

Jak można się domyślać wiadomości te są fałszywe i nijak mają się do rzeczywistości.

Jeszcze kilkanaście dni temu przy użyciu pewnej funkcjonalności w wyszukiwarce Google można było tworzyć idealne materiały podpadające pod tą kategorię.

Wyszukiwarka bowiem oprócz publikowania listy stron pasujących do naszego wyszukiwania, przy niektórych frazach obok linków wyświetla dodatkowe informacje powiązane z danym tematem.

Dla przykładu wyszukując jakąś gwiazdę Hollywood od razu dostajemy jej zdjęcie oraz krótkie informacje biograficzne.

Ten mechanizm nazywa się Knowledge Graph i opiera sie na różnych źródłach wiedzy, między innymi wikipedii.

Trzeba przyznać, że jest to przydatne rozszerzenie - często traktowane przez Internautów jako pewnego rodzaju wyrocznia.

Zamiast bowiem wczytywać się w treści materiałów zwróconych przez wyszukiwarkę - otrzymujemy odpowiedź natychmiast w prostej i czytelnej formie.

Tym materiałem można się było również podzielić ze znajomymi - używając odpowiedniego guzika generującego specjalny adres URL.

Ten to adres prowadził do wyszukiwarki z wpisanym naszym słowem kluczowym oraz odpowiednią infografiką.

Wprawione oko zauważyło dodatkowy parametr przekazywany do Google - kgmid.

Okazuje się, że był to identyfikator danej instancji Knowledge Graph.

Manipulując tym parametrem, można zmienić treść Knowledge Graph wyświetlaną na danej podstronie.

To może prowadzić do ciekawych sytuacji.

Wystarczy wyszukać informacje na temat jakiegoś muzyka i skopiować identyfikator powiązany z danym rekordem.

Natępnie uzyć frazy “Kto jest prezydentem Polski” i dołączyć do jej adresu poprzednio skopiowany identyfikator.

Dzięki temu posunięciu przeglądarka zwróci fałszywe wyniki - próbując przekonać nas że prezydentem jest jakaś słynna piosenkarka.

Na chwilę obecną Google nie bierze już pod uwagę parametru przekazywanego przez użytkownika podczas wyświetlania informacji na swojej stronie.

Kolejny przykład, że dane od uzytkownika zawsze należy traktować jako niebezpieczne, zwłaszcza w kontekście aplikacji webowych.

2. Slack to popularny komunikator używany przez sporą liczbę firm na całym świecie.

Ceniony jest głównie za swoje integracje - czyli możliwość łatwego połączenia z innymi serwisami.

Dla przykładu może być wykorzystywany przez programistów - kiedy to każda zmiana na serwerze kontroli wersji może być wysyłana równocześnie w formie wiadomości tekstowej do konkretnych osób na czacie.

Lub też jako narzędzie monitoringu - informujące pracowników jeżeli któryś z serwisów nagle nie odpowiada prawidłowo na żądania.

To sprawia, że potencjalny atakujący może wykorzystać dane z tego serwisu do złośliwych celów.

Zwłaszcza, że Slack posiada historię i przechowuje wszystkie wiadomości wysłane na tej platformie.

Powstało narzędzie mające uświadomić ile interesujących informacji można w ten sposób znaleźć i jakie to proste.

Atak przeprowadzić można na dwa sposoby.

Pierwszy - pass the cookie, który był opisywany w poprzednim odcinku.

W skrócie - z przeglądarki ofiary należy pobrać odpowiednie ciasteczko.

Ono to daje pełen dostęp do wzsystkich zasobów, do których uprawnienia posiada dany użytkownik.

Druga możliwość to użycie tokenu API - w przypadku tej aplikacji to ciąg znaków rozpoczynający sie od xoxs- i powiązany z konkretnym uzytkownikiem.

Po podaniu tych danych skrypt pobiera wszystkie potencjalnie interesujące dane.

A ich może być całkiem sporo - między innymi klucze API do zasobów Amazona, klucze prywatne, hasła, linki współdzielone z pracownikami, loginy i hasła.

Czy zastanawiałeś się nad tym jaką skarbnicą wiedzy dla atakującego może być Twój firmowy czat?

Może warto zadbać o jego dodatkowe zabezpieczenie czyli wprowadzenie dwuskładnikowego uwierzytelnienia dla wszystkich pracowników?

3. Atak XSS to możliwość wykonania złośliwego kodu JavaScript w przeglądarce użytkownika, na stronie, która jest podatna na tego rodzaju atak.

Najczęstszą konsekwencją tego ataku podawaną w książkach i prezentacjach na ten temat to możliwość pobrania ciasteczka użytkownika.

Posiadając ciasteczko - atakujący może wykorzystać je do zalogowania się na czyjeś konto.

Tylko, że coraz częstszą praktyką jest ustawianie ciasteczka HttpOnly - wtedy to treść takiego ciasteczka dostępna jest jedynie dla przeglądarki i nie jest możliwe odczytanie jego treści z poziomu kodu JavaScript.

Jakie są zatem inne możliwości praktycznego zastosowania takiego ataku aby uzyskać długotrwały dostęp do konta danego użytkownika?

Jednym z pomysłów może być wykorzystanie funkcji OAuth.

Jest to mechanizm, który udostępnia zewnętrznym witrynom dostęp do zasobów naszej strony internetowej jako dana osoba.

Aktywny użytkownik musi tylko potwierdzić zgodę na taką akcję - w której wyszczególnione są uprawnienia, których żąda inna aplikacja.

Po ich zatwierdzeniu odpowiedni token jest przesyłany do zewnętrznego serwera i od tego momentu może on wykonywać akcję w imieniu danego uzytkownika.

Prawdopodobny atak może więc wyglądać następująco:

Z poziomu kodu JS przy użyciu podatności XSS atakujący wykonuje żądanie do funkcji OAuth.

Nawet jeżeli nie posiada dostępu do ciasteczka - nie ma to żadnego znaczenia, ponieważ zostanie ono dołączone automatycznie przez przeglądarkę.

W odpowiedzi serwer zwraca odpowiedni token i ta to wartość jest wysyłana następnie do serwera kontrolowanego przez atakującego.

Podobny mechanizm został użyty swego czasu na użytkowników Gmaila.

W mailu phishingowym nie proszono bowiem o login czy też hasło, a o potwierdzenie nadania uprawnień dla pewnej specyficznej aplikacji.

Większość użytkowników wie, że nie powinno podawać loginu i hasła na zewnętrznych stronach.

Nikt jednak nie wspomina o nadawaniu uprawnień dla jakichś konkretnych aplikacji - zwłaszcza, jeżeli nazwiemy je w jakiś ciekawy sposób.

Plusy takiego ataku?

Uzyskanie długotrwałego dostępu do danego konta.

Zazwyczaj zmiana hasła nie pomaga, ponieważ tokeny z założenia sa bytami o długim czasie życia.

Oprócz zmiany hasła należy zatem osobno cofnąć uprawnienia dla konkretnych aplikacji - a te zazwyczaj znajdują sie w innym miejscu w panelu uzytkownika - niż zmiana hasła i nie wszyscy muszą być świadomi o ich istnieniu.

Minusy tego ataku?

Witryna musi posiadać tą funkcjonalność co nie jest takie oczywiste.

Jak zatem chronić się przed takim wykorzystaniem funkcji OAuth?

Warto każdorazowo prosić o hasło użytkownika podczas nadawania uprawnień dla konkretnej aplikacji.

Wtedy jesteśmy pewni, że akcję tą wykonuje użytkownik.

4. BLIK to Polski Standard Płatności. Pozwala on na szybkie przelewy na telefon czy też płatności w Internecie.

Nie dziwi więc fakt, że coraz częściej zostaje użyty do różnego rodzaju przekrętów.

Portal Niebezpiecznik dotarł do osób, które są ofiarami jednego z takich ataków.

Wszystko zaczyna się dość niewinnie.

Na grupach turystycznych na Facebooku ktoś oferuje sprzedaż bonów biura podróży w okazyjnych cenach.

Taki bon można następnie użyć do opłacenia wycieczki All Inclusive na stronie internetowej lub też w placówce.

Nic nie wzbudza podejrzeń. Konta, które wystawiają takie oferty istnieją na Facebooku już od dłuższego czasu.

Można sprawdzić ich historię, zdjęcia - wszystko wygląda prawdziwie i obiecująco.

Podczas rozmowy prywatnej dowiadujemy się, że osoba wystawiająca daną ofertę mieszka obecnie za granicą i proponuje skorzystanie z usługi BLIK - która pozwala na przesłanie pieniędzy w szybki i bezprowizyjny sposób.

Idea jest prosta. Kupujący przesyła przelew i już po kilku minutach cieszy się tanim bonem na wycieczkę.

Zwykły przelew walutowy to koszty i czas, którego obie strony nie posiadają.

Oczywiście, każdy mógłby mieć wątpliwości przed przesłaniem 2000 zł jak by nie było obcej osobie z Internetu.

Dlatego też - w celach zabezpieczenia tranzakcji otrzymujemy skan dowodu osobistego.

Jak możesz się domyślać nic w tej historii nie jest prawdziwe oprócz straty pieniędzy.

Przestępcy poszukują starych, nieużywanych kont na Facebooku i próbują je przejąć różnymi atakami.

Następnie zmieniają dane personalne na takim koncie - tak aby pasowały do kradzionych wcześniej dokumentów tożsamości i publikują ogłoszenia na różnych grupach.

Kody BLIK podawane przez poszkodowanych służą do uzupełnienia internetowych portfeli.

Tak przelane pieniądze można następnie wyprać - czyli wymienić na krypotwaluty czy tez karty zdrapki.

Pamiętajmy: jeżeli coś jest zbyt tanie aby było prawdziwe - najprawdopodobniej jest oszustwem.

5. Firma Microsoft oprócz systemu operacyjnego czy też pakietu biurowego posiada w swojej ofercie usługę serwera pocztowego.

Jedną z najczęstszych form ataku na użytkowinków poczty oprócz złosliwego oprogramowania jest phishing, kiedy to użytkownik jest zachęcany do kliknięcia w link i podania na danej stronie swoich danych do logowania.

Z tego też powodu firma wykrywa wszystkie linki znajdujące się w treści maila i zamienia je na takie, które prowadzą do ich serwerów.

Ta technologia nazywa się “Safe Links” i posiada co najmniej jeden plus.

Jeżeli bowiem osoby z działu bezpieczeństwa firmy zadecydują, że treści pod podanym adresem są niebezpieczne - mogą taki link zablokować.

Ponieważ wszystkie adresy z treści wiadomości zostały zamienione na takie, które kontrolowane są przez firmę - w momencie kliknięcia w link użytkownik najpierw przenoszony jest do serwera pośredniczącego.

On to sprawdza czy dany link jest bezpieczny i tylko wtedy następuje przekierowanie.

Dzięki temu raz zablokowany adres działa u wszystkich uzytkowników.

Nie jest to najlepsze rozwiązanie dla przestępców - dlatego tez ostatnio opracowali nową technikę omijania tego filtru.

Serwis musi bowiem wykrywać w jakiś sposób jedynie link - tak aby nie zamieniać przypadkowego tekstu w treści emaila.

Jest więc wysoko prawdopodobne, że używa do tego celu czegoś na wzór wyrażeń regularnych, co pozwala na odnalezenie jedynie specyficznych ciągów znaków.

Atakującym udało się ominąć właśnie ten mechanizm.

W kodowaniu UNICODE znajduje się bowiem specyficzny znak, zwany: Zero-Width Spaces.

W założeniu miał on słuzyć do łamania długich ciągów znaków w odpowiednim miejscu.

Weźmy chociażby język niemiecki - gdzie wyrazy mogą składać się z kilkudziesięciu liter połączonych razem.

Normalnie - edytory tekstu i przeglądarki łamią wyrazy bazując na spacji - co jednak jeśli jeden wyraz sam w sobie zajmuje tyle miejsca ile cała linijka tekstu?

I tu do gry wchodzi niewidoczna spacja - która łamie treść podczas wyświetlania nie dodając tym samym znaku spacji podczas kopiowania danego tekstu.

Programiści nie obsługują linków, które posiadają właśnie ten znak w swojej treści.

Stąd też nie są one obsługiwane przez mechanizm Safe Links co sprawia, że użytkownik po kliknięciu w taki link jest przekierowywany bezpośrednio do złośliwej strony.

Sprytne.

6. Jakiś czas temu w tym podcaście informowałem o ataku na drukarki, które to zaczęły drukować strony z reklamą jednego z kanałów na YouTubie.

Tym razem podobnym atakiem padły urządzenia Google Chromecast.

Co to jest? To taki mały dongiel wyglądem przypominający pendrive, który to wpina się do portu HDMI w telewizorze.

Następnie z poziomu telefonu lub innego urządzenia obsługującego tą technologię można strumieniować treść wprost na ekran telewizora.

Ale jak doszło do ataku?

Wszystko za sprawą protokołu Universal Plug and Play.

Ta to technologia obecna w domowych routerach pozwala na szybkie skonfigurowanie kompatybilnych urządzeń bez udziału użytkownika.

O co chodzi?

Czasami chcielibyśmy, aby niektóre z naszych domowych urządzeń były dla nas dostępne nawet wtedy, kiedy fizycznie nie jesteśmy w domu.

Chodzi więc o zdalny dostęp. Standardowo nie jest to możliwe - ponieważ nasz domowy router nie pozwala na dostęp do naszej sieci z zewnątrz ze względów bezpieczeństwa.

Zazwyczaj definiuje się jedynie specyficzne porty - które są dostępne z zewnątrz.

Dla przykładu kamera internetowa - którą będzie można obsługiwać używając portu 88.

Aby to wszystko działało konfiguruje się tak zwany port forwarding - gdzie informujemy router, że cały ruch z internetu przychodzący na dany port powinien być przekazywany bezpośrednio do kamery, znajdująciej się w naszej sieci.

Wtedy to już nie router jest odpowiedzialny za bezpieczeństwo danego portu a dane urządzenie - ono to bowiem obsługuje dany ruch.

Tylko, że aby to wszystko działało - użytkownik musi skonfigurować daną usługę ręcznie.

Dlatego też aby uprościć całą procedurę wymyślono specjalny protokół.

Jeżeli nasz router go obsługuje - urządzenie samo komunikuje się z routerem i samo otwiera sobie odpowiednie porty.

Z punktu widzenia domowego użytkownika - wszystko działa świetnie, samo od siebie bez zbędnej konfiguracji.

Tylko, że tym razem ten protokół został użyty przez Chromecast co spowodowało, że urządzenie to było dostępne z zewnątrz.

Dzięki temu można było kontrolować co jest wyświetlane przy jego pomocy.

Jeżeli więc jesteście bardziej zaawansowanymi użytkownikami - warto sprawdzić czy ta opcja jest u was wyłączona i czy aby któreś z urządzeń nie otworzyło jakiegoś portu bez waszej wiedzy.

7. Patenty to sposób ochrony własności intelektualnej.

Używane głównie przez duże korporacje, które w ten sposób próbują ochronić się przed kopiowaniem swojej technologii i produktów.

Czasami na podstawie już zgłoszonych wniosków można sporo dowiedzieć się co może planować dana firma.

Internauci na stronie urzędu znaleźli jeden interesujący patent należący do Facebooka.

Cały biznes tej firmy kręci się dookoła ludzi i znajomych.

Im lepsze rekomendacje osób, które możemy znać, Facebook wyświetli nam na swojej stronie - tym wyższe prawdopodobieństwo, że zostaniemy na niej na dłużej.

Jeżeli na zdjęciu widnieją dwie osoby - sprawa jest względnie prosta.

Technologia rozpoznawania twarzy jest już na tyle rozwinięta, że jest w stanie z dużą dokładnością określić kto znajduje się na danej fotografi.

Ale co w przypadku kiedy na zdjęciu widnieje tylko jedna osoba?

Jeżeli nie jest to selfie - to ktoś przecież musiał to zdjęcie zrobić.

Jeżeli robił nam zdjęcie - istnieje duże prawdopodobieństwo że go znamy.

Jest też spora szansa, ze robił zdjęcie sobie albo innym osobom.

I właśnie o tym jest ten patent.

Z czasem obiektywy aparatów przysłania delikatny kurz, lekkie mikroryski i draśnięcia.

Można by więc spróbować na ich podstawie odnajdywać podobne osoby.

Jeżeli na kilku zdjęciach w tym samym miejscu znajduje się jakaś drobinka kurzu - istnieje spora szansza, że zdjęcie zostało zrobione tym samym aparatem.

Czy ta technologia rzeczywiście jest używana? Tego nie wiemy.

8. Coraz więcej firm staje się celem ataków informatycznych.

I nie ma tutaj większego znaczenia czy dana organizacja jest małym czy tez dużym podmiotem.

Zwłaszcza jeżeli mówimy o atakach oprogramowania typu filecoder, które po prawidłowej infekcji szyfruje pliki na dysku twardym użytkownika i w zamian za ich odzyskanie żąda okupu.

Nie dziwnym jest więc fakt, że na rynku pojawiły się ubezpieczenia, które wypłacają gotówkę właśnie w tego rodzaju przypadkach.

Tego rodzaju infekcje już nie raz udowodniły, że mogą spowodować olbrzymie straty nawet wśród największych firm na świecie.

Mondelēz to globalny koncern spożywczy zajmujący się wytwarzaniem produktów żywnościowych i napojów.

Padł on w 2017 ofiarą ataku oprogramowania Not Petya.

Firma była ubezpieczona na wypadek takiego rodzaju zdarzeń czyli na utratę lub szkodę danych elektronicznych, programów oraz oprogramowania w tym straty spowodowanej przez złośliwe oprogramowanie.

Firma ubezpieczeniowa nie chce jednak wypłacić 100 milionów dolarów odszkodowania.

Dlaczego? Zasłania się paragrafem w polisie, który mówi, że nie ponosi ona odpowiedzialności za akty wojenne.

Firma utrzymuje bowiem, że za całym atakiem stoi Rosja - chociaż kraj ten oficjalnie zdementował te pogłoski.

Szykuje się więc batalia sądowa a w grę wchodzi spora kwota.

Ubezpieczyciel będzie teraz musiał udowodnić, że za tym atakiem rzeczywiście stoi rząd a to, nawet jeżeli to prawda - nie będzie takie proste.

9. Koniec technologi Flash jest bliski.

Firefox to kolejna przeglądarka, która od wersji 69 nie będzię już w standardowej konfiguracji uruchamiać tego rodzaju treści.

Użytkownik nie będzie również pytany, czy chce ją uruchomić.

Dalej jednak możliwe jest skonfigurowanie odpowiednich wyjątków dla specyficznych witryn w opcjach programu.

W 2020 natomiast w konsumenckiej wersji Firefoxa, obsługa flasha zniknie całkowicie.

10. Ethereum Classic to kryptowaluta, która poddana została atakowi 51%.

Oznacza to, że jedna osoba lub podmiot posiadała co najmniej 51% mocy obliczeniowej sieci.

Dzięki temu atakujący, mógł częściowo kontrolować blockchain.

Blockchain to wspólna historia tranzakcji w której znajdują się informacje na temat wszystkich zleceń.

To dzięki niemu wiadomo kto ile posiada danej kryptowaluty.

Spróbuję wytłumaczyć ten atak na podstawie pewnej analogii do zwykłego sklepu spożywczego.

Każdy sklep posiada kasę fiskalną - w której są 2 rolki.

Pierwsza - drukuje paragon dla klienta, druga jest kopią dla sklepu.

Tą kopię może sprawdzić urząd skarbowy aby dowiedzieć się jaki jest należny podatek.

Wyobraźmy sobie więc hipotetyczną sytuację, że nieuczciwy przedsiębiora odcina środek swojej zapisanej już rolki i wyrzuca ją do kosza.

Dodatkowo, dokleja do niej nową rolkę używając taśmy klejącej.

W ten sposób powstał nowy paragon, bez niektórych tranzakcji.

Tym samym kontrolujący rolkę urząd skarbowy nie jest świadomy istnienia niektórych tranzakcji - więc przedsiębiorca nie musi płacić za nie podatku.

I właśnie to samo miało miejsce tutaj - kiedy to część tranzakcji znikła z sieci więc złośliwy podmiot mógł wydać daną kryptowalutę 2 razy.

I to wszystko w tym odcinku.

Zapraszam do komentowania i subskrypcji kanału KacperSzurek na Youtube.

Do zobaczenia już za tydzień. Cześć!

Odnośniki

1 2 3 4 5 6 7 8 9 10

Timeline: