上一篇:线程的处理(1) >>
再谈ASP防止SQL Injection漏洞的问题
/**
作者:慈勤强
Email: cqq1978@Gmail.com
*/
关于Asp的SQL Injection预防问题,似乎已经没什么可说的了。在我做的Asp的项目里面,
都是用自己写的函数来处理客户端提交进来的数据,我的Blog里面也贴过这个函数。
具体可以参考http://blog.csdn.net/cqq/archive/2004/09/23/113786.aspx
不过,从朋友的留言和网上其他的一些讲如何防范SQL Injection的函数来看,很多人都走进了一个误区。
SQL Injection的危害是很大的,比如对于SQL Server,可以创建、删除数据库,执行系统命令等等, 如
drop table tbl_name, execute master.dbo.xp_cmdshell "command"
所以很多人写的函数就是拼命的去过滤这些可能引起危害的关键词,比如drop ,分号,and,exe,mid等等,罗列了
一大堆。
其实,尽可以不必那么繁琐,非要把简单的事情复杂化。
对于过滤,ASP中只要针对字符型和数字型分别处理就可以了,
字符型的,把单引号转换成两个单引号 strTmp = Replace(Trim(str),"‘’","‘’‘’")
数字型的,就判断是否能够转换成数字型的 ,用 isNumeric函数
现在网上说的能够绕过单引号的攻击,其实是针对数字类型的
如果对于过滤了单引号的字符型,还有办法绕过,那就没得玩了........
下一篇:用asp编写文档搜索页面 >>
相关文章:
- · 经典的asp整理
- · Access中分组统计的实例
- · 一段分页程序实例代码!
- · 从asp到asp.net之快速转型
- · ASP升级程序
- · 利用WebClient类向服务器上载文件
- · .net中Web自定义控件编写的几个注意事项
- · 奇妙的.NET之Web程序中使用windows弹出框
- · webservice.htc无法传递中文数据的解决
- · 用反射调用别人的.NET程序里的类和方法
- · DataView如何绑定Web Service返回的主从表数据集
- · 在类中添加断言
- · UBB代码的实现(ASP)
- · 精确的判断网络是否可用
- · 调试SharePoint web part时, 如何可以多个人同时启动调试?
- · 关于编译器失败,错误代码为 128。的解决方案
- · 如何实现将用户上传的文件生成缩略图!
- · 链接提示文字的实现
- · Code Behind技术
- · 几个开源项目实体层实现方式比较
- · 上传图片并生成缩略图
- · ASP全程讲座
- · 在网页中添加天气预报
- · 鼠标下浮动的文字和时钟
- · 音乐城堡2004免费版
- · ASP汉字转拼音函数
- · Oracle常見問題集(四)
- · 以ASP实现数据查询及输入
- · ASP操作Excel技术总结
- · bak文件带来的灾难
- · 关于输入框中显示双引号和单引号
- · 关于&运算符效率低下的问题,好的解决办法
- · 右键失效
- · 显示用户是否在线的方法
- · 图片的导入导出
- · 取消缓存
- · n 行n列的显示数据
- · 转换十进制为二进制的函数
