Sqli-Labs 闯关 less 54-65
Less 54:
我们打开本关后查看页面信息,大概意思是说要求我们输入正确的ID值,次数不超过10次,表已知为CHALLENGES。。。
首先输入id=1返回正确,根据返回信息我们知道本关id使用单引号进行包裹,所以我们输入id=1'--+返回正确。。。

使用order by函数判断列数,发现有3列。。。

使用union select联合查询,输入一个不存在的id进行回显。。。

之后把3替换为group_concat(table_name)from information_schema.tables where table_schema='CHALLENGES',得到表名为adw2nryzw7。。。

把3替换为group_concat(column_name)from information_schema.columns where table_schema='adw2nryzw7',得到列名为。。。

把3替换为group_concat(concat_ws(0x7e,))from CHALLENGES.adw2nryzw7,得到数据为,然后输入提交即可,由于我这个字段为空,无法操作,所以后面就不做演示了,按步骤操作即可。。。
Less 55:
与Less 54唯一的区别是id=(1),其余均相同。。。
Less 56:
与Less 54唯一的区别是id=('1'),其余均相同。。。
Less 57:
与Less 54唯一的区别是id="1",其余均相同。。。
Less 58:
输入id=1返回正确,发现其对id值的包裹与Less 54相同,我们试一下union select联合查询,id输入一个不存在的值使其进行回显,但我们却发现返回结果并没有进行回显,说明联合查询不可用。。。

我们使用updatexml报错注入的方法进行查表,输入?id=1'and updatexml(1,concat(0x7e,(select group_concat(table_name)from information_schema.tables where table_schema='CHALLENGES')),1)--+返回表名为nuuyuwu62h

输入?id=1'and updatexml(1,concat(0x7e,(select group_concat(column_name)from information_schema.columns where table_name='nuuyuwu62h')),1)--+查列信息。。。

之后与之前相同。。。
Less 59:
与Less 58唯一的区别是id=1,其余均相同。。。
Less 60:
与Less 58唯一的区别是id=("1"),其余均相同。。。
Less 61:
与Less 58唯一的区别是id=(('1')),其余均相同。。。
Less 62:
首先输入id=1返回正确,查看其对id值的包裹为id=('1'),错误次数不超过130次,推断出可以使用盲注。。。
Less 63:
与Less 62唯一的区别是id='1',其余均相同。。。
Less 64:
与Less 62唯一的区别是id=((1)),其余均相同。。。
Less 65:
与Less 62唯一的区别是id=("1"),其余均相同。。。

浙公网安备 33010602011771号