当前位置:  开发笔记 > 编程语言 > 正文

如何使用%Zend Form防止XSS攻击

如何解决《如何使用%ZendForm防止XSS攻击》经验,为你挑选了1个好方法。

我们公司为我们的客户建立了一个网站.在产品发布之前,客户聘请了一家网络安全公司来测试页面的安全性.

我们删除了大部分XSS问题.我们用zend开发了这个网站.我们将StripTags,StringTrim和HtmlEntities过滤器添加到订单表单元素中.

他们跑了另一个测试,它仍然失败:(

他们使用以下内容作为http标头数据中的一个输入字段:name=%3Cscript%3Ealert%28123%29%3C%2Fscript%3E基本上转换为name=

我已经在一些字段中添加了alpha和alnum,它通过删除%修复了XSS漏洞(触摸木材),然而,现在老板不喜欢它,因为O'Brien和双桶姓氏...... .

我没有遇到%3C作为<读取XSS的问题.我的html字符集或编码有什么问题吗?

我现在可能需要编写一个自定义过滤器,但对于每个网站和部署来说,这将是一个巨大的痛苦.请帮忙,这真是令人沮丧.

编辑:如果它是关于转义表单的输出,我该怎么做?表单提交到同一页面 - 如果我只在我的视图中,我该如何逃避form ?>

我怎样才能让Zend Form逃脱它的输出?



1> bobince..:

%3Cscript%3Ealert%28123%29%3C%2Fscript%3E是URL编码的形式.只要您包含<在表单值中,它就会以提交方式提交给服务器%3C.PHP将<在您的应用程序中的任何内容之前对其进行读取和解码.

也就是说,没有必须处理的特殊编码; 你看%3C,你实际上不会在你的输入中看到<.如果您没有对页面显示进行编码,那么您甚至没有针对XSS的最基本防御.

我们删除了大部分XSS问题.我们用zend开发了这个网站.我们将StripTags,StringTrim和HtmlEntities过滤器添加到订单表单元素中.

我担心你根本没有解决你的XSS问题.你可能只是混淆了它们.

输入过滤是阻止XSS的一种令人沮丧的常见但非常错误的策略.

这不是输入问题.正如你的老板所说,没有理由你不能输入O'Brien.或者甚至

夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有