51Testing软件测试论坛

标题: sql注入,一个例子让你知道什么是sql注入 [打印本页]

作者: 奇犽    时间: 2019-3-27 16:41
标题: sql注入,一个例子让你知道什么是sql注入
[attach]123369[/attach]

我就是按照文中例子,亲自在我之前用final框架做的项目中,操作了一遍,的确是实现了用户登录。

在不知道用户名和密码的情况下实现了用户登录

重现sql注入过程如下:

1、在用户名输入' or 1=1 --,然后随便输入一个密码

[attach]123370[/attach]

2、点击登录,我竟然登录进去系统了。

为什么呢?

debug一下源代码,就不难知道原因。

[attach]123371[/attach]

点击登录,得到的sql语句是:

select * from AUTH_USER t where t.LOG_IN_NAME='' or 1=1 --' and  t.PASSWORD='gdd'

放入oracle去执行:

[attach]123372[/attach]

返回了所有的用户信息,这样authUser就肯定不是null了,表示数据库有相关用户,当然就算是登录成功了。


果不其然成功进入了系统界面,这样用户就算是登录了,虽然是一个随机的一个用户,但是该用户的操作他都可以干,甚至如果知道框架的action地址,那么在浏览器中输入功能的action的地址,他想干什么就干什么了。

[attach]123373[/attach]



作者: shuaibao_123456    时间: 2019-3-27 18:08
我还是不懂,说下原理呀




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2