简单预处理

  1. PREPARE hacker from '[my sql sequece]'; //预定义SQL语句
  2. EXECUTE hacker; //执行预定义SQL语句
  3. (DEALLOCATE || DROP) PREPARE hacker; //删除预定义SQL语句

传参预处理

  1. SET @tn = 'hahaha'; //存储表名
  2. SET @sql = concat('select * from ', @tn); //存储SQL语句
  3. PREPARE hacker from @sql; //预定义SQL语句
  4. EXECUTE hacker; //执行预定义SQL语句
  5. (DEALLOCATE || DROP) PREPARE hacker; //删除预定义SQL语句

绕过过滤

利用 char() 函数将 select 的 ASCII 码转换为 select 字符串,接着利用 concat() 函数进行拼接得到 select 查询语句,从而绕过过滤。或者直接用 concat() 函数拼接 select 来绕过。

题目