我有一个网站,我的客户可以使用该网站让他们的客户在线注册(这是用于日托注册)。所以我提供了这个在线注册表格,并允许我的客户自定义注册完成后显示的“谢谢”消息。
允许我的客户使用 HTML 来格式化他们的感谢信息是否安全?我知道这将允许他们也生成 javascript 但我应该关心吗?
我有一个网站,我的客户可以使用该网站让他们的客户在线注册(这是用于日托注册)。所以我提供了这个在线注册表格,并允许我的客户自定义注册完成后显示的“谢谢”消息。
允许我的客户使用 HTML 来格式化他们的感谢信息是否安全?我知道这将允许他们也生成 javascript 但我应该关心吗?
是的,你当然应该关心。
<img src="http://evil.com/evilScript.js">
在他们的感谢信息中,我将把可能发生的事情留给evilScript.js
您的想象力。
我的建议是,使用 Markdown 作为一种格式,并在需要时将其解析为 HTML(在视图中)。
是的,它是安全的——只要你对它进行一定程度的消毒。一个很好的例子是使用strip_tags
并且只允许使用<h1>
, <h2>
,等标签<b>
,<u>
但避免使用<script>
,<object>
和其他危险标签。
我知道我引用的是 PHP 方法,但是很多语言都有这种功能来清理用户输入。从表面上看,而不是使它成为特定于 PHP 的答案。