PHP-xss漏洞通用解决方案

发布于 2016-12-04 15:38:41 字数 208 浏览 1401 评论 3

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

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

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

泛泛之交 2017-07-20 06:57:11

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

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

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

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

这样操作后一般都能避免

浮生未歇 2017-01-20 19:16:24

xss攻击,可以运用方法都测试是否是攻击
function xss_check() {

$tmp = strtoupper(urldecode(urldecode($_SERVER['REQUEST_URI'])));
if(strpos($tmp, '<') !== false || strpos($tmp, '"') !== false || strpos($tmp,'CONTENT-TRANSFER-ENCODING')!==false) {
exit('request_tainting');
}
return true;
}

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文