Dlaczego Firefox wymusza 3-sekundowe opóźnienie przed instalacją dodatków?

54

Przypuszczam, że opóźnienie Firefoksa przed instalacją dodatków jest związane z bezpieczeństwem, ale przez całe życie nie mogę zrozumieć, co to jest. (Tak, wiem, że możesz wyłączyć opóźnienie).

Jeśli odpowiesz na to pytanie, podaj referencje z list mailingowych Firefoksa lub dzienników zatwierdzeń.

Natan Yellin
źródło
12
Pytanie powinno brzmieć „dlaczego tylko Mozilla to robi?”. IMHO, każde nowe okno dialogowe powinno włączać przyciski 1 sekundę po ich wyświetleniu, ponieważ możesz przypadkowo je kliknąć (lub ktoś chce, abyś kliknął je bez Twojej zgody). Naprawdę nienawidzę tego, kiedy gdzieś klikam, a przycisk pojawia się tuż przed kliknięciem. Dzieje się tak również z telefonami, gdy ktoś dzwoni do ciebie w momencie, w którym chcesz dotknąć tego przycisku „zagraj”.
Mike
4
„Jeśli odpowiesz na to pytanie, podaj referencje z list mailingowych Firefoksa lub dzienników zatwierdzania.” Jeśli to twoje wymaganie, to czy nie możesz przeprowadzić własnego wyszukiwania?
kmm
2
Może nie jest to takie łatwe do znalezienia, lub jest kilka innych rzeczy do rozważenia. Może ktoś tutaj miałby więcej wewnętrznych informacji - kto wie? Nie jest źle pytać per se @Kevin
slhck
Próbowałem wyglądać sam, ale nie mogłem znaleźć informacji. (Powiedziałem to w edycji kilka godzin temu, która została w jakiś sposób zagubiona: superuser.com/users/68351/... )
Natan Yellin
@ aantn Przepraszamy, usunąłem go, ponieważ tak naprawdę nie dodał niezbędnych informacji do pytania. Generalnie oczekujemy, że ludzie
zaczną

Odpowiedzi:

71

Dlaczego?

  • Ponieważ chcą, abyś pomyślał o tym, co robisz
  • Ponieważ zapobiega przypadkowym instalacjom
  • Ponieważ zapobiega złośliwie uruchomionym instalacjom

Jak możesz złośliwie uruchomić instalację?

Oto interesujący artykuł na temat warunków wyścigu w dialogach bezpieczeństwa Jessego Rudermana:

Inna forma ataku polega na przekonaniu użytkownika do dwukrotnego kliknięcia określonego miejsca na ekranie. To miejsce jest miejscem, w którym pojawi się przycisk „Tak”. Pierwsze kliknięcie uruchamia okno dialogowe; drugie kliknięcie ląduje na przycisku „Tak”. Zrobiłem demo tego ataku dla Firefoksa i Mozilli.

Rozwiązaniem Firefoksa, od błędu 162020 , jest opóźnienie włączenia przycisków „Tak” / „Zainstaluj” do trzech sekund po pojawieniu się okna dialogowego. Uważam, że jest to jedyna możliwa poprawka inna niż całkowite odmawianie niezaufanym treściom możliwości stwarzania dialogu. Niestety ta poprawka jest frustrująca dla użytkowników, którzy często instalują rozszerzenia.

Zasadniczo wszystko sprowadza się do przewidywania, kiedy użytkownik kliknie, a następnie przechwycenia tego kliknięcia w oknie dialogowym instalacji. Ruderman wyjaśnił bardziej zwięzłą sytuację w grze w swoim raporcie o błędach z Firefoksa, co ostatecznie doprowadziło do włączenia okresu opóźnienia.

Podsumowując, jego głównym celem było:

Jeśli mogę kontrolować lub przewidzieć, kiedy i gdzie użytkownik kliknie, mogę skłonić go do zainstalowania oprogramowania .


Jakieś alternatywy dla okresu opóźnienia?

Okres opóźnienia był z pewnością tylko jednym ze sposobów radzenia sobie z tym. Kolejnym może być tasowanie przycisków „Instaluj”, „Anuluj” za każdym razem, gdy coś instalujesz. Jest to często używane, ale bardziej dezorientuje użytkownika niż pomaga.

Innym pomysłem byłoby losowe przesunięcie położenia okna dla każdego okna dialogowego. Ma to taki sam skutek jak tasowanie przycisków, a mianowicie dezorientowanie użytkownika.

Ponadto wprowadzenie losowości nie jest ostatecznym rozwiązaniem. Jeśli istnieją skróty klawiaturowe dla przycisków, można również przechwytywać naciśnięcia klawiszy. Biorąc to wszystko pod uwagę, dziś wydaje się bardziej starszą funkcją, ponieważ większość wtyczek jest instalowana z oficjalnej strony z dodatkami do Firefoksa.

slhck
źródło
1
Czy uprawnienia instalacyjne dla addons.firefox.org nie rozwiązują tego?
Natan Yellin
Najprawdopodobniej. Pomogłoby to mieć opcję trwałego akceptowania (tak jak w przypadku certyfikatów) - generalnie wydaje się, że jest to starsza „funkcja”. Ale nie jestem użytkownikiem Firefoksa, więc tak naprawdę nie mogę tego komentować.
slhck,
... fajne demo! :)
sebastian_k
Uprawnienia do instalacji w poszczególnych witrynach same w sobie nie pomagają, ponieważ złośliwa witryna może zmusić cię do kliknięcia przycisku w witrynie, która uzyskała uprawnienia . (Tak, nawet przy agresywnej ochronie przed kliknięciami - to nie jest rozwiązany problem.)
zwolnij
@Zack, czy możesz podać przykład addons.firefox.org?
Natan Yellin,