MaxFast
31.03.2014, 08:41
Небольшая заметка о том, как я случайно написал эксплойт для краша всеми известного браузера Firefox, в жанре научной фантастики.
http://i.imgur.com/CkPbI3B.png
В общем сел я, значит, писать таймер на Javascript. Писал недолго, буквально через 2 минуты и 32 секунды код был готов. Всё работало замечательно. Чёрт меня дёрнул (скорей всего) добавить этот JS код в функцию echo (Да-да, есть такая функция в PHP) и заправить, так сказать, это всё циклом while с параметром true. Сразу говорю что я не преследовал таких последствий. Сохранил я этот документ с расширением .php, запустил Денвер и перешёл к скрипту (использую браузер Firefox 29 версии).
Что я увидел сразу? Белый экран. Я уж подумал что я допустил ошибку и полез в Notepad++ дабы смотреть код. И тут резко выскакивает сообщение о падении Лисы.
Перезагружаю браузер, иду опять к скрипту и вижу что все вкладки зависли. И опять же через несколько мгновений я увидел окно, которое предлагало отправить отчёт о падении Firefox.
Собственно сам быдлокод который я использовал:
PHP:
var a = setInterval(function() { alert(''); }, 1000); ";
}
?>
То есть через каждую секунду вызывается alert, да ещё и в цикле.
Скрипт тестировался на:
Chrome v33.0 - не упал
Opera v20.0 - не упал
IE v9 - не упал
Внимание! Я не несу ответственности за всё, бла-бла-бла, используйте на свой страх и риск.
http://i.imgur.com/CkPbI3B.png
В общем сел я, значит, писать таймер на Javascript. Писал недолго, буквально через 2 минуты и 32 секунды код был готов. Всё работало замечательно. Чёрт меня дёрнул (скорей всего) добавить этот JS код в функцию echo (Да-да, есть такая функция в PHP) и заправить, так сказать, это всё циклом while с параметром true. Сразу говорю что я не преследовал таких последствий. Сохранил я этот документ с расширением .php, запустил Денвер и перешёл к скрипту (использую браузер Firefox 29 версии).
Что я увидел сразу? Белый экран. Я уж подумал что я допустил ошибку и полез в Notepad++ дабы смотреть код. И тут резко выскакивает сообщение о падении Лисы.
Перезагружаю браузер, иду опять к скрипту и вижу что все вкладки зависли. И опять же через несколько мгновений я увидел окно, которое предлагало отправить отчёт о падении Firefox.
Собственно сам быдлокод который я использовал:
PHP:
var a = setInterval(function() { alert(''); }, 1000); ";
}
?>
То есть через каждую секунду вызывается alert, да ещё и в цикле.
Скрипт тестировался на:
Chrome v33.0 - не упал
Opera v20.0 - не упал
IE v9 - не упал
Внимание! Я не несу ответственности за всё, бла-бла-бла, используйте на свой страх и риск.