0x00 一些事实
order by 2 并不等于 order by (1+1) 或者order by 1+1
order by x+y 或者order by (x+y) 的结果与不加order by的结果是相同的
位运算符
order by的语法再研究:
使用ORDER BY子句对查询返回的结果按一列或多列排序。
ORDER BY子句的语法格式为:
ORDER BY {列名 [ASC|DESC]} [,...n]
ORDER BY 语句默认按照升序对记录进行排序。
例如:
order by create_time desc,page_view desc
先按照创建时间排序,如果创建时间相同按照page_view排序
在不知道列名的情况下可以通过列的的序号来指代相应的列 但是经过测试这里无法做运算
当order by 注入能过返回错误信息时,也可以考虑使用报错 注入
根据不同的列排序,会返回不同的结果,因此这里其实可以 使用类似于bool型盲注的形式来注入,即使判断的结果与某 种返回内容相关联,来实现注入,同理,在bool型注入可以 的情况下,一般也能使用基于时间的盲注
同样sleep函数也可以生效:
order by可以根据多列排序,因此注入的语句不一定限制于order by的第一个参数,也可以通过逗号去对新的列进行注入
if条件不同返回的顺序不同,通过这一点,就可以实现类似bool型盲注的效果
猜测:字符串和数字按位或 = 该数字, 数字和数字按位或正常进行