Czy logowanie przez Facebooka jest bezpieczne? Co zyskujemy, co ryzykujemy
Przyciski Facebooka (i nie tylko) coraz częściej pojawiają się jako opcja logowania na stronach internetowych. Czy warto zaufać temu rozwiązaniu?
Czasy kiedy internauta musiał zapamiętać dane logowania wyłącznie do darmowej skrzynki pocztowej minęły bezpowrotnie. Współczesny Internet to tysiące usług, a tym samym bardzo często dziesiątki kont przypadające na jednego użytkownika. Niektórym trudno jest zapamiętać wszystkie swoje hasła. Co w takiej sytuacji?
W ostatnich latach na popularności zyskała praktyka największych internetowych wydawców, by za pomocą konta w ich usługach uzyskiwać dostęp także do pomniejszych, zewnętrznych serwisów. Z tego typu rozwiązania korzysta m. in. Facebook wymieniany przez nas jako przykład z racji ogromnego zasięgu. Swoje wersje takich systemów posiadają jednak w zasadzie wszystkie największe firmy np. Microsoft, Apple czy Twitter. Skąd wzięły się takie rozwiązania? Który z wielkich wprowadził je jako pierwszy? Aby wyjaśnić te kwestie musimy cofnąć się o ponad dekadę, kiedy zaczęto wcielać w życie koncepcję OpenID.
Czym jest OpenID?
Pomysł zarządzania swoimi internetowymi tożsamościami za pomocą jednego konta zrodził się w głowie Brada Fitzpatricka w maju 2005. Brad był zresztą nie byle kim, posiadał swoją stronę internetową - LiveJournal. Dość popularną, co umożliwiło mu to w miarę szybkie zarażenie swoim pomysłem także większych graczy, m. in. Symantec, PayPal, Yahoo! i Microsoft.
Powstała wówczas koncepcja OpenID zakładała istnienie jednej uniwersalnej wizytówki internauty zawierające podstawowe dane na jego temat. Taką wizytówkę mógłby przechowywać nawet na własnym serwerze lub korzystać z delegowanych do tego usług. Następnie przy próbie rejestracji w jakimś z portali mogliśmy wykorzystać tę wizytówkę jako narzędzia do rejestracji, wybierając którymi danymi chcemy się podzielić. Po stworzeniu konta, OpenID miałby służyć do wygodnego logowania się w wybranych przez siebie serwisach. Rozwiązanie to, pomimo kilku prób wdrożenia go w praktyce, pozostaje przede wszystkim projektem dość mocno koncepcyjnym. W międzyczasie bowiem duże firmy, takie jak Facebook, zaczęły tworzyć swoje mechanizmy w oparciu o OAuth.
Czym jest OAuth?
OAuth to kolejny standard autoryzacyjny współczesnego Internetu, który zresztą zrodził się w trakcie prac nad OpenID i jest jego bardzo bliskim kuzynem. O ile jednak OpenID to pojedynczy zestaw danych używanych do rejestracji na wielu stronach internetowych, OAuth to raczej zezwolenie udzielanie konkretnej stronie na korzystanie informacji zawartych w koncie innej witryny albo po prostu w celu weryfikacji naszej tożsamości.
W 2006 roku Blaine Cook, pracownik Twittera, próbował wdrożyć do popularnego "ćwierkacza" standardy OpenID. W międzyczasie pojawił się problem, w wyniku którego posiadacze twitterowych kont uwiarygodnianych za pośrednictwem OpenID mieli problemy z autoryzacją zewnętrznych usług działających w ramach API Twittera (np. monitorujących kto przestał nas obserwować czy umożliwiających szybkie wgrywanie obrazków).
W odpowiedzi na te wątpliwości zrodził się standard OAuth, który stoi też u fundamentów opcji Facebook Connect. Wyjaśniając techniczne zawiłości w możliwie zrozumiały sposób - uczestnictwo tego standardu pozwala zewnętrznym aplikacjom czy stronom internetowym korzystać z naszych kont w popularnych usługach, takich jak Twitter, Facebook czy Microsoft właśnie.
Od strony konstrukcyjnej jest to dość złożona procedura - przynajmniej dla laika. Twórcy takich aplikacji muszą skorzystać ze specjalnych standardów określonej usługi i zarejestrować tam swoją działalność, otrzymując między innymi unikalny klucz dla swojego produktu. Prowadzi to do powstania tzw. tokenu. Kiedy chcemy zezwolić zewnętrznej usłudze na skorzystanie z naszego np. Facebookowego konta, za pośrednictwem unikalnego i specjalnie wygenerowanego linku potwierdzamy serwisowi Marka Zuckerberga, że w istocie jesteśmy osobą, za którą się podajemy i wynika to z naszej woli. Dochodzi wówczas do autoryzacji usługi.
Rozwiązanie to jest dziś coraz częściej wykorzystywane na stronach internetowych, a niemal regularną praktyką stało się w mobilnych aplikacjach, które często nie mają nawet czasu i ochoty na tworzenie szczegółowej infrastruktury zarządzania użytkownikami. Na dodatek takie rozwiązanie łączy ich ze społecznościowymi usługami swoich użytkowników, co bardzo często jest skrzętnie wykorzystywane - np. w różnych aplikacjach kalendarzowych, szybko uzyskując informacje na temat dat urodzin naszych przyjaciół.
Jak skorzystać, jakie dane udostępniać?
Z usługi logowania za pośrednictwem kont w popularnych serwisach społecznościowych nie możemy skorzystać przez te serwisy, wchodząc w specjalną zakładkę i wybierając sobie gdzie od tej pory powinniśmy mieć takie nowe konto (a może nie byłoby to wcale najgorszym pomysłem). O tym, że istnieje możliwość skorzystania z takiego zaocznego logowania dowiemy się dopiero na stronie głównej interesującej nas usługi. Katalog ten jest ogromny i stale się powiększa. Przykłady? Feedly, Flipboard czy Allegro, ale można wymieniać je naprawdę długo.
Podczas autoryzacji usługi w serwisie społecznościowym otrzymujemy informację, jakie dane udostępniamy nowej usłudze w ten sposób. Czasem może to być tylko imię i nazwisko oraz adres e-mail, ale czasem chce ona dowiedzieć się o nas jak najwięcej. Warto przyglądać się temu bliżej, ponieważ niekiedy można ograniczyć zakres udostępnianych danych. Niewykluczone, że bywają one wykorzystywane także do celów statystycznych lub marketingowych, ale miewa to i swoje dobre zastosowania. Na przykład popularny serwis Filmweb w ten sposób od razu kojarzy nas ze znajomymi na Facebooku, dzięki czemu w najpopularniejszym polskim serwisie o filmach od razu możemy porównywać swój gust z przyjaciółmi.
Do pewnego momentu przy łączeniu nowych usług ze stroną w serwisie społecznościowym - szczególnie dotkliwe było to właśnie na Facebooku - aplikacja mogła wymusić opcję publikowania postów. Było to niezwykle irytujące, ponieważ tego typu rozwiązanie gwarantowało w zasadzie największy napływ społecznościowego spamu z informacjami, że ktoś coś polubił lub grał w jakąś grę. W ustawieniach aplikacji można jednak było dość łatwo ustawić, że takie posty widzimy tylko my. Z czasem częstszą praktyką stało się jednak automatyczne uniemożliwianie przez serwisy społecznościowe publikacji treści na łamach serwisów - ku uciesze całych ich społeczności. Twórcy aplikacji sami sobie zgotowali zresztą ten los, atakując użytkowników nieprzyzwoitymi porcjami spamu, scamu czy innego typu wyłudzaczy danych osobowych.
Wszystko pod kontrolą
Z tego też względu serwis Facebook przez lata bardzo uczulił swoje mechanizmy pod kątem zewnętrznych usług i aplikacji. Spory nacisk położono też na zarządzanie nimi i stosunkowo łatwą obsługę połączonych z naszym kontem aplikacji. Początkowo służyła do tego zakładka Aplikacje, teraz jest ich więcej - Aplikacje i witryny, Gry błyskawiczne, Integracje biznesowe. Zapewnia to zdecydowanie lepszą czytelność, zwłaszcza jeżeli ktoś chętnie korzysta z omawianej funkcjonalności. Warto dbać o higienę aplikacji i gier, którym udzielamy dostępu do naszego konta, a także sprawdzić zakres udostępnianych danych.
W ostatnich latach powiązane aplikacje i gry nie są już tak groźne, ale były czasy, kiedy brak odpowiedniej kontroli nad tym aspektem Facebooka, potrafił być prawdziwym utrapieniem. W przypadku innych serwisów np. Twittera zjawisko spamu zewnętrznych aplikacji nie dało się aż tak internautom we znaki (również ze względu na mniejszą popularność tych serwisów oraz fakt, iż decydują się na korzystanie z nich osoby nieco bardziej biegłe w komputerach). Tym niemniej w sposób zbliżony do facebookowego, istnieją stosowne panele gdzie możemy zarządzać witrynami i programami, którym udzieliliśmy dostęp do naszych kont. W przypadku Twittera można znaleźć go udając się pod Ustawienia i prywatność > Dane i uprawnienia > Aplikacje i sesje.
Czy to jest bezpieczne?
Odpowiedź na to pytanie jest dość zaskakująca. Choć w mediach generalnie nie dało się słyszeć o zbyt wielu przypadkach wycieku danych przy logowaniu za pomocą protokołu OAuth, to eksperci do spraw internetowego bezpieczeństwa, w zależności od stopnia zaangażowania, delikatnie „nie sympatyzują z tym rozwiązaniem” aż po opinie nie zostawiające na nim suchej nitki. Wskazywane jest, że protokół nie jest doskonały, a źle wdrożony (jako przykład podano np. przygody serwisu Foursquare) może prowadzić do wycieku wszelkich danych, wliczając w to nawet możliwość zalogowania się na nasze konto w usłudze społecznościowej.
Zdaniem ekspertów od bezpieczeństwa jest to już przykład skrajnej nieodpowiedzialności autora usługi/witryny wykorzystującej takie logowanie. Generalnie więc zalecane jest, by z logowania przez Facebooka (i inne serwisy) korzystać głównie w zakresie wydawców, co do których mamy zaufanie - w szczególności w zakresie odpowiedzialności przy tworzeniu zabezpieczeń własnej witryny. Dobrze zorganizowany atak hakerski może bowiem sprawić, że informacje na nasz temat dostaną się w niepowołane ręce.
Często zwraca się też uwagę na bezpieczeństwo z innej perspektywy. Nawet jeżeli ktoś nie zaatakuje naszych danych w zewnętrznej usłudze, ale zaatakuje na przykład Facebookowe konto - w ten sposób uzyskuje dostęp do naszych kont we wszystkich powiązanych z nim serwisach. Z tego powodu skrajnie nieodpowiedzialne byłoby więc łączenie się w taki sposób chociażby z usługami bankowymi. Z drugiej strony, blokada konta na Facebooku (przez sam portal) powoduje trudności z dostaniem się do połączonych z nim usług.
Nie brakuje też licznych argumentów odnośnie tego, że nawet jeżeli nie dochodzi do prób wyłudzenia konta i włamywania się na nie, to tworząc nowe konta za pośrednictwem Facebooka prezentujemy witrynom pakiet intymnych informacji na nasz temat. A ponadto Facebook w pełni pozwala sobie wówczas monitorować nasze poczynania.
Za czy przeciw?
Pomimo tych dość surowych ocen dotyczących bezpieczeństwa logowania za pomocą takich protokołów, warto podkreślić, że do praktycznych naruszeń bezpieczeństwa danych użytkowników Facebooka dochodzi stosunkowo rzadko. Być może wynika to też z kunsztu programistów, którzy ze standardu OAuth wyciskają siódme poty. Samo rozwiązanie niewątpliwie ułatwia życie współczesnego internauty, a niekiedy wręcz wzbogaca je o nowe możliwości. Dlatego też korzystanie z tego typu patentów wydaje się być uzasadnione. Oczywiście poza skrajnymi przypadkami, takimi jak chociażby bankowość. To zdecydowanie odradzamy. Trzeba też podkreślić, że im mniej danych na Facebooku tym mniej potencjalnych strat w przypadku jakiegokolwiek ataku.
Oczywiście jednak ostateczna decyzja należy do Was. Jakie macie stanowisko w tej kwestii?
Artykuły, które również powinny Cię zainteresować:
- 10 najlepszych darmowych programów antywirusowych
- Jaki program do backupu danych - TOP 5
- Dlaczego warto usunąć konto na Facebooku? 10 powodów
- 5 miliardów dolarów kary dla Facebooka
- Uważajcie, co publikujecie w sieci - Kinga Rusin nie uważała
Komentarze
8https://www.netflix.com/pl/title/80117542