大家好,我正在读一本关于盲sql注入的sans书籍
这本书的作者提到如果你想在mysql中触发一个错误
使用此查询并将其注入目标
1 and (select 1 from (select count(*),concat(/*your malicious query here*/,floor(rand(0)*2)x from users group by x) a)
他说(作者) count(*)
在 group by "floor(rand(0)*2)"
导致内部表中出现重复键并显示该键
我的问题是:首先,他为什么把x放在那里?
第二,什么是内部表中的重复键错误,是什么查询导致它,而不是这个查询,以及如何导致它 count(*)
在 group by "floor(rand(0)*2)"
使它发生
1条答案
按热度按时间zdwk9cvp1#
x
是表达式的别名floor(rand(0)*2)
,因此可以作为GROUP BY x
.“内部表中的重复键”听起来像是对mysql错误的描述,当它试图处理这个查询时会出现这个错误。