下面用一个用户登录的场景来说明这个事情:
1,下面用户登录的SQL语句,使用用户名和密码,判断用户是否存在(再普通不过了)
select * from users where username='marcofly' and password=md5('test')
2,如果用户像下面这样输入
SQL语句就变成这样了
select * from users where username='' or 1=1--' and password=md5('')
这个语句在oracle中等价于(其他数据库的注释符号不一样)
select * from users where username='' or 1=1
直接就屏蔽掉了密码,可以随机登录了,当然你也可以知道用户名,登录指定的用户了。
3,当然这是最简单的SQL注入了,供程序开发人员入门了解。