【发布时间】:2015-04-16 01:43:04
【问题描述】:
我使用 Symfony2 女巫 Sencha Ext JS 作为前端。
我发现我的表单容易受到 XSS 攻击。 我知道,Symfony2 具有保护我们的数据免受这种攻击的机制,但是这种机制主要使用我不使用的模板。
我正在从前端字段收集大量数据,这些数据会传递到后端。我希望尽可能少地解决这个问题。
我的目标是在数据进入数据库之前保护我的应用程序。 我有两个选择。
首先是在生命周期事件监听器上添加strip_tag函数,即监听数据preFlush。
其次是在选定的易受攻击字段的实体级别上添加strip_tags。
在我看来,这两种选择都不够,因为代码量很大。
在 Sencha 前端添加一些代码可能是个好主意吗? 我不知道该怎么办。
感谢您的建议!
【问题讨论】:
-
如果你认为 Symfony2 存在安全漏洞,你应该私下直接告诉他们,不要在这里报告。然而,漏洞更有可能是由于您使用 Symfony2 的方式而出现的,在这种情况下,读者可能需要查看您的代码。
-
我的意思是该机制仅在 Symfony2 中的完整模板中可用。我的问题是关于 Symfony 中关于没有模板的 XSS 攻击的安全策略。
-
你的意思是也没有php吗?
-
如果你是这个意思,我可以免费使用 PHP。我只需要就应用程序的女巫部分提出建议,我应该添加保护。
-
你有点搞砸了,简化 Symfony 的表单可以应用导致一系列错误报告的验证。由您决定使用模板或引发异常或返回错误消息。我能给你的最好建议(但我不是安全专家)是验证任何用户输入。可以使用内置的 php 过滤器完成,例如参见 php.net/manual/it/function.filter-input.php
标签: php security symfony extjs xss