xss漏洞通用解决方案


可能重复的问题
如何有效防止XSS攻击/AJAX跨域攻击

最近项目开发中,出现了xss漏洞的问题,最后解决是直接编码$_REQUEST变量。
请问大家在做系统时有没有更好的通用性解决方案

架构设计 php

虢季子白猫 12 years, 2 months ago

XSS攻击可能出现的地方大多是在以下地方:
搜索关键词
用户昵称
富文本编辑器
url跳转
cgi自定义回调函数

对于XSS攻击,一般采用以下方式:

接收参数时:过滤危险代码、限定可处理参数范围
前台提交前:过滤危险代码、对HTML进行转义
后台接受后:过滤危险代码、对HTML进行转义
后台输出前:过滤危险代码、过滤自定义回调函数名
前台输出前:过滤危险代码、避免使用document.write 
反跳页面:只对可信域和白名单进行跳转

在接收URL参数时不应该带有任何可执行代码,因而强制过滤关键字,对其中符号“+”、“-”、“<”、“>”、“'”、“"”、“/”、“&”、“$”进行转义:encodeURIComponent()

这样操作后一般都能避免

小三头黄金龙 answered 12 years, 2 months ago

Your Answer