首页新闻找找看学习计划

MySql防注入

0
悬赏园豆:50 [已解决问题] 解决于 2013-04-03 17:13

我有一个文本框,怎么样才能让它只能输入查询语句呢(判断一些关键字不让他输入 用c#判断)

//
ヅ愛隨風去≯的主页 ヅ愛隨風去≯ | 初学一级 | 园豆:157
提问于:2013-04-03 14:10
< >
分享
最佳答案
0

这种防不了的,最了的方法是你有用ORM框架或SQL变量,不要拼SQL,就不会有注入存在

收获园豆:30
空明流光 | 初学一级 |园豆:48 | 2013-04-03 14:14

不好意思,只看大标题了,没看见内容

空明流光 | 园豆:48 (初学一级) | 2013-04-03 14:16

我只是不想让用户输入一些关键字,比如Insert、delete之类的    都有哪些啊??

ヅ愛隨風去≯ | 园豆:157 (初学一级) | 2013-04-03 14:17

这个其实也好办,grant权限时,给他授权只有select权限,然后通过这个帐户去连数据库,也就只能查询了。

空明流光 | 园豆:48 (初学一级) | 2013-04-03 14:18
其他回答(6)
0

比较简单的方式就是你把查询参数化

飞来飞去 | 园豆:2057 (老鸟四级) | 2013-04-03 14:17
0

1.要以变量方式传参到数据库。

2.要对用户的输入进笔过滤。过滤掉不安全的语句。

收获园豆:10
jerry-Tom | 园豆:4077 (老鸟四级) | 2013-04-03 14:21
0
收获园豆:5
滴答的雨 | 园豆:3690 (老鸟四级) | 2013-04-03 14:21
0

可以用正则表达式规定文本框里输入的内容,交由后台判断,如果匹配了正则表达式那么就返回一个错误信息

收获园豆:5
飞鸟_Asuka | 园豆:251 (菜鸟二级) | 2013-04-03 15:44
0

让用户在文本框输入sql 语句?这种方法碉堡了!太危险了!非要这样,那你就要过滤关键字了,比如sql常见的注入: 1=1 过滤这些注入关键字!

Beyond-bit | 园豆:2804 (老鸟四级) | 2013-04-03 15:49
0

黑名单过滤的方法总是有风险的。建议,用参数化查询

在大地画满窗子 | 园豆:102 (初学一级) | 2013-04-08 16:40
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册