偏移注入主要是针对知道表,但是不知道字段的。

    偏移注入是一种注入姿势,可以根据一个较多字段的表对一个少字段的表进行偏移注入,一般是联合查询,在页面有回显点的情况下

    SQL注入的时候会遇到一些无法查询列名的问题,比如系统自带数据库的权限不够而无法访问系统自带库。
    当你猜到表名无法猜到字段名的情况下,我们可以使用偏移注入来查询那张表里面的数据。 像Sqlmap之类的工具实际上是爆破字段的名字,但是如果字段名称比较奇葩,就无可奈何了

    INNER JOIN 关键字语法,注释:INNER JOIN 与 JOIN 是相同的。

    这里我已经知道了表示:sys_admin

    可以使用:select exists(select *from sys_admin)

    来猜测是否有sys_admin表,如果说存在的话页面就会显示正常

    判断字段

    偏移注入 - 图1

    爆出显示位

    偏移注入 - 图2

    偏移注入 - 图3

    偏移注入 - 图4

    判断表内存在的字段数

    接下来我们利用“*”代替admin表内存在的字段,由于是18个字段数,需要逐步测试,直到返回正常。

    偏移注入 - 图5

    说明了sys_admin表下有11个字段。

    偏移注入的基本公式为:

    order by 出的字段数**减去*号的字段数然而再用order by的字段数**减去**2倍刚才得出来的答案     也就是18-11=7        18-7*2=4

    得到答案是4

    然后依次是套公式:

    偏移注入 - 图6

    INNER JOIN 关键字语法,注释:INNER JOIN 与 JOIN 是相同的。

    如此便爆出了账号密码。

    as关键字

    1. admin as a #把admin重命名为a