我正在尝试支持RTF编辑器,该编辑器支持h1
,h2
,h3
,p
,strong
,{{1 }},em
,u
,sub
,sup
,span{!font-family};
和span{!color};
。
我的要求是对所有不在上面列表中的其他标签进行编码,以便避免任何类型的XSS攻击。是否有在客户端执行此操作的最佳方法。
答案 0 :(得分:1)
您可以使用DOMPurify。这是一个用于清理HTML的Javascript库,可以对其进行配置以满足您的需求。
但是,当用户的输入要发送到服务器或存储在数据库中时,我不建议使用客户端转义。您还应该始终在服务器端清理输入。