所以成因已经明白了:当group by 在查询虚拟表和插入虚拟表时,如果这两次a语句执行的结果不一致就会引发错误,错误提示信息是插入的主键重复,提示通过自定义报错信息中的主键值来获得敏感信息。
其中还可以通过修改rand()函数的随机因子,指定随机数生成方式来提高报错的效率,具体见深入分析的参考链接,这里不过多赘述。
希望这篇文章能给你带来帮助,如果文中有不正确的地方,还请私信或评论留言,我会仔细查看。
参考链接:
group by:https://blog.csdn.net/hao1066821456/article/details/69556644
双查询注入:https://www.cnblogs.com/BloodZero/p/4660971.html
Mysql报错注入原理分析:https://www.cnblogs.com/xdans/p/5412468.html#undefined