Динамическая безопасность тега скрипта - PullRequest
3 голосов
/ 13 июля 2011

Я анализирую, является ли хорошей идеей использование динамических тегов сценария для выполнения запросов к сторонним серверам.В Stackoverflow и на нескольких других сайтах было несколько тем на эту тему, и я все еще не уверен, что это хорошая идея.

Приложение находится на сервере B. Сторонний API находится на сервере A.

Если приложение сервера B извлекает библиотеку API javascript сервера A, которая, в свою очередь, использует динамические теги для выполнения вызовов к серверу A, я предполагаю, что библиотека API и код возврата из самого API все еще находятся в изолированной программной среде домена сервера B?

Есть еще несколько вещей, о которых я думаю:

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

В дополнение к этому, я бы внес изменения в библиотеку API сервера A, чтобы делать вызовы через наш прокси, чтодомены белого списка вместе с длинной регистрацией каждого запроса с помощью пары других вещей, например, убедитесь, что только json и действительный jsonобратился к клиенту ...

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

Есть ли литература, которая поддерживает вес, поддерживающий обе стороны?

1 Ответ

0 голосов
/ 13 июля 2011

Домен, на котором размещен JavaScript (или json), не влияет на Политика одинакового происхождения .Он полностью зависит от домена, который загружает скрипт через тег <script>.При этом, возможно, можно загрузить JSON из другого домена без их согласия, используя « json callback hackery ».

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

...