Как вызвать падение любой версии Internet Explorer с помощью простого HTML
Быстрые ссылки
- Как вызвать падение Internet Explorer с помощью HTML
- Где это работает
- Авторство
Мы уже показывали, почему многие разработчики не любят Internet Explorer. Так как близится Хэллоуин, ниже — наглядный (и пугающий) пример: как вызвать падение любой версии IE, используя лишь HTML и CSS. Важно: цель — продемонстрировать баг, а не намеренно вредить пользователям. Если вы тестируете — делайте это в изолированной среде.
Как вызвать падение Internet Explorer с помощью HTML
Откройте простой текстовый редактор (Блокнот или аналог), вставьте код ниже и сохраните файл как SomeFilename.html.
IE Crasher
В результате у вас должен получиться примерно такой фрагмент на странице:

Откройте этот файл в Internet Explorer — и браузер может зависнуть или полностью перестать отвечать. Забавно, что при подготовке исходной заметки этот же фрагмент неоднократно «убивал» редактор публикаций (Windows Live Writer) и приходилось править запись через веб‑интерфейс.
Где это работает
По наблюдениям автора, при тестировании этот приём срабатывает во многих версиях IE — начиная с IE6 и до ранних превью‑версий IE9.

Авторство
Мы не первооткрыватели этой уязвимости — есть сайт, который демонстрирует падение IE; оттуда и был получен код. НЕ ПЕРЕХОДИТЕ ПО ССЫЛКЕ, ЕСЛИ НЕ ГОТОВЫ К ПАДЕНИЮ БРАУЗЕРА: crashie8.com. Делитесь этой информацией ответственно.
Важно: не используйте эксплойт на общедоступных ресурсах и не отправляйте его незнющим пользователям. Это неэтично и может навредить.
Когда это не работает
- На современных Chromium‑ или WebKit‑браузерах этот фрагмент не вызывает описанного поведения.
- В окружении, где Internet Explorer запущен в сильно изолированной песочнице, эффект может отличаться.
- Обновления безопасности и исправления от Microsoft могут полностью устранить проблему.
Альтернативные подходы и безопасное тестирование
- Тестируйте в виртуальной машине с чистой системой и моментальными снимками (snapshots).
- Используйте инструменты автоматизированного fuzz‑тестирования разметки и CSS, чтобы безопасно находить уязвимости.
- Докладывайте о найденных проблемах через официальные каналы по ответственному раскрытию (responsible disclosure).
Методология воспроизведения
- Подготовьте изолированную тестовую среду (виртуальная машина).
- Сохраните HTML в файл и откройте именно в Internet Explorer.
- Наблюдайте поведение: зависание, аварийное завершение процесса, утечки ресурсов.
- Зафиксируйте стек вызовов/логи (если доступно) и снимок состояния до/после.
Список проверки для разработчика / администратора
- Тесты: повторяемость падения в разных версиях IE.
- Логи: системные и браузерные логи до и после инцидента.
- Митигирование: обновление браузера, применение фиксов от вендора, блокировка вредоносных страниц на уровне прокси/фильтра.
- Документирование: снапшоты ВМ и шаги воспроизведения.
Критерии приёмки
- Падение воспроизводится в чистой ВМ под IE (прошлый баг).
- Баг не воспроизводится после применения исправления или обновления IE.
- Средства мониторинга не фиксируют побочных сбоев в других службах.
Краткий глоссарий
- IE: Internet Explorer, браузер от Microsoft.
- Эксплойт: код, использующий уязвимость для вызова непредвиденного поведения.
- Песочница: изолированная среда для безопасного запуска потенциально опасного кода.
Резюме
Этот пример иллюстрирует, как простая ошибка в разметке и CSS может привести к серьёзным проблемам в браузере. Применяйте изоляцию при тестировании, сообщайте о проблемах поставщику программного обеспечения и не распространяйте эксплойты в открытом доступе.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента