Chinaunix首页 | 论坛 | 博客
  • 博客访问: 122877
  • 博文数量: 16
  • 博客积分: 383
  • 博客等级: 一等列兵
  • 技术积分: 170
  • 用 户 组: 普通用户
  • 注册时间: 2011-03-14 11:43
文章分类

全部博文(16)

文章存档

2014年(1)

2012年(3)

2011年(12)

分类: Mysql/postgreSQL

2011-05-16 11:04:44

黑客在网站相关表单输入框输入: This is a great questbook);drop table USERS;
 
应用程序将接受这个输入,插入一条SQL语句,如下所示:

INSERT INTO comments VALUES('This is a great questbook');drop table UEERS;);

数据库服务器将以上代码当作三个不同的命令:

 

  1. insert into comments values ('this is a great questbook');

  2. drop table users;

  3. );

 

是的,服务器可能会对第三行的注入代码语法报错。由于假设用户留言不会自己封闭SQL语句,因此用户添加了“);”,正如我们在注入攻击例子所介绍的。但是在数据库服务器遇到第三个命令并抛出语法错误之前,它将执行前两个命令。在服务器遇到这个错误命令的时候,为时已晚。Users表已经被删除,应用程序中要求用户登录的部分将无法正常工作。

阅读(1429) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~