SQL双注入原理

        以前做SQL-LAB靶场的时候没有好好的做的做,导致以为是盲注(第五关),所以在此好好的总结一下。

 

 

  首先会用到floor(),rand(),group by ,count(*);

 

  floor()是取整的意思:

 

  rand()会随机返回一个值(0~1之间):

 

 

 

返回的条数将由所选定表里的记录数决定。

 

count(*)返回当前的表的所有的记录数:

 

 

 group by xxx(表名,可自己设置,用于分组)如:

 

 未用group by 前会输出所有的记录:

 

将table_schema作为b后,并且将其进行分组后:

 

 只会输出当前数据库以及其中的一个表名。

-----------------------------------------------------------------------------------

剩下的有点摸不清头脑(等整理好在写下来),介绍一下一个博客(讲得不错):https://mochazz.github.io/2017/09/23/Double_%20SQL_Injection/

 

posted @ 2019-02-25 19:43  Mikasa233  阅读(986)  评论(0)    收藏  举报