iframe 的安全问题

信息安全 Web应用程序
2021-08-22 22:05:55

如果我想让用户能够在我的网站上生成的内容中嵌入 iframe(例如 Youtube 视频),是否有任何我应该注意的安全问题。用户生成的内容可由他们编辑,因此我无法控制沙盒之类的 iframe 选项(尽管我可能能够检查服务器的内容并在其中插入适当的选项)。

如果有风险,我会考虑

  1. 检查要插入的 iframe 的域,只允许选择 Youtube 等域。

或者

  1. 只允许选择一组受信任的用户在他们的内容中添加 iframe。

谢谢。

2个回答

iframe的Origin-inheritance 规则将防止 iframe 中的恶意内容访问父级的 DOM。

允许敏感的控制功能,例如将管理页面放置在 iframe 中,会使您的应用程序遭受点击劫持因此,大多数具有安全意识的应用程序都不允许使用x-frame-options.

如果您不使用适当的卫生设施,iframe 可以成为 XSS 的向量: <iframe src='javascript:alert(1)'> </iframe>

在这两种选择中,检查域可能不是出于技术原因,而是出于社会原因:您(可能)不希望某些用户比其他用户“更平等”。

您可以从一个已批准域的简短列表开始,然后等待未在列表中的批准尝试吗?这使您有机会相对轻松地建立“已批准”列表。