Hakerzy mogą ukraść Twoją nazwę użytkownika i hasło do strony internetowej za pomocą osadzonego elementu iframe. Jest to słabość wszystkich menedżerów haseł, a większość z nich rozwiązała tę lukę na różne sposoby, w tym wysyłając ostrzeżenia, gdy użytkownicy są na stronie logowania z ramką iframe lub nie ufają subdomenom. Jedynym wyjątkiem jest Bitwarden, który w 2018 roku ustalił, że zagrożenie nie było wystarczająco znaczące, aby mu zaradzić.
Na swoich stronach wsparcia dotyczących „Autouzupełniania” Bitwarden radzi użytkownikom wyłączenie funkcji automatycznego uzupełniania haseł w przeglądarkach, ponieważ zakłócają one jego rozwiązanie do zarządzania hasłami. Wspomina również, że jest to dobry pomysł, ponieważ „eksperci generalnie zgadzają się, że wbudowane menedżery haseł [przeglądarki] są bardziej podatne na ataki niż dedykowane rozwiązania, takie jak Bitwarden”, co generalnie jest prawdą.
Niestety, jego wypełniacz haseł może nie być dużo lepszy niż w Twojej przeglądarce. Badacze bezpieczeństwa z Flashpoint odkryli , że rozszerzenie autouzupełniania Bitwarden obsługuje strony internetowe z osadzonymi ramkami iframe w niebezpieczny sposób. Aby zrozumieć tę lukę, potrzebna jest podstawowa znajomość ramek iframe.
Twórcy witryn internetowych używają wbudowanego elementu ramki lub ramki iframe, aby osadzić część innej strony internetowej w swojej witrynie. Na przykład można używać elementów iframe do umieszczania filmów z YouTube w swoich artykułach. Może być również używany do osadzania formularzy internetowych. Ogólnie rzecz biorąc, ramki iframe są bezpieczne w użyciu, o ile osadzony materiał z zewnętrznej witryny internetowej nie został naruszony i tu właśnie menedżerowie mają problem.
Rozszerzenia haseł automatycznie uzupełniają poświadczenia na dowolnej stronie internetowej, którą użytkownicy zapisali poświadczenia zgodnie z projektem. Jednak rozszerzenie wykona tę funkcję w elemencie iframe bez sprawdzania „Zasad tego samego pochodzenia”. Jeśli więc strona zawiera złośliwy element iframe z innej domeny, menedżer nieświadomie przekaże Twoje dane uwierzytelniające w celu wysłania ich na serwer hakera. Mogą nawet zapobiegawczo wypełnić formularz logowania bez interakcji użytkownika. W Bitwarden jest to ustawienie o nazwie „Autouzupełnianie przy ładowaniu strony”.
Dowód koncepcji pokazujący, że Bitwarden automatycznie wypełnia jednocześnie legalne i „złośliwe” pola iframe.
Większość menedżerów haseł ma mechanizmy kontrolne, które przynajmniej ostrzegają użytkowników przed potencjalnymi zagrożeniami. Jednak Bitwarden nie zapobiega ani nie ostrzega, że ramka iframe z innej domeny potencjalnie kradnie dane uwierzytelniające. Zakłada, że wszystkie elementy iframe na stronie logowania są bezpieczne. To samo zostało powiedziane w raporcie bezpieczeństwa z 2018 roku, ale o tym później.
Oczywiście może się to zdarzyć tylko wtedy, gdy zaufana strona internetowa jest już zagrożona, prawda? Według Flashpoint niekoniecznie jest to prawdą.
Oczywiście, jeśli hakerzy zdobyli wystarczającą pozycję, aby osadzić ramkę iframe na legalnej stronie internetowej, użytkownicy mają większe problemy niż ta słabość na ich rękach. W takim scenariuszu niewiele może zrobić jakiekolwiek rozszerzenie do zarządzania hasłami. Jednak niektóre legalne witryny używają formularzy z innej domeny, osadzając je w ramce iframe. Jeśli hakerzy mogą skompromitować dodatkowe źródło, mają proxy do kradzieży informacji z zaufanej witryny.
Flashpoint przyznaje, że jest to rzadki scenariusz i potwierdził to wyrywkową kontrolą kilku witryn używających ramek iframe na swoich stronach logowania. Jest jednak inny problem. Domyślne dopasowanie URI (Uniform Resource Identifier) Bitwarden jest ustawione na „domena podstawowa”. Tak więc rozszerzenie zapewnia automatyczne uzupełnianie haseł, o ile domeny najwyższego i drugiego poziomu są zgodne.
Problem polega na tym, że kilka usług hostingowych umożliwia użytkownikom hostowanie „dowolnych treści” pod subdomeną, dzięki czemu stosunkowo łatwo jest sfałszować stronę logowania.
Flashpoint używa iCloud jako przykładu strony logowania, która wykorzystuje zewnętrzną ramkę iframe z apple.com, aby umożliwić użytkownikom uwierzytelnianie za pomocą poświadczeń Apple.
„Na przykład, jeśli firma ma stronę logowania pod adresem https://logins.company.tld i umożliwia użytkownikom udostępnianie treści pod adresem https://[nazwaklienta].company.tld, użytkownicy ci mogą ukraść dane uwierzytelniające z rozszerzenia Bitwarden” — powiedział Flashpoint. „W naszych badaniach potwierdziliśmy, że kilka głównych stron internetowych zapewnia dokładnie to środowisko. Jeśli użytkownik z rozszerzeniem przeglądarki Bitwarden odwiedza specjalnie spreparowaną stronę hostowaną w tych usługach internetowych, osoba atakująca może ukraść dane uwierzytelniające przechowywane dla odpowiedniej domeny ”.
Co dziwne, kiedy Flashpoint skontaktował się z Bitwarden w sprawie tej słabości w celu koordynacji ujawnień, firma wskazała, że wie o tym od 2018 roku.
„Ponieważ Bitwarden nie sprawdza adresu URL każdej ramki iframe, możliwe jest, że witryna internetowa ma osadzoną złośliwą ramkę iframe, którą Bitwarden automatycznie wypełni poświadczeniami witryny„ najwyższego poziomu ”, czytamy w raporcie z oceny bezpieczeństwa firmy z 2018 r . „Niestety istnieją uzasadnione przypadki, w których strony internetowe będą zawierały formularze logowania iframe z innej domeny niż domena ich„ nadrzędnej ”witryny. W tej chwili nie planuje się żadnych działań”.
Innymi słowy, Bitwarden jest świadomy problemu, ale uważa, że ryzyko jest na tyle akceptowalne, że nic z tym nie robi, nawet jeśli byłoby to tak proste, jak wysłanie przez rozszerzenie ostrzeżenia, gdy na stronie znajduje się element iframe. Flashpoint uznał to za niewytłumaczalne, ponieważ wszyscy konkurenci Bitwarden mają jakąś formę łagodzenia tego exploita.
Badacze stworzyli dowód koncepcji, wykorzystując lukę jako wektor ataku i „działający exploit”, który wdrożyli prywatnie w „wybitnym środowisku hostingowym”. Mają nadzieję, że programiści z Bitwarden zmienią zdanie w tej sprawie, ponieważ nikt nie stworzył takich exploitów w 2018 r., kiedy firma początkowo oceniała tę słabość. Dopóki Bitwarden nie usunie luki w zabezpieczeniach, możesz zrobić kilka rzeczy, aby ją złagodzić bez przełączania menedżerów haseł.
Najpierw wyłącz w rozszerzeniu ustawienie „Autouzupełnianie przy ładowaniu strony”. Będziesz musiał przez cały czas ręcznie uruchamiać funkcję autouzupełniania. Daje to jednak trochę miejsca na sprawdzenie strony logowania bez natychmiastowego przekazywania poświadczeń do elementu iframe. To właściwie dobra rada dla każdego rozszerzenia menedżera haseł z zapobiegawczym autouzupełnianiem.
Po drugie, użyj tej przerwy, aby upewnić się, że jesteś w zaufanej domenie i że strona jest tym, czym się wydaje. Spójrz na adres URL, aby upewnić się, że znajdujesz się we właściwej domenie lub subdomenie i że nic nie wygląda podejrzanie. Na przykład coś takiego jak „login.wellsfargo.com” jest prawdopodobnie legalne, podczas gdy „credx257.wellsfargo.com” prawdopodobnie nie.
Te kroki nadal nie ochronią Cię przed witrynami korzystającymi z zainfekowanych zewnętrznych formularzy internetowych, ale Flashpoint zauważył, że takie scenariusze są rzadkie. Nie ma powodu, aby rezygnować z używania menedżera haseł, nawet Bitwarden. Menedżerowie są dobrze przystosowani, aby pomóc Ci utrzymać swoje referencje prosto. Zawsze lepiej jest mieć mnóstwo solidnych, trudnych do zapamiętania haseł, unikalnych dla każdej witryny, niż ponownie używać słabych.