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