AFAIK,TinyMCE应该是自给自足的XSS,因为它的编辑器可以防止任何可用于XSS的东西。
但是,所有这些都是在客户端完成的,并且由于TinyMCE,安全性完全取决于POST头是否干净。
什么阻止攻击者在POST HTTP标头中使用标记发出自定义HTTP请求?
使用TinyMCE的每个人是否也在服务器端拥有广泛的反XSS库以确保不会发生这种情况?有没有办法确保输入确实来自TinyMCE,而不是来自自定义POST标题?
毋庸置疑,只是使用htmlspecialchars()之类的东西逃避一切都不是一个选择,因为TinyMCE的全部意义在于让用户输入HTML格式的内容。
答案 0 :(得分:1)
你无法相信来自客户端的内容。攻击者甚至可以修改TinyMCE以禁用您添加的任何内容。
在服务器端,您可以使用OWASP AntiSamy或HTMLPurifier之类的东西,它允许您指定允许的标签(白名单标签和属性)。