Prywatność przeciw bezpieczeństwu

Zaczęło się od historii związanej z cyberbezpieczeństwem. Użytkownik zauważył włamanie na swoje konto LinkedIn. Zapytał w social media, co się mogło wydarzyć, czy możliwe przejęcie dostępu do skrzynki pocztowej bo tam przyszedł mail z kodem potwierdzającym logowanie[1]. I czy dobrym pomysłem jest zapytanie dostawcy poczty o logi z ostatnich logowań. Informacje – jak zwykle w takich przypadkach – niepełne. Bo i nie wiadomo, co dokładnie jest potrzebne, istotne, i nikt nie napisze wszystkiego publicznie w social media. Akurat miałem chwilę, więc zaproponowałem telefon. Użytkownik nie chciał podać numeru, gdyż prywatność. Trochę rozumiem. Trochę nie. No nic, spróbujemy poczatować.

Skrzynka email była u dostawcy poczty z „no log policy”, więc nie wróżyłem sukcesów. Zasugerowałem w pierwszej kolejności zmianę hasła do poczty, ustawienie tam 2FA (nie było). Konto LinkedIn zostało zablokowane, chcą weryfikacji dokumentem. Użytkownik ma opory przed przesłaniem go do firmy trzeciej. Trochę rozumiem, trochę nie.

Nie znam charakterystyki wykorzystania komputera, ani nawyków. Te sama hasła w różnych miejscach? Raczej wyciek czy raczej stealer? Użytkownik zrobił jakieś skany antywirusem (nic wyraźnego nie znalazło), zmienił hasła w innych usługach[2] i ustawiał 2FA (dobry pomysł).

Timeline ataku:

  • 12:58 – pierwszy mail z kodem,
  • 13:00 – zmiana hasła do konta LinkedIn,
  • 13:02 – drugi mail z kodem (zapewne atakujący loguje się nowymi danymi),
  • 13:05, 13:08, 13:10 – dodane własne maile przez atakującego (czemu aż 3?).

LinkedIn wysyła sześcioznakowy kod na maila w celu potwierdzenia logowania. Nie wygląda na łatwe do brute force, kod był generowany tylko jeden za każdym razem. Czyli wszystko wskazuje na to, że atakujący miał dostęp do skrzynki. Ba, może nawet w ogóle najpierw uzyskał dostęp do skrzynki, zobaczył, że powiązana z kontem LinkedIn i je zaatakował? Dość długie odstępy pomiędzy kolejnymi krokami. Czyżby ręczne działanie?

W każdym razie pożar ugaszony. Pozostało obserwować, czy coś dziwnego się nie dzieje i ewentualnie odzyskać konto LinkedIn.

Jednak użytkownik jest niezadowolony. Narzeka, że LinkedIn nie rozpoznał ataku, a przecież IP było nietypowe, z innego kraju. Działania nietypowe. Narzeka, że chcą dokumentów. Trochę rozumiem, trochę nie.

Bo przecież z punktu widzenia użytkownika wszystko było w oczywisty sposób nietypowe. A z punktu widzenia LinkedIn? I ich skali?

Z perspektywy LinkedIn było to prawdopodobnie „czyste” logowanie. Prawidłowe hasło podane za pierwszym razem. Kod został wysłany na maila i potwierdzony. Zapewne także od razu. IP z innego kraju? To od lat bardzo słaba wskazówka. Masa ludzi korzysta teraz z VPNów, wielu urządzeń, wielu ludzi po prostu podróżuje.

Wyobraźmy sobie, że jesteśmy na urlopie w dalekim kraju, dostajemy sygnał od znajomych, że dziwne rzeczy dzieją się z naszym kontem w jakimś serwisie. Logujemy się, potwierdzamy kod z maila, chcemy zmienić hasło do serwisu. A skoro atakujący potwierdzali kod, to może problem jest ze skrzynką email? Chcemy zmienić inną, zaufaną, tam, gdzie mamy 2FA i wiemy, że wszystko jest OK. No i co, serwis miałby nie pozwolić? Kazać weryfikować się dokumentem? Nie wyobrażam sobie tego – ludzie by ich zjedli.

Blokada konta do czasu weryfikacji dokumentu jest jakby standardem. Nie jest idealna, ale działa dla wszystkich[3], niezależnie czy ktoś płacił, czy zmieniał telefon, adres itp. Prosta procedura, bez wyjątków i warunków, to dobra procedura. Atakujący nie przekona pracownika, żeby sprawdził akurat coś, nad czym akurat ma kontrolę.

Uważam, że część winy ponosi tu ślepe zachwalanie prywatności. Obrońcy prywatności krzyczą, że fingerprinting urządzeń zły[4], że trzeba się bronić. AI złe bo przetwarza dane nie wiadomo jak, trzeba się nie zgodzić. No log policy ma świadczyć o poszanowaniu prywatności, a VPN „zwiększa prywatność i bezpieczeństwo”. Ludzie może nie do końca rozumieją o czym mowa i dlaczego, ale wierzą. Wierzą reklamom, wierzą autorytetom. O tym, że nie wszystko jest dobre dla każdego, łatwo zapomnieć i mało kto to podkreśla. Wierzę, że agitatorzy prywatności nie mają złych intencji. Ale zapominają o poziomie wiedzy odbiorców i zakładają, że użytkownik jest w stanie sam skutecznie zadbać o bezpieczeństwo. Tymczasem niekoniecznie.

Czy gdyby fingerprinting był możliwy i powszechny, ludzie nie korzystaliby z VPNów tylko z „normalnych” IP, to serwisy lepiej chroniłyby użytkowników, lepiej rozpoznawały anomalie i byłoby bezpieczniej? Niekoniecznie. I raczej się tego nie dowiemy. Bo zabezpieczenia to koszt, czym innym jest profilowanie użytkownika dla większego zysku z reklam, a czym innym dla poprawy bezpieczeństwa. Za to wiemy, że teraz po prostu nie mają możliwości tego robić. Nie sensownie[5], nie w dużej skali.

[1] Dlatego maile czy SMSy nie są dobrym 2FA. Oczywiście lepszy rydz, niż nic, ale 2FA powinno być na innym urządzeniu i niemożliwe przechwycenia.
[2] Niekoniecznie dobry pomysł, bo jeśli to stealer, to skrajnie może doprowadzić do pogorszenia sytuacji poprzez wycieku danych logowania do większej ilości serwisów.
[3] Żeby zrozumieć pewne rzeczy, potrzeba czasu, bo przecież sam narzekałem kiedyś na procedurę w Allegro. No, ale tam chodziło jednak trochę o coś innego, nie o sam fakt żądania dokumentu.
[4] Wystarczy przypomnieć ostatnią aferę, choć tam nie do końca o fingerprinting szło, a sprawy poszły za daleko.
[5] Dla jasności, systemy wykrywające anomalie nadal istnieją i działają. Skuteczność jest… różna. I jednak czym innym jest oznaczenie zdarzenia jako podejrzanego, a czym innym automatyczna blokada.

Browsergate

Skoro jest strona, to sprawa jest poważna, prawda? Coraz głośniej robi się o aferze ochrzczonej Browsergate. Zaczyna się od LinkedIn Is Illegally Searching Your Computer. Czyli grubo. Ale czy słusznie?

Wydaje mi się, że autorzy trochę wyolbrzymiają. Co się dzieje technicznie? Na stronie LinkedIn jest javascript, którego zadaniem jest zebranie informacji o zainstalowanych rozszerzeniach w Chome[1]. Jest to robione przy pomocy paru technik. Najważniejsza z nich opiera się o predefiniowaną listę rozszerzeń i obecnych w nich plików. Skrypt próbował czytać kolejne pliki i – w przypadku sukcesu – zapamiętywał informację, że dane rozszerzenie jest obecne (i aktywne). Tak zebrane informacje były wysyłane do właściciela LinkedIn, czyli Microsoftu. Nie ma natomiast mowy o przeszukiwaniu komputera, co sugeruje nagłówek autorów znaleziska. Aktywność jest ograniczona do plików rozszerzeń.

Autorzy znaleziska argumentują, że za sprawą rozszerzeń w przeglądarce można określić przekonania polityczne, religijne, zdrowotne i dotyczące zatrudnienia. Jestem w stanie się zgodzić, że w specyficznych przypadkach[2] faktycznie da się określić je z wysokim prawdopodobieństwem. I – ponieważ użytkownik jest zalogowany – skorelować z konkretną osobą.

Zatem oburzenie na Microsoft jest słuszne. Czemu jednak jest ograniczone tylko do tej jednej firmy, a Google i twórcy rozszerzeń są tu pominięci? Cała technika możliwa jest tylko dlatego, że przeglądarka Google, podobnie jak wszystkie pochodne Chromium, stosują stałe lokalne identyfikatory rozszerzeń. Nie jest to żadna tajemnica. Nie jest to też norma wśród przeglądarek. Firefox na przykład stosuje losowe identyfikatory lokalne. Takie działanie uniemożliwia stronie próbę odczytu znanego pliku z rozszerzenia, więc technika nie zadziała.

Dodatkowo, twórcy rozszerzenia muszą w manifeście jawnie zezwolić stronie[3] na dostęp do plików przy pomocy dyrektywy web_accessible_resources. Ładny opis, łącznie z tym, że Chrome nie ma losowych identyfikatorów znajdziemy na stronie Mozilli.

Czemu nie ma oburzenia na twórców Chromium, którzy nie randomizują lokalnych ID rozszerzeń? Ani na samych twórców rozszerzeń pozwalających na ustalenie wrażliwych danych, że pozwalają na czytanie plików rozszerzenia stronom[4]? No i w końcu zastanawia mnie, czy to jedyna strona, która tak działa?

Sama funkcjonalność odczytu plików rozszerzeń nie jest nowa i była znana wielu osobom (tak, znałem). Zastosowanie jest… interesujące. Mi masowe skanowanie rozszerzeń nie przyszło do głowy. Może dlatego, że nie mam zastosowania dla tych danych? Czy za sprawą Browsergate będzie mała rewolucja w świecie rozszerzeń i podejściu do prywatności? Zobaczymy.

[1] Tak naprawdę w pochodnych Chromium.
[2] Wymieniają te przypadki i są to konkretne rozszerzenia, których obecność Microsoft celowo sprawdza.
[3] Lub stronom, możliwe wildcardy.
[4] No dobrze, nie zawsze może dać się uniknąć dostępu do plików, zapewne zależy od tego, co dane rozszerzenie robi.

Zmiany algorytmów Google

W wielu miejscach ludzie narzekają, że Google zmieniło algorytmy, ich strony spadły w rankingu, choć stosowali się do zaleceń Google, a biznes upada. To oczywiście smutne, tylko nie do końca widzę w tym winę Google. Oparcie biznesu o jednego partnera było świadomą decyzją. Stosowanie się do zaleceń Google w sprawach SEO nigdy nie dawało gwarancji, że zawsze będzie dobrze, prawda? Gwarancji, że te zalecenia się nie zmienią też nie było. Gdyby tylko w jakiś sposób dało się przewidzieć, że gigant będzie kierował się wyłącznie własnym zyskiem…

Zmiany i błędy

Błędy się zdarzają. Zmiany też. Uzależnianie się od jednego dostawcy zawsze jest poważnym ryzykiem. Nawet, jeśli dostawca wydaje się duży i solidny[1]. Zresztą, akurat Google od dawna pokazuje apetyt na to, by korzystać z czyjegoś dorobku, niekoniecznie dzieląc się zyskiem. Pamiętacie Accelerated Mobile Pages? Już wtedy twórcy treści narzekali, że ruch klientów nie trafia do nich i tracą zyski z reklam. Reklam Google, oczywiście. No ale skoro Google mogło dostarczyć ludziom wynik wyszukiwania AKA content, w dodatku od siebie, to po co miałoby przekierowywać klienta na źródło i płacić za wyświetlenia/kliknięcia w reklamy? A jeszcze osoba, która szukała gotowa dodać stronę do bookmarków i nie skorzystać następnym razem z wyszukiwarki, gdzie Google może mu wyświetlić reklamy w wynikach wyszukiwania… No czysta strata przecież.

Błędy zdarzają się i grubszego kalibru, nawet przy płatnych usługach. Bo indeksowanie i pokazywanie w wyszukiwarce jest bezpłatne i bez żadnych dwustronnych umów i gwarancji. A przecież zdarzyło się zablokowanie i usunięcie usług, za które płacono. Oczywiście z danymi[3].

AI

Przeżywamy właśnie zachłyśnięcie się AI[2], które pakowane jest dosłownie wszędzie. Czy ma to sens, czy nie. Jest to symbol/synonim nowoczesności, więc pewne było, że wyniki wyszukiwania też będą to wykorzystywać. Zresztą, Bing zrobił to już dawno. Głośno robi się o błędach wyszukiwarek opartych o AI. Oczywiście, takie błędy są. I pewnie będą, szczególnie, że wiemy, że LLMy lubią halucynować. Ale… w tradycyjnych wyszukiwaniach też były. Tylko po prostu nikt raczej nie robił afery, gdy link był nieadekwatny czy zawierał błędne informacje. No chyba, że w wynikach wyszukiwania, tłumaczenia albo na Google Maps znalazło się coś godzącego w znaną osobę lub instytucję. Wtedy było trochę śmiechu i szybka korekta. I jakoś nikt nie robił afery.

W sumie zastanawiam się, kiedy do ludzi dotrze, że LLMy są niezłe odtwórczo, ale niespecjalnie są w stanie coś nowego wymyślić. I tak naprawdę żerują na tym, co ludzie wymyślili wcześniej. I bez dostępu do tych danych są niczym. Można obserwować bunt twórców treści w serwisie Stack Overflow. Ciekawe kiedy powstanie zdecentralizowana, szanująca autorów alternatywa…

Zmiany algorytmów Google

Dla jasności – sam obserwuję zmiany algorytmów w Google u siebie na blogach. Pozycje i liczby odsłon w Google webmaster tools zmieniły się istotnie, liczba wejść – mierzona niezależnie – spadła. Też istotnie. Wszystko to zaczęło się w ostatniej dekadzie kwietnia 2024. Odnotowuję z kronikarskiego obowiązku, bo nie ma to dla mnie żadnego znaczenia. I po części pewnie kwestia pogody.

Wyszukiwarki

I na zakończenie nie całkiem nie na temat: DuckDuckGo nie działało podczas awarii Bing. Wiedziałem, że korzystają z ich wyników (od czasu rozwiązania/zawieszenia współpracy z Yandex – chyba już tylko z nich), ale w obecnej sytuacji poszukam jakiejś alternatywy dla podstawowej wyszukiwarki. Świata to nie zmieni, bo i tak jestem multiwyszukiwarkowy – często sprawdzam wyniki w 2-3, poza tym, na różnych komputerach mam różną domyślną, ale spróbować można. Póki co silnym typem jest Qwant – działający na europejskich, bardziej sprzyjających prywatności, zasadach.

[1] A może „zwłaszcza”? Jak głosił slogan z pewnej reklamy duży może więcej. Podmioty o dużym udziale na rynku będą miały tendencję do monopolu/oligopolu, bo taki jest naturalny trend ekonomiczny. A że monopol nie służy klientom, to wiemy. Pytanie tylko czy i kiedy taki duży dostawca zechce skorzystać ze swojej pozycji.
[2] Gdzie chwilowo AI = LLM, co do prawdziwej sztucznej inteligencji ma się nijak.
[3] Już po opublikowaniu tego wpisu Google zamieściło oficjalne stanowisko w tej sprawie. Są pewne rozbieżności, np. podobno backupy nie zostały usunięte. Ale mimo to do przywrócenia wykorzystano zewnętrzne backupy. Hm!

UPDATE: Dodany link do stanowiska Google w sprawie usunięcia usług.