使用API对任何Google服务进行身份验证调用时,是否需要担心代码注入?
在使用之前,我是否需要清理/过滤响应?
我目前正在使用zend GData。
不仅仅是肯定还是不赞赏精心回答:)
谢谢。
答案 0 :(得分:3)
是。是的,您确实需要清理数据。排序的。
这实际上是安全工作的基本原则之一: Filter In,Escape Out 。基本上是:
过滤
始终过滤进入应用程序的数据。这是什么意思?
如果数据未在源代码中进行硬编码,则应对其进行过滤。即使它来自您认为“信任”的内容,例如您的数据库,也来自Google,请对其进行过滤。总是
过滤基本上意味着要检查它是否符合您的期望。如果您期望使用字母数字用户名,并且在其中找到符号,那就是一个问题。请注意,过滤并不意味着转义。它可以是“破坏性的”,意思是替换掉坏的部分,或者它可以拒绝,意味着一起拒绝输入......
逃脱
始终转义任何离开应用程序的数据。它是否来自值得信赖的来源并不重要。它需要逃脱出路。并且它需要根据它将被使用的上下文进行适当的转义。因此,如果你输出到数据库,你将想要以一种方式转义,如果你输出到HTML块,你将会逃避另一种方式...
这里的问题是“来自远程服务器的这件事是否需要消毒”。答案是:是的。总是。毫无疑问。