文档章节

mysql使用set names gbk形式来规定字符集的危害

病态S
 病态S
发布于 2017/06/24 00:36
字数 214
阅读 12
收藏 0

原因:php语言针对字符串是以字节的形式来处理的,如“誠”gbk编码则表示为0xdc0x5c,而0x5c则表示‘\’,故输入“誠”(或直接输入0xdc0x5c,下同含义)时,即输入了0xdc0x5c——0xdc\,依照魔术引号过滤后为“誠\”,若输入“誠'”,则会处理为“誠\\'”,结果为多了个单引号,另mysql中/*  */表示块级注释,#可注释单行。

综上,可知,若以set names gbk或其它多字节编码形式规定字符集则存在明显的sql注入漏洞。(单字节站点则无惧该风险)

解决方法:自定义字符集,如set character_set_connection=gbk,character_set_results=gbk,set character_set_client=binary;设置gbk格式的连接字符集和返回结果字符集,二进制的客户端发送字符集。

© 著作权归作者所有

共有 人打赏支持
病态S
粉丝 1
博文 83
码字总数 35824
作品 0
程序员
私信 提问
MySQL字符集 GBK、GB2312、UTF8区别 解决 MYSQL中文乱码问题

MySQL中涉及的几个字符集 character-set-server/default-character-set:服务器字符集,默认情况下所采用的。 character-set-database:数据库字符集。 character-set-table:数据库表字符集...

酸奶喝不完
2012/08/23
0
2
彻底解决mysql中文乱码的办法

MySQL会出现中文乱码的原因不外乎下列几点: 1.server本身设定问题,例如还停留在latin1 2.table的语系设定问题(包含character与collation) 3.客户端程式(例如php)的连线语系设定问题 强烈建...

辰月
2015/08/15
0
0
再谈乱码问题,如何解决MYSQL数据中文乱码问题

在之前的文章里,我已经提过如何解决JSP中乱码问题(解决tomcat下中文乱码问题 ),其中也详细解说了MYSQL乱码问题,相信通过里面的办法,肯定都已经解决了JSP里的乱码问题,不过还是有些人的...

ly5156
2011/08/12
0
0
Mysql中文乱码问题完美解决方案

MySQL会出现中文乱码的原因不外乎下列几点: 1.server本身设定问题,例如还停留在latin1 2.table的语系设定问题(包含character与collation) 3.客户端程式(例如php)的连线语系设定问题 强烈建...

心若定水
2013/12/01
0
0
MySQL · 实现分析 · 对字符集和字符序支持的实现

前言 在使用MySQL数据库的时候,常常会发现由于charset或collation设置不正确导致的各种问题。一方面由于数据在client和server之间传输需要做转换会导致CPU使用率增加;另一方面由于charset...

阿里云RDS-数据库内核组
2017/03/07
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Windows 10 设置 Java 环境变量

首先你需要在我的电脑中打开,找到环境变量属性。 找到环境变量属性 找到环境变量属性后单击将会看到下面的设置界面。 在这个界面中设置高级系统设置。 环境变量 在弹出的界面中选择设置环境...

honeymose
今天
1
0
用any-loader封装jQuery的XHR —— 随便写着玩系列

哎,都说没人用JQuery啦,叫你别写这个。 其实我也是好高骛远使用过npm上某个和某个很出名的XHR库,嗯,认识我的人都知道我喜欢喷JQ,以前天天喷,见面第一句,你还用JQ,赶紧丢了吧。但我也...

曾建凯
今天
7
0
聊聊storm的AggregateProcessor的execute及finishBatch方法

序 本文主要研究一下storm的AggregateProcessor的execute及finishBatch方法 实例 TridentTopology topology = new TridentTopology(); topology.newStream("spout1", spout......

go4it
今天
4
0
大数据教程(7.5)hadoop中内置rpc框架的使用教程

博主上一篇博客分享了hadoop客户端java API的使用,本章节带领小伙伴们一起来体验下hadoop的内置rpc框架。首先,由于hadoop的内置rpc框架的设计目的是为了内部的组件提供rpc访问的功能,并不...

em_aaron
今天
5
0
CentOS7+git+github创建Python开发环境

1.准备CentOS7 (1)下载VMware Workstation https://pan.baidu.com/s/1miFU8mk (2)下载CentOS7镜像 https://mirrors.aliyun.com/centos/ (3)安装CentOS7系统 http://blog.51cto.com/fengyuns......

枫叶云
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部