在安全方面,使用<img>.html扩展名显示源代码是否安全?



由于在这方面一无所知,我打电话给SO社区来教育我。

在社区留言板上允许带有.html扩展名的<img>来源是否安全?我见过的一个例子是有人采购了~20个这样的图像,当它们在页面上呈现时会输出查看者位置的字母。

如果需要,

您可以将PHP作为图像的一部分执行(这是通过使用PHP动态生成图像来显示有关远程盒子的信息的方式(;类似地,您可以强制服务器提供具有随机扩展名(包括.html(的正确标头的图像。

因此,限制img标签中的扩展实际上不会实现任何目标;它总是在图像的上下文中执行,浏览器期望图像,如果返回任何其他内容,它也不会呈现。这些事情唯一重要的是可能的CSRF漏洞,因为无论图像有效性如何,浏览器都会始终请求目标URL,因此例如,您可以强制某人在查看您的头像时注销(以最简单的形式,您只需 http://thecurrentsite.com/?logout 作为头像(。因此,总而言之,您无需担心代码注入,但是即使您使用请求令牌,也最好限制可以插入的URL的可变性(禁止本地URL,页面片段标识符等(。

最新更新