Z kamerą wśród z̶w̶i̶e̶r̶z̶ą̶t młodzieży...

Z kamerą wśród z̶w̶i̶e̶r̶z̶ą̶t
młodzieży...

...czyli jak uświadomiona o cyberbezpieczeństwie jest współczesna młodzież?

Wstęp

W dzisiejszych czasach wszędzie ostrzega się ludzi, że czyhają na nich różne zagrożenia: phishingi, DotPaye, paczki, DeHaEle, wnuczki i inne policje. Są prowadzone różne kampanie, które targetują raczej dorosłe i starsze osoby. Co jednak z tymi młodszymi? Jaka u nich jest świadomość bezpieczeństwa w sieci?

Tak się składa, że poruszam się sporo właśnie wśród młodzieży poprzez różne serwery Discord (to taki Slack dla graczy, a jak ktoś nie wie co to jest Slack - to taki Discord dla pracowników. Jeżeli nie znasz obu tych komunikatorów, ojoj).  To, co zebrałem, jest jednocześnie bardzo interesujące, ale również i smutne.

Disclaimer: w tym artykule autor podtrzymuje tradycję Dupa Driven Development.

Podział ludzi na kategorie

Czyli o jakich przypadkach będzie tutaj mowa. Tak, wiem, źle to brzmi, ale obiecuję, że nie będzie tutaj żadnych dziwnych treści. No, może tylko troszkę.

Nie zamierzam obrażać tutaj nikogo, ponieważ sam dałem się złapać na parę phishingów i innych syfów - nie traktuję siebie jako wyjątku i cudownej osoby, która wszystko wie.

Przejdźmy jednak do tego podziału:

  • Debile - najlżejsza kategoria. Wszyscy jesteśmy z natury idiotami – każdemu może się coś przydarzyć, np. złapać na phishing, odpalić ransomware itp. Jednakże tacy ludzie starają się być świadomi i czujni. Wiedzą, że sami nie dadzą rady i korzystają z AV, wtyczek blokujących cholerstwo, managerów haseł, a może nawet i z kluczy U2F.
  • Typowi debile – nieuświadomieni, może nawet niedojrzali do bezpiecznego korzystania z Internetu. O managerach haseł i 2FA dowiadują się „po fakcie”. Takim ludziom należy faktycznie pomóc.
  • Beton – według nich managery są zbędne, 2FA niewygodne i marnujące czas, a AV tylko po to, żeby wyświetlać komunikaty o wirusach w ich cracku do GTA.

Chcę podkreślić, że wykluczam tutaj osoby, które ledwo ogarniają komputer (tzn. maszynę do czytania maili i pogody na Onecie). Chodzi o młodzież, która nie ma wiedzy nt. bezpieczeństwa w Sieci lub jest na nią odporna.

Przed Wami miks przykładów napotkanych przeze mnie grup.

Napotkane przykłady

Generalnie to był to wątek o innym użytkowniku, który stracił dostęp do Authy, a przez to do GitHuba i zaczął się pokrętnie tłumaczyć.
Bitwarden, czyli coś tam próbował, ale czytanie ze zrozumieniem leży. A 3 minuty później...
Brak zrozumienia co to password manager, pomimo rzekomego riserczu. Albo może to wina późnej pory...
To pierwsze hasło nawet nie takie złe jest, ale powiedzmy, że jest to jakaś próba „obalenia” password managerów.

Tymczasem wracamy do sprawy z Authy.

Support może czasem pomóc, ale ostatnio moje zgłoszenie o złośliwym kodzie zamieszczonym w jednym z public repo wisiało pół roku, zanim zostało klepnięte.
Wujek Dobra Rada, ale…
... jest jeden haczyk.
Obrazek z dźwiękiem. A kto nie kuma, ten trąba.
Jednak zadziałało! Ale GitHub nadal dead. Może uda się chociaż z JetBrains? Tylko po co mu kody ratownicze, skoro już ma dostęp do 2FA...

Zaczęło się robić trochę nudno w tym wątku, więc może przejdę do następnego. Jest to w zasadzie rozmowa typu "nikt nie ma tutaj racji".

Coś tam dzwoni, ale nie wiadomo w którym kościele.

Po przeczytaniu tej konwersacji ogarnął mnie wielopoziomowy smutek:

  • Nie jest prawdą, że implementacja 2FA nie istnieje prawie nigdzie. W postaci biednej (SMS, E-Mail) jest wszędzie, jako aplikacja z kodami - prawie wszędzie, a w formie U2F... raczkuje, ale jest już całkiem dobrze.
  • Hasło owszem, można odgadnąć, ale albo wykorzystując jego hash (musielibyśmy mieć najpierw dostęp do bazy danych, a potem jeszcze takie hasło złamać np. HashCatem), albo wykonując masowe zapytania do atakowanego serwisu licząc, że jakieś hasło przejdzie (np. wykorzystując je z innego hacku).
  • Można też np. stworzyć i zapamiętać 30-znakowe hasło. Pozazdrościłbym takiej osobie pamięci, ale zakładając, że używa się tego hasła do wszystkiego, to trochę mizeria.
Wzmianka o potwierdzeniu mailowym jako 2FA… Fakt, 2FA jako kod z maila czy apki by nie pomógł w przypadku phishingu, ale nie nastąpiłoby przeskoczenie ze zdobytego konta Termiusa na konto e-mail wykorzystując to samo hasło.
Wrócił nam bohater od menadżerów haseł. Jej!

Znowu wracamy bezpośrednio do sprawy Termiusa.

Przypominam faktyczną ochronę przed phishingiem, jakim są fizyczne klucze U2F. Jednoczesna wspólna porada od innego uczestnika.

Jakie wnioski wypływają z tych zrzutów ekranu?

  • 2FA chroni przed phishingiem.
  • 2FA przeszkadza w normalnym życiu.
  • Najlepiej jest mieć jedno długie i skomplikowane hasło do wszystkiego.
  • Menadżery haseł to diabelstwo, a kysz!
Nie.

Na podstawie kilku przykładów podanych powyżej mogę stwierdzić, że z wiedzą nt. bezpieczeństwa w Internecie jest źle. Jakie są tego przyczyny? O tym późnej, lecz najpierw przyjrzyjmy się jeszcze innym ciekawostkom, które napotkałem.

Ciekawostka #1 - Spotify i Wikipedia dalej nie mają 2FA

Tak, kończy nam się 2022 rok, a tak prozaicznych narzędzi bezpieczeństwa w tych dwóch portalach nadal nie ma. Wikipedia przynajmniej testuje Na Produkcji (spójrzcie na nazwę bloga, teraz już wiecie? haha ha h), ale Spotify to chyba nie zaimplementuje tego nigdy.

Nie dla zwykłego użytkownika to!
"Pożyjemy, zobaczymy" w wydaniu Spotify. Żenujące.

Ciekawostka #2 - Bitwardenowe (i nie tylko) raporty haseł

Porównania bezpieczeństwa haseł moich oraz dwóch znajomych. LICZBY PRZERAŻAJĄ [ZOBACZ ZDJĘCIA!]

Moje niebezpieczne hasła. Do routera to tam mogą być. ;)
Raport pierwszego znajomego. Jest średnio.
Raport drugiego znajomego. Jest znakomicie... nie.

Ciekawostka #3 - Klikłem i ni dzioła

Aż kusiło, żeby wykonać atak "dependency confusion". Ale tutaj akurat plusik dla NPM'a, który sam blokuje publikowanie pakietu, jeżeli nazwa jest podobna do już istniejącego. Super!

Ciekawostka #4 - Typowy dzień deva na Discordzie

a.k.a Rozwalamy Malware #2

Ciekawostka ta będzie troszkę dłuższa, ale zdecydowanie warta przeczytania do końca!

Tak przedstawia się typowy dzień developera na Discord. Jeżeli jest się na jakimś dużym serwerze, a profil użytkownika będzie miał limitowaną odznakę Zweryfikowanego Dewelopera, to można otrzymać taką oto ckliwą historyjkę wraz z binarką do odpalenia.

Bla bla bla, po prostu daj mi tego exe'ka!

Są też bardziej bezpośredni zawodnicy:

Debil, bo trafił nie na tych gości, co trzeba. ;) No i wreszcie mamy co badać!

Zaczynamy klasycznie od VirusTotala.

Próbka wrzucona do VT. Wykrywalność zerowa, pomimo wielokrotnych retestów.
Postanowiłem potem spróbować Hybrid Analysis, ale niestety, nie mają Windowsa nowszego niż 7.

W tym momencie postanowiłem spróbować bezpośrednio zajrzeć w kod źródłowy, skoro nie mogłem przeanalizować próbki uruchamiając ją w bezpiecznym środowisku. Podejrzewałem, że została ona napisana w Node.JS i spakowana za pomocą Vercel/Pkg. Aby to potwierdzić, znalazłem narzędzie Detect It Easy. A śmiechom nie było końca.

Teoria...
...i praktyka. DLA CZE GO

Nie, nie zmyśliłem tych tłumaczeń. Proszę, smacznego. Od tego momentu, w którym zobaczyłem to tłumaczenie, demaglanie to moje ulubione słowo.

Program ma też sztywny limit 50 000 wykrytych stringów. Jak znajdzie więcej, nie wyświetli niczego, bo po co?

Postanowiłem wrócić do analizy z VirusTotal. Binarka kontaktowała się z następującymi witrynami:

Jakaś subdomena ma jedno podejrzenie. Zbadajmy ją!
Z domeną mertushka.codes związanych jest kilkanaście innych plików. Są i aktualizacje, i bety gier, a nawet znalazła się praca domowa. Wykrywalność bliska zeru.

Szukając więcej na temat tej domeny natknąłem się na poprzednie wydanie stealera tego samego autora. Nazwałem go Grabushka (tak identyfikował się ten robal w kodzie, a także taka sama nazwa jest wykorzystywana na serwerze support na Discord, a jakże) i oznaczyłem jako V1. Czy była ona faktycznie wersją pierwszą, nie wiem, ale na pewno była wcześniejszą, niż otrzymana próbka.

Są to payloady Node.JSa pobierane przez binarki, a następnie wykonywane. TLD domeny jest jeszcze ".me", po miesiącu to już ".codes".
Fragment kodu, oczywiście zaciemnionego. Ech.

Z deobfuskacją miałem spore problemy, ale w końcu pomogło mi narzędzie Synchrony. Polecam!

Mozaika kodu dla kumatych.

Plik udaje mi się częściowo (acz wystarczająco) zdeobfuskować. Jest to plik Node.JSa wżerający się w clienta Discorda i kradnącego z niego dane.

Na screenach widzimy kilka rzeczy:

  1. Przygotowywanie do wysłania webhooka z danymi.
  2. Zbieranie danych o odznakach konta. Konto z badgem Zweryfikowanego Dewelopera jest bardzo cenne, istnieją nawet czarne rynki takich kont. Czemu? Bo te odznaki były rozdawane, ale nagle już nie są.
  3. Zbieranko adresu IP.
  4. Zbieranko kart płatniczych podpiętych do konta.
  5. Zbieranko kodów bezpieczeństwa.
  6. Prawdopodobnie wysyłka tego na serwer a'la Pastebin.

W kodzie pojawiły się też funkcje od zmiany maila i hasła, jednak nie podejmowałem się ich analizy. Najważniejsze jest zdobycie adresu webhooka, gdyż API Discorda pozwala nam go wtedy skasować, co zrujnowałoby daną kampanię stealera.

No i zgon. Adres webhooka jest prawdopodobnie dynamicznie gdzieś podmieniany.

Przejdźmy jednak do właściwej próbki.

Próbkę Grabushka V2 przeanalizowałem za pomocą bardzo wyrafinowanego i skomplikowanego narzędzia strings dostępnym chyba w każdej dystrybucji Linuxa.

Warto zmienić nazwę pliku, żeby przypadkiem go nie odpalić. Vercel/Pkg powinien zostać zbanowany. Nie da się tak spakowanej apki odpakować, co znacząco utrudnia analizę malware. A jak podbić rozmiar pliku? Pododawać wincyj modułów z NPMa i będzie git. Witamy także pana Ahmeta.

Niestety, nic ciekawego nie udało mi się wyłuskać, może oprócz nazwy robala. Postanowiłem w końcu uruchomić maszynę wirtualną, utworzyć lewe konto na Discordzie, a potem ruch sieciowy ładnie podsłuchać. Po drodze udało mi się wyciągnąć kilka wniosków:

  • WireShark do tego celu się nie nadaje - do podsłuchiwania apek dla laika najlepszy zdaje się być Fiddler Classic.
  • Kiedy nagrywasz przebieg infekcji, uparcie wysyłka webhooka nie ujawni się na nagraniu.
  • Jednak istnieje darmowy, a przy tym niewykastrowany, sandbox do malware. Triage, kłaniam się!

Poniżej filmik z przebiegu infekcji, jednak dopiero na zrzutach ekranu widać co jest zbierane i gdzie wysyłane. Warto zauważyć, że w miejscu, gdzie powinien się pokazać kod QR do bezpiecznego logowania się telefonem, jest animacja ładowania. Ma to wymusić podanie przez użytkownika swojego adresu e-mail i hasła.

0:00
/

Nie mamy docelowego adresu webhooka, ale analizę uznaję za przynajmniej częściowo udaną – wiem co ten malware robi i gdzie wysyła zebrane dane. Przy okazji, fajnie że jest odpowiedź na POSTa. Dobrze wiedzieć, że procedura się udała.

Jak widać, w porównaniu do pierwszej wersji stealera, zbieranych jest niewiele danych. Nadal jednak znając sam token można się na takie konto zalogować i zebrać braki.

W tym wypadku jedyne co pozostało mi do zrobienia, to zgłosić ten plik do jakichś firm AV. Wybrałem F-Secure oraz Microsoft, ponieważ wyświetliły mi się jako pierwsze w Google. I po tygodniu…

Tada! Mam wkład własny w rozpoznawanie zagrożeń przez silniki AV! Sprawdźmy teraz co wypluje VirusTotal.
Yay! 2 silniki wykryły wirusa. Avira wykupiła sobie dostęp do danych F-Secure, czy jakoś tak, dlatego się też świeci. No to jeszcze raz!
Dwie godziny później F-Secure już się nie świeci.
Po dwóch miesiącach mamy już 7 silników i F-Secure się znowu świeci.

Swoją drogą, Microsoft nie odpisał mi do dziś. A szkoda.

Wracamy jeszcze na chwilę do atakującego, prezentującego swoją drogą wysoką kulturę osobistą. Wszystkie wiadomości skasował, aby uniknąć potencjalnego bana od Discorda.
Widać, że dorosły i odpowiedzialny człowiek.

Dobra dobra, ale czemu niby jest tak źle?

Drobne nieporozumienia co do wieloetapowego uwierzytelniania to jedno. Używanie jednego hasła do wszystkiego i klikanie we wszystko co popadnie to drugie, a przy tym najpopularniejsze wśród m.in moich znajomych.

Gdyby tylko istniała jakaś instytucja, do której dzieci i młodzież by przychodziły się uczyć faktycznie przydatnych rzeczy, aby potem w życiu nie było przykrości…

ImGfLiP.kOm

No właśnie, szkoła. Przyjrzyjmy się zatem, jaką to cenną wiedzę nam oferuje.

Nawet nie taka zła rada, tylko że do każdego serwisu tak wymyślać? ME NA DŻE RY

A co w podstawie programowej?

Klasy IV-VI. Troszkę mało.
Komentarz do programu klas VII-VIII. Program zakłada że to co trzeba, już wiemy. Aha, tylko że po tych klasach młodszych to raczej umie się niewiele.

Okej, wiemy więc, że w programach nauczania nie ma za wiele pomocy i wskazówek dla nauczycieli co robić. Ale może gotowe konspekty zajęć dadzą radę? Jak się okazuje, nie do końca.

Klasa IV. Otwórz Sieciaki i gotowe. Masakra. Temat na jedną godzinę lekcyjną i to tyle z bezpieczeństwa w tym roku szkolnym.
Klasa V. Ja już nie wiem, czy jest lepiej czy gorzej niż w przypadku klasy IV.
Ten sam konspekt. Beeeee, buuuu, UwUuu
Dla odmiany coś dobrego - w końcu to NASK. Klasy I-III.
Taki kwiatek w Sieciakach. Klasy I-VI. Mój talerz w SSDku już się boi.

A może podstawówka to za wcześnie na takie rzeczy? Może, dlatego przejrzałem też szkołę średnią. Z okazji COVIDu dużo materiałów musiało powstać (lub zostać zebranych) do nauki zdalnej. Przejrzyjmy je zatem. Przecież coś musiało tam być o bezpieczeństwie, prawda?

Liznąłem lekcje z liceum i się przeżegnałem. Przejrzałem wszystkie trzy lata, a o cyberzagrożeniach, hasłach czy MFA - ZERO. A przecież to szczególnie ważne podczas lekcji zdalnych i zarazem najłatwiejsze wtedy do przegadania.
I technikum. Chrome jako strażnik bezpieczeństwa i prywatności. No co? Mnie bawi.
Lista fantastycznego oprogramowania do pobrania. Oczywiście manager haseł może i niezbyt uniwersalny w wersji darmowej, ale za to także słabo tutaj przedstawiony.
Przykład z zajęć. O takich rewelacjach słyszę co chwilę. Kolega raportował mi, że u niego babka myśli, że JS nie może robić za serwer i to się nazywa PHP.
Z pewnej prezentacji...
Szkoła ponadpodstawowa. Strona rządowa Zintegrowanej Platformy Edukacyjnej. Nie lepiej nauczyć konfiguracji już istniejących i zainstalowanych narzędzi? A nie, 17 lat temu ich nie było.
Chyba dalej ZPE. No tak, zielona kłódka i jest git. ALE JEDNAK DA SIĘ TO ZROBIĆ MĄDRZE, TAK JAK TUTAJ OBOK. BRAWO RZECZNIK FINANSOWY.

A właśnie, finanse!

Może to właśnie sektor bankowy powinien spopularyzować temat bezpieczeństwa w Internecie wśród młodzieży? Bo umówmy się, rady typu "zmiana hasła co 60 dni", "obserwuj zieloną kłódkę" czy "nie rozmawiaj z obcymi" to są jakieś żarty, a nie rady.

Już obecnie banki mają wiele ciekawych ofert dla młodych. Bonusy za zakładanie konta czy używanie karty to rzecz powszechna. Dlaczego więc np. nie dorzucić do tego wymogu używania wieloetapowej weryfikacji? Albo jeszcze lepiej - kluczy U2F? Niestety, ale:

  1. Jeżeli się uprzemy na klucze U2F - są troszkę drogie, a banki muszą zarabiać.
  2. Istnieje spore prawdopodobieństwo, że te zabezpieczenia będą przez klientów wykorzystywane tylko w ramach tego jednego konta bankowego. A jak zmusić, żeby 2FA wykorzystywać także w innych usługach? Nijak.
  3. Wieloetapowa weryfikacja wymaga przynajmniej minimalnego poczucia odpowiedzialności. Z tym bywa różnie.
  4. Same banki są na bakier z MFA. Często potwierdzanie logowania opiera się na przepisywaniu kodu SMS (tak, nie zaleca się już tego, bezpieczniejsze są aplikacje). Niektóre zaś stosują hasła maskowane, a przed czym niby to chroni? Że złodziej pozna nasze dane nie za pierwszym zalogowaniem się, tylko za trzecim? Zabawne. Przy okazji hasła maskowane tylko utrudniają korzystanie z menadżerów.
  5. Banki również są na bakier z MFA U2F. W Polsce liczba banków obsługujących taką metodę uwierzytelniania wynosi zero i nie wygląda na to, by się ona miała wkrótce zmienić.
Przykład formularza z hasłem maskowanym podwędzony z Niebezpiecznik.pl

To jest dramat, kurczę

Skoro więc wiadomo, że szkoła to jest dramat, a banki - które niby mają rozwijać przyszłość bankowości - tkwią de facto w przeszłości, to co nam zostaje?

Jak zwykle, zostają nam firmy trzecie, które typowo zajmują się cyberbezpieczeństwem i szkoleniami. Taki Sekurak albo Niebezpiecznik oferują książki bądź wykłady dla każdej grupy wiekowej, jednakże nie są one rozwiązaniem systemowego problemu!

Darmowy e-book od Sekuraka! Link tutaj!

Tak samo, jak WOŚP łata niedofinansowany i źle zarządzany system opieki zdrowotnej, tak samo te szkolenia i książki próbują być odpowiedzią na systemowe braki w nauczaniu. Kłopot tym, że nie możemy ludziom tak po prostu wręczyć po książce lub zawołać ich na szkolenie i będzie git - luki te muszą zostać uzupełniane na poziomie szkolnym aby mieć pewność, że odpowiednia liczba osób będzie doedukowana w odpowiednim czasie. A przecież im później dana osoba zostanie uświadomiona o niebezpieczeństwach - tym gorzej.

Nie zrozumcie mnie źle, takie typu inwencje są nam potrzebne! Niestety jednak, uświadamiać trzeba na masową skalę poprzez kampanie oraz nauczanie. To po prostu musi dotrzeć do szerszej grupy odbiorców, zanim ludzie zostaną oszukani i będą szukali pomocy. Polak ma być mądry przed szkodą, a najlepiej, żeby szkody nie było.

Czy coś się zmieni w tej materii? Mam nadzieję, że tak. Liczę na to, że w szkołach wiedza o bezpieczeństwie zostanie kiedyś przekazywana tak, jak należy. Ale nie sądzę, żeby w naszych warunkach się to udało. Są ważniejsze rzeczy do roboty dla obecnie rządzących, np. dwudzieste emerytury czy 1000+ na każdego mleczaka u dziecka.


Ten artykuł nie mógł powstać bez dawcy próbek - mojego kolegi .unx. Dzięki! Pozdrawiam również użytkowników MinerPL, MatStef, Cyber oraz Minecrafter. VenomaPCPL wyjątkowo nie pozdrawiam, gdyż tak się złożyło, że go ten temat ominął. ¯\_(ツ)_/¯