Могу ли я запретить пользователю вставлять Javascript в IFrame в режиме разработки?

StackOverflow https://stackoverflow.com/questions/50470

  •  09-06-2019
  •  | 
  •  

Вопрос

Я создаю веб-приложение, которое содержит IFrame в режиме разработки, чтобы мои пользователи могли "редактировать" свой контент и вставлять его для отображения на своей странице.Как редактор WYSIWYG в большинстве движков блогов или форумов.

Я пытаюсь придумать все потенциальные дыры в безопасности, которые мне нужно устранить, одной из которых является вставка пользователем Javascript:

<script type="text/javascript">

// Do some nasty stuff

</script>

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

Неужели я волнуюсь по пустякам?

Любой совет был бы замечательным, не смог найти много поисковых запросов в Google.

Энтони

Это было полезно?

Решение

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

Неужели я волнуюсь по пустякам?

В Firefox есть плагин под названием Greasemonkey, который позволяет пользователям произвольно запускать JavaScript для любой страницы, загружаемой в их браузер, и вы ничего не можете с этим поделать.Firebug позволяет вам изменять веб-страницы, а также запускать произвольный JavaScript.

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

Другие советы

Как сказал Джейсон, я бы больше сосредоточился на очистке данных на стороне сервера.На самом деле у вас нет никакого реального контроля на стороне клиента, если только вы не используете Silverlight / Flex, и даже тогда вам нужно будет проверить сервер.

Тем не менее, вот несколько советов от "Отдельный список" возможно, вам будет полезно ознакомиться с очисткой данных на стороне сервера.

http://www.alistapart.com/articles/secureyourcode

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top