如何防止网站编辑器被XSS跨站攻击

outputo-20220117-100527-263-gwuq.png

1、富文本编辑器信息被WAF(网站应用防火墙)拦截

有一些公司的WAF规则非常严谨,对post请求中含有某些标识信息的,会立即认定为攻击,开展阻止。

图上深蓝色线框是在原来基本方案根本上的修改。即在web前端解析富文本编辑器信息的LIS树,变换为json格式,以后递交给服务器端,服务器端开展授权管理进行过滤。

html和json的变换,可以选择应用相近html2json作用的模块来完成:

留意,这类方案绕过了WAF的安全防护,请一定确保授权管理对策的安全防护!请一定确保授权管理对策的安全防护!请一定确保授权管理对策的安全防护!

通常WAF是处于企业总体安全防护的视角去做安全防护的,不可因为业务的某1个作用点,去减低总体的安全防护能力。这时,可以选择应用下列方案去达到业务要求:2、信息来源于文件添加

有的业务场景,须要文本文件批量导入信息,而且信息还需要适用富文本编辑器,具体步骤如下所示:这类情景下,可以在服务器端获取到信息后对富文本编辑器信息开展授权管理进行过滤,以后再开展分布式锁储存。针对业务上不用适用富文本编辑器的字符串,立即依照过去XSS的安全防护方案开展特殊符号转义就可以了。

3、信息从客户特定的外部网页页面抓取

除非是有非常明显的要求,不然不建议做如此的作用,从安全防护视角讲肯定是坑。这类情景里,因为要抓取客户特定的第三方平台网页页面,因此最先须要健全的SSRF漏洞安全防护方案(这也是另1个问题,这儿不进行)。以后依照前边讲的方案对信息开展进行过滤。

4、生成html文档存储到网站服务器上

不建议应用如此的方案完成作用,网站论坛有如此做的,通常互联网公司里这类完成方法实际上就违反了开发规范。小编以前有一次做渗透时,遇上过某一sap下载的或是jsp文件,插进java后门代码立即就取得了网站服务器管控权。

5、服务器端生成html文件上传至云储存

这儿我们要假定云储存的html页面会对业务产生安全防护危害,例如拒绝服务攻击、业务二级域名cname解析或是cdn到视频云存储,可以造成XSS危害业务。这类情景与文章开头的方案相互间的差别仅仅信息分布式锁储存的位置发生了转变,只需在服务器端文件上传以前,对信息开展进行过滤就可以。

6、web前端生成html文件上传至云储存

不必应用这类方案!不必应用这类方案!不必应用这类方案!这类方案因为信息不经由自个的业务网站服务器,没有办法对信息开展进行过滤解决。在如此的方案里,web前端的无论如何做,对安全防护都是没用的。以上是小编见过的某些非常常见的情景,有一些业务场景可能是上边每一个情景不一样部分的组成。

从这当中抽象出实质,无非“键入->授权管理进行过滤->分布式锁->授权管理进行过滤->导出”。通常大量的富文本编辑器应用情景会选择在键入时后端开发做进行过滤。如果有特别要求,例如想详细保存客户键入的数据信息,那样还可以选择在导出时开展进行过滤。写作匆忙,选择存在的不足,欢迎诸位师傅得出具体指导、提议或填补。


分享: