反引号是个比较特别的字符,下面记录下怎么利用
0x00 SQL注入
反引号可利用在分隔符及注释作用,不过使用范围只于表名、数据库名、字段名、起别名这些场景,下面具体说下
1)表名
payload:select * from `users` where user_id=1 limit 0,1;
可以正常执行的,这样使用还可以起到分隔符的作用,如下
eg:select * from`users`where user_id=1 limit 0,1;
2)数据库名
payload:select * from `information_schema`.tables;
3)字段名
payload:select * from users where `user_id`=1 limit 0,1;
4)起别名
payload:select user_id,user `111111` from users where user_id=1 limit 0,1;
反引号注释符原理
上面说了反引号的使用,下面来看看具体是怎么使用来进行绕过SQL检测的
主要用的就是起别名这个,这个运用范围比较窄
如果不闭合反引号,则后面的所有都会成为别名
eg:select 1,2 `111111 from users where user_id=1 limit 0,1;
相当于注释的作用的,不过运用条件比较苛刻