Crashsafari.com: cztery wiersze skryptu mogą zawiesić mobilne przeglądarki
25.01.2016 18:54, aktual.: 25.01.2016 19:05
Zalogowani mogą więcej
Możesz zapisać ten artykuł na później. Znajdziesz go potem na swoim koncie użytkownika
Wydawałoby się, że współczesne przeglądarki są całkiem nieźle uodpornione na zagrożenia spowodowane zatrzymaniem pracy programu za pomocą losowych danych generowanych przez witrynę. Nic bardziej mylnego.
Dowód stanowi strona crashsafari.com, której nazwa jednoznacznie sugeruje zastosowanie. Zagrożenie może jednak istnieć, gdy ktoś zamaskuje link za pomocą ogólnodostępnych skracaczy i prześle znajomemu. Nazwa jest zresztą myląca: witryna jest w stanie zatrzymać działanie większości, przede wszystkim mobilnych, przeglądarek, nie tylko Safari.
Wszystko to za sprawą kodu strony zawierającego skrypt złożony z zaledwie czterech wierszy. Wykorzystując funkcję JavaScriptu history.pushState, sprawia on, że adres strony jest generowany w nieskończoność, mimo że zawartość strony się nie zmienia. W praktyce doprowadza to do zawieszenia się przeglądarki na etapie wysyłania żądania.
Problem dotyczy oczywiście przede wszystkim przeglądarek mobilnych, jednak nie tylko. Wstrzymana może zostać praca programu także na komputerach z mniejszą wielkością RAM-u i słabym CPU. Oczywiście wejście na stronę nie grozi wyciekiem danych czy innymi niebezpieczeństwami, a pracę przeglądarki można zakończyć przez wymuszenie zakończenia procesu.