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.