2011-02-08 2 views
4

Если вы скажете аркаду игр HTML5, это позволяет пользователям загружать сценарий, который запускает игру с HTML5 и Javascript, если у вас нет фильтров на их входе (кроме только разрешая JS и HTML), каковы потенциальные угрозы безопасности и подводные камни?Каковы риски, позволяющие пользователям загружать и запускать Javascript

Одна маловероятная возможность заключается в том, что если игры популярны, у них может быть спящий ddos-скрипт внутри них, который может запустить атаку ddos, если игры достаточно популярны.

Кража печенья другая, но если у кого-то есть исчерпывающий список или любые другие идеи, было бы интересно их услышать.

+0

Какие пользователи будут запускать скрипты? только загрузчик или кто-нибудь? если кто-нибудь, они могли бы, например, прослушивать ввод ключей и красть пароли. – BiAiB

+0

Пример, который я предлагаю, заключается в том, что игры загружаются в онлайн-аркаду, которую любой человек может продолжить. Игра может быть частью динамического сайта с потенциальной конфиденциальной информацией. –

ответ

3

Разрешение на запуск javascript для запуска запускает довольно много вариантов для злоумышленника.

См. Cross Site Scripting (wikipeda) и по телефону OWASP.

В целом - если вы разрешаете это, злоумышленник может отправить код, перенаправить пользователей, использовать их браузеры, установить вирусы и многое другое.

2

Только мои два цента ..

Один риск, когда кто-то загружает скрипт, который перенаправляет пользователя на вредоносный веб-сайт и что сайт делает неприятные вещи - пользователь никогда не намеревался достичь этого веб-сайта, конечно, не с помощью аркадных игр.

2

Дать бот, который выигрывает.
Тогда игра будет быстро перейти к написанию лучшего бота бить другие боты;)

Если загрузить эти скрипты в качестве iframe с другим доменом, субдоменом, портом или протоколом, та же политика происхождения предотвратит эти сценарии для чтения содержимого главной страницы.

И вы можете установить строку связь между этими iframe и главной страницей через window.postMessage для современного браузера или с помощью window.name хака для старых браузеров.

И чтобы предотвратить кражу печенья, вы можете иметь секретный ключ на своей главной странице, который вы отправляете обратно на свой сервер для каждого запроса.

Смежные вопросы