您现在的位置: 北亚数据恢复实验室 >> 数据恢复文章 >> 相关编程资料 >> 文章正文 报修电话:010-51280825

提示:可按上面表单检索本站
所有文章及下载资源,
也可通过下面菜单进入文章、
下载及其他类别!

最新动态
文章中心
下载中心
网络日志
咨询留言
交流论坛
北亚数据恢复中心服务承诺:
· 免费检测
· 免费提供3天备份
· 专业数据恢复工程师提供服务
· 数据恢复前报价,客户确认后工程师开始数据 修复
· 数据恢复不成功不收费
· 与客户签订保密协议,对客户的数据严格保密
· 整个恢复过程不会对客户的原盘有任何的写操作,以确保原盘的数据完全。
著名的SQL流量注入(SQL注入)攻击法
著名的SQL流量注入(SQL注入)攻击法
更新时间:2007-03-02 【字体:

之所以旧事重提,只是想给那些还没接触到的人提个醒,顺便听听众位高手们的看法,好学习学习。


我们在编程过程中,经常会把用户输入的数据拼成一个SQL语句,然后直接发送给服务器执行,比如:

string SqlStr = "select * from customers where CompanyName Like '%" + textBox1.Text + "%'";

这样的字符串连接可能会带来灾难性的结果,比如用户在文本框中输入:

a' or 1=1 --

那么SqlStr的内容就是:

select * from customers where CompanyName like '%a' or 1=1 --%'

这样,整个customers数据表的所有数据就会被全部检索出来,因为1=1永远true,而且最后的百分号和单引号被短横杠注释掉了。

如果用户在文本框中输入:

a' EXEC sp_addlogin 'John' ,'123' EXEC sp_addsrvrolemember 'John','sysadmin' --

那么SqlStr的内容就是:

select * from customers where CompanyName like '%a' EXEC sp_addlogin 'John','123' EXEC sp_addsrvrolemember 'John','sysadmin' --

这个语句是在后台数据库中增加一个用户John,密码123,而且是一个sysadmin账号,相当于sa的权限。

如果用户在文本框中输入:

a' EXEC xp_cmdShell('format c:/y') --

运行之后好像是格式化C盘!

还有很多更危险的操作,不过都没试过。还是存储过程好用啊,存储过程的参数把用户的输入当成真正的字符串处理,既安全,又快速!

文章出处:http://maxianghui.cnblogs.com/archive/2006/07/12/448978.html

  • 上一篇文章:

  • 下一篇文章:
  • 关闭窗口
    ©2001-2006 北京
    北亚数据恢复中心
    站内文章搜索

    首页 联系我们 加入收藏 版权申明 文章地图 下载地图 RSS生成 XML生成 友情链接

    北京北亚数据恢复中心
    全国统一客服电话:4006-505-808 或 800-810-5880
    公司地址:北京市海淀区学院南路68号吉安大厦C座(汇智楼)528室
    京ICP备05011939号