Могу ли я запретить пользователю вставлять Javascript в IFrame в режиме разработки?
-
09-06-2019 - |
Вопрос
Я создаю веб-приложение, которое содержит IFrame в режиме разработки, чтобы мои пользователи могли "редактировать" свой контент и вставлять его для отображения на своей странице.Как редактор WYSIWYG в большинстве движков блогов или форумов.
Я пытаюсь придумать все потенциальные дыры в безопасности, которые мне нужно устранить, одной из которых является вставка пользователем Javascript:
<script type="text/javascript">
// Do some nasty stuff
</script>
Теперь я знаю, что могу удалить это на стороне сервера, прежде чем сохранять и / или отправлять обратно, но меня беспокоит возможность того, что кто-то сможет вставить какой-нибудь скрипт и запустить его тут же, даже не отправляя его обратно на сервер для обработки.
Неужели я волнуюсь по пустякам?
Любой совет был бы замечательным, не смог найти много поисковых запросов в Google.
Энтони
Решение
... Меня беспокоит возможность того, что кто-то сможет вставить какой-нибудь скрипт и запустить его тут же, даже не отправляя его обратно на сервер для обработки.
Неужели я волнуюсь по пустякам?
В Firefox есть плагин под названием Greasemonkey, который позволяет пользователям произвольно запускать JavaScript для любой страницы, загружаемой в их браузер, и вы ничего не можете с этим поделать.Firebug позволяет вам изменять веб-страницы, а также запускать произвольный JavaScript.
AFAIK, вам действительно нужно беспокоиться только после того, как он попадет на ваш сервер, а затем потенциально попадет к другим пользователям.
Другие советы
Как сказал Джейсон, я бы больше сосредоточился на очистке данных на стороне сервера.На самом деле у вас нет никакого реального контроля на стороне клиента, если только вы не используете Silverlight / Flex, и даже тогда вам нужно будет проверить сервер.
Тем не менее, вот несколько советов от "Отдельный список" возможно, вам будет полезно ознакомиться с очисткой данных на стороне сервера.