sql66666666

Pass18

输入admin显示user  agent信息,尝试通过user  agent进行注入

a' or updatexml(1,concat(0x7e,substr(version(),1,31),0x7e),1) and '1'='#

当时不理解为什莫后面要加一个and语句 ,搜了一说sql语句后面可能还有其他结构,直接把后面注释掉可能导致语法错误,and '1'='#'使得#更像合法语句,顺理成章地把后面注释掉

有回显,构造报错注入,

a'or extractvalue(1,concat(1,database())) and '1'='#

 

爆库,后面按照常规构造语句就行了

...............

Pass19

这个和上一道题思路一样,就是修改referer

尝试sqlmap这是使用手册SQLMAP的下载安装和使用(Windows)_sqlmap下载-优快云博客

在sqlmap目录下不用python前缀就可以运行起来了,好吧简单题用sqlmap好慢啊,比手注还慢我不知道它请求n遍是有甚麽心事吗,最后还没请求出来,明明就是referer注入不晓得为啥不行

还是老实手注: a' or extractvalue(1,concat(1,database()) and '1'='#)

ok

Pass20

输入admin有cookie提示

显示被删除,不用post方法提交,有回显

爆出来了,后面常规操作就行了

再补充一下sql绕过知识

Sql 注入绕过 waf
双写绕过
   
  出现关键字替换为空,那么SQl注入攻击也不会发生。用双写绕过。因为在过滤过程中只进行了一次替换。eg;:过滤了union 只要发现union 无论大小写都会被替换为空。这是就可以通过双 写uniunionon的写法来对过滤进行绕过。    
  编码绕过  
1.URL编码
在Chrome中输入一个连接,非保留字的字符浏览器会对其URL编码,如空格变为 、单引
号'、左括号(、右括号)
普通的URL编码可能无法实现绕过,还存在一种情况URL编码只进行了一次过滤,可以用两
次编码绕过:page.php?id=1UNION 1,2,3,4…
   
SELECT(extractvalue(0x3C613E61646D696E3C2F613E,0x2f61))
示例代码中,前者是对单个字符十六进制编码,后者则是对整个字符串编码,使用上来说较
少见一点
2.Unicode编码
Unicode有所谓的标准编码和非标准编码,假设我们用的utf-8为标准编码,那么西欧语系所
使用的就是非标准编码了
看一下常用的几个符号的一些Unicode编码:
单引号: %u0027、%u02b9 %u02bc %u02c8 %u2032 %uff07 ' 、�、�
空格:%u0020、%uff00 、�、�
左括号:%u0028、%uff08 ( 、�、�
右括号:%u0029、%uff09 ) 举例: ?id=10 ‘ AND 1=2#  
   
SELECT 'Ä'='A'; #1
两个示例中,前者利用双字节绕过,比如对单引号转义操作变成',那么就变成了� ' ,�\构
成了一个款字节即Unicode字节,单引号可以正常使用
 
3.缓冲区溢出绕过
01.id=1 and (select 1)=(Select
0xAAAAAAAAAAAAAAAAAAAAA)+UnIoN+SeLeCT+1,2,version(),4,5,database(),us
er(),
8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
02.,27,28,29,30,31,32,33,34,35,36–+
其中0xAAAAAAAAAAAAAAAAAAAAA这里A越多越好,一般要求1000个以上        
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值