Политика общего происхождения и другие меры безопасности прекрасно защи_ щают данные клиента от посягательств со стороны злонамеренного программно_ го кода, но не могут предотвратить атак типа отказа в обслуживании. Если вы посетите злонамеренный веб_сайт и ваш броузер получит JavaScript_сценарий, в котором в бесконечном цикле вызывается метод alert(), выводящий диалого_ вое окно, вам придется использовать, например, команду kill в операционной системе Unix или диспетчер задач в Windows, чтобы завершить работу броузера.
Злонамеренный сайт может также попытаться загрузить центральный процес_ сор компьютера бесконечным циклом с бессмысленными вычислениями. Неко_ торые типы броузеров (такие как Firefox) автоматически определяют наличие циклов с продолжительным временем работы и предоставляют пользователю возможность их прерывать. Это защищает от случайного зацикливания сцена_ рия, но злонамеренный программный код для обхода этой защиты может ис_ пользовать прием на основе метода window.setInterval(). Подобная атака нагру_ жает систему клиента, вызывая огромный расход памяти.
Универсального способа предотвращения таких атак в веб_броузерах не сущест_ вует. На самом деле это не является общей проблемой Всемирной паутины, т. к. никаких данных на злонамеренный сайт в этом случае не передается!