栏目导航
热点推荐
- ASP下批量删除数据的两种方法
- 关于二级域名共享cookies
- ASP错误代码大全
- ASP代码实现show.asp?id=26变成s
- ASP错误信息解决:IIS启用父路径
- 一些常用的正则表达式大全
- ASP超级链接和HTML函数正则表达
- ASP隐藏下载地址及防盗代码
- 最常用的正则表达式示例
- ASP程序数据库被挂马的处理方法
- ASP生成html的新方法
- 精通ASP错误提示大全
阅览排行
ASP的防SQL注入
www.jz123.cn 2011-12-29 来源: 站长家园 责任编辑(袁袁) 我要投递新闻
前一篇我们介绍了一种防SQL注入的终极方法,也就是最原始、最简单、最有效也是最通用的方法,就是数据类型的检查加单引号的处理,具体的内容前面一篇已经介绍过了,这里我就不重复了,下面我们将要介绍另一种在ASP里防SQL注入攻击的方法,该方法不仅仅在ASP里适用,实际上可以在任何使用ADO对象模型与数据库交互的语言中,准确的说称之为基于ADO对象模型的防SQL注入的方法或许更恰当些。好了废话不说了,来看看代码
Dim conn,cmd,pra
set conn=server.createobject("adodb.connection")
conn.Open "…………" '这里省略数据库连接字
set cmd=server.createobject("adodb.Command")
set pra=server.createobject("adodb.Parameter")
cmd.ActiveConnection = conn
cmd.CommandText = "update news set title=? where id =?"
cmd.CommandType = adCmdText
Set pra = cmd.CreateParameter("title", adVarWChar, adParamInput, 50, "1'2'3")
cmd.Parameters.Append pra
Set pra = cmd.CreateParameter("id", adInteger, adParamInput, , 10)
cmd.Parameters.Append pra
cmd.Execute
news表的id字段是Integer型的,title字段是nvarchar(50)型的,执行的结果是把news表中id字段为10的记录的title字段的内容改成“1'2'3”
上一篇:构建高性能ASP站点之一 剖析页面的处理过程 下一篇:删除webshell中的不死僵尸