看到很多被注入的例子 都是因为未对POST或者GET做判断处理,难到PHP不对POST或者GET请求做过滤处理就会被注入吗?
1
wdkwdkwdk Mar 26, 2014 via Android
不一定啊,要看你有没有用来对数据库做操作
|
2
justfindu Mar 26, 2014
不管什么语言都会这样吧~ 不做过滤~ 然后操作数据库~ 然后就没有然后了~
|
3
fsw90628 Mar 26, 2014
用 Prepared Statements 应该可以解决类似问题了。
http://php.net/manual/en/pdo.prepared-statements.php p.s. 好久不看,PHP 的官方文档界面更新了。 |
4
bearcat001 Mar 26, 2014 有句话叫:永远不要相信用户
所以对于所有可以输入或者修改的数据,一定进行严格过滤和判断。越早处理,可控性越高。 |
5
scusjs Mar 26, 2014
最好都过滤一下,养成好的习惯
|
6
slixurd Mar 26, 2014
参数绑定也是大部分数据库API都提供的.
在多次查询同一语句下效率高而且不会被SQL注入 但是如果查询次数少的话,参数绑定写起来麻烦而且没什么性能提升 |
7
Mutoo Mar 26, 2014
不只是 POST 和 GET,request header 里面的任何一部分都有可能。只要你引用了来自用户的数据,都要小心,像 Cookies 就经常被忽视。
|
8
wvidc Mar 26, 2014
这是一个很值得深究的问题
|
9
sneezry Mar 26, 2014
有用User-Agent注入的例子呢。
|
10
davansy Mar 26, 2014 不要相信任何用户输入的数据!
|
11
whuhacker Mar 26, 2014
使用一个框架,让框架帮你做这些事情
|
12
tywtyw2002 Mar 26, 2014 via iPhone
如ajax调用。js做过一遍过滤,服务器还要去做一遍
|
13
sb Mar 26, 2014
大二时老师说了一个词叫 数据清洗。
进来的所有数据都要清洗一下,不然会被恶意构造语句获取你的用户数据。 |
14
wwek Mar 26, 2014
强烈建议 php操作数据库用 PDO
|
15
wwek Mar 26, 2014
|
16
liuser Mar 27, 2014
PDO 参数绑定就不错。
|
17
hiddenman Mar 27, 2014
不管是POST,还是GET,都可以构造。
|