Установить политику безопасности контента для iframe?

Есть ли способ для потребительского веб-сайта (например, nytimes.com) убедиться, что загружаемый iframe НЕ сможет взаимодействовать с ahy серверами и будет иметь доступ только к postMessage? Это можно сделать с сервера, на котором размещен документ iframe. Но я не хочу доверять этому серверу.

Вот для чего мне это нужно: я хочу хранить неэкстрагируемые асимметричные ключи с использованием subtle-crypto, загрузить статический HTML-код со встроенным JS, который был проверен третьими лицами, я уверен, что это то, что было загружено с использованием SRI, и, наконец, передать некоторые данные отправляют postMessage к нему и ЗАКРЫВАЮТ ДВЕРЬ в этой sanbox, переопределяя postMessag, чтобы ГАРАНТИРОВАТЬ пользователю user-agent, что любые данные, расшифрованные и отображенные с этого момента, не могут быть переданы кому-либо еще (при условии, что пользовательский агент следует веб-стандарты).

Как ПОЛЬЗОВАТЕЛЬ узнает, что может доверять фрейму? Потому что iframe будет отображать какую-то знакомую строку, которую они выбрали, расшифровывается с помощью того же закрытого ключа, после того, как дверь закрыта. Поскольку его нельзя извлечь, ни один сервер не может его расшифровать, поэтому это должна быть проверенная безопасная среда HTML + JS, которой доверяет пользователь.

Но как может пользователь и сайт для встраивания проверить и быть УВЕРЕНЫ в том, что такое политика безопасности содержимого iframe?

1 ответ

Хорошо, получается, что в HTML есть метатег "http-эквивалент", который может устанавливать Политику безопасности содержимого этого HTML-документа. И вмещающий сайт может использовать SRI, чтобы убедиться, что он загружает документ, который был ранее проверен.

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

  • Загруженный документ iframe совпадает с загруженным ранее документом (целостность подресурса видна пользователю)

  • Загруженный документ iframe имеет правильную Политику безопасности контента, если только он не просматривает источник.

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

Другие вопросы по тегам