Какова модель угрозы для той же политики происхождения?
http://en.wikipedia.org/wiki/Same_origin_policy
Такая же политика происхождения предотвращает script с одного сайта, разговаривающего с другим сайтом. Wiki говорит, что это "важная концепция безопасности", но я не понимаю, какую угрозу она предотвращает.
Я понимаю, что файлы cookie с одного сайта не должны делиться с другими, но это может быть (и) принудительно исполнено отдельно.
Стандарт CORS http://en.wikipedia.org/wiki/Cross-Origin_Resource_Sharing предоставляет законную систему для обхода одной и той же политики происхождения. Предположительно, это не позволяет любой угрозе, которую одна и та же политика происхождения предназначена для блокировки.
Глядя на CORS, я еще менее понят, кто защищен от чего. CORS применяется браузером, поэтому он не защищает ни один сайт из браузера. И ограничения определяются сайтом, с которым хочет поговорить script, поэтому он не защищает пользователя от любого сайта.
Итак, что же такое политика происхождения для?
Ответы
Ответ 1
В статье @EricLaw упоминается: "" Одинаковая политика происхождения, часть 1: "Без подглядывания" ), это хорошо.
Вот простой пример того, зачем нам нужна "та же политика происхождения":
Возможно отображение других веб-страниц на вашей собственной веб-странице с помощью iframe ( "встроенный фрейм" помещает другой HTML-документ в фрейм). Скажем, вы показываете www.yourbank.com. Пользователь вводит свою банковскую информацию. Если вы можете прочитать внутренний HTML этой страницы (что требует использования script), вы можете легко прочитать информацию о банковском счете и стрелу. Нарушение безопасности.
Поэтому нам нужна одна и та же политика происхождения, чтобы одна веб-страница не могла использовать script для чтения информации на другой веб-странице.
Ответ 2
В качестве примера, это предотвращает Фармвилль проверку баланса на вашем банковском счете. Или, что еще хуже, возиться с формой, которую вы собираетесь отправить (после ввода PIN/TAN), чтобы они получили все деньги.
CORS в основном является стандартом для веб-сайтов, которые уверены, что они не нуждаются в такой защите. В основном это говорит "ОК для script с любого веб-сайта, чтобы поговорить со мной, никакая безопасность не может быть нарушена". Таким образом, это действительно позволяет вещи, которые будут запрещены SOP, в тех местах, где защита не нужна, и междоменные веб-сайты полезны. Подумайте о meshups.
Ответ 3
Цель той же политики происхождения - избежать угрозы злонамеренного сайта M
считывания информации с доверенного сайта A
с использованием полномочий (то есть файлов cookie авторизации) пользователя A
. Это политика браузера, а не политика сервера или стандарт HTTP, и предназначена для снижения риска другой политики браузера, отправляющей файлы cookie с сайта A
при обращении к сайту A
.
Обратите внимание: нет ничего, чтобы остановить M
от доступа к A
за пределами браузера. Он может отправлять столько запросов, сколько захочет. Но это не будет сделано с полномочием незнающего пользователя A
, что может произойти в браузере.
Также обратите внимание, что политика предотвращает чтение страницы M
с A
. Он не защищает сервер A
от последствий запроса. В частности, браузер позволит междоменные POSTS
-куки и все-от M
до A
. Эта угроза называется Подпрограмма запроса на межсайтовый диалог; это не смягчается Политикой Одинакового Начала, поэтому для серверов крайне важно защитить себя от нее.