最近在编程中经常遇到需要多字节字符与宽字节字符相互转换的问题,一直自己贴那几句代码。觉得麻烦,于是就自己写了一个类来封装wchar_t与char类型间的转换,其他的,诸如:CString\ LPWSTR\TCHAR CHAR\LPSTR之间也是一样用头文件:#ifndef USE_H_ #defi....
分类:
编程语言 时间:
2015-12-21 09:14:01
阅读次数:
206
至于宽字节注入,有人写过,我就不多写了:https://www.91ri.org/8611.htmlhttp://netsecurity.51cto.com/art/201404/435379_4.htm针对iconv()函数,我就试着写了个utf-8和gbk的url编码转换importos,urllib
print"""ifuwantchangegbktoutf-8,pleaseinputgbk,soasinpututf-8.
in..
分类:
其他好文 时间:
2015-08-21 00:27:39
阅读次数:
261
今天遇到一个编码的问题,困惑了我很长时间,所以就简要的的了解了一下常用的编码类型。我们最常见的是assic编码,它是一种单字节编码,对多容纳256个字符。我们在编程的时候经常遇到unicode,unicode是一种宽字节编码,能够很好的融合世界各个国家的字符,具有国际通用性,所谓宽字符其实使用两个字...
分类:
其他好文 时间:
2015-05-24 23:20:35
阅读次数:
154
vector::iterator it; for(it = vtNoAlignCH.begin(); it != vtNoAlignCH.end(); it++)
{
//宽字节正则
wstring line = *it;
wregex rgx(L"[\\u4e00-\\u9fa5]+");
std::w...
分类:
其他好文 时间:
2015-05-23 12:58:22
阅读次数:
486
字节注入也是在最近的项目中发现的问题,大家都知道%df’ 被PHP转义(开启GPC、用addslashes函数,或者icov等),单引号被加上反斜杠\,变成了 %df\’,其中\的十六进制是 %5C ,那么现在 %df\’ =%df%5c%27,如果...
分类:
其他好文 时间:
2015-05-09 16:45:00
阅读次数:
137
TCHAR 就是当你的字符设置为什么就是什么例如:当程序编译为 ANSI, TCHAR 相当于 CHAR当程序编译为 UNICODE, TCHAR 相当于WCHARchar : 单字节变量类型,最多表示256个字符wchar_t : 宽字节变量类型,用于表示Unicode字符它实际定义在里...
分类:
其他好文 时间:
2015-04-03 09:12:04
阅读次数:
135
我的机子用Xcode,单位是字节0开头为8进制0x为16进制cout默认输出的是10进制wchar_t 宽字节,它是一种足够大的整形类型,可以用来表示的是比如中文的编码c常量一旦被定义,就不能被修改(const)浮点数,c++中浮点数在计算内存中由两部分组成,一部分为基数,一部分用来表示浮点,这个浮...
分类:
编程语言 时间:
2015-03-08 22:48:35
阅读次数:
263
所谓的短字符,就是用8bit来表示的字符,典型的应用是ASCII码.而宽字符,顾名思义,就是用16bit表示的字符,典型的有UNICODE.********************************第一个就是宽字符到多字节字符转换函数,函数原型如下:int WideCharToMultiByt...
分类:
其他好文 时间:
2015-01-22 17:46:05
阅读次数:
247
0、前言
最近要为了自动化审计搜集所有PHP漏洞,在整理注入的时候,发现宽字节注入中使用iconv造成的漏洞原理没有真正搞懂,网上的文章也说得不是很清楚,于是看了荣哥(lxsec)以前发的一篇http://www.91ri.org/8611.html,加上我们两个人的讨论,最终有了这一篇深入的研究成果。
1、概述
主要是由于使用了宽字节编码造成的。
什么是字符集?
计算机...
分类:
其他好文 时间:
2015-01-19 17:19:58
阅读次数:
487
WideCharToMultiByte 实现宽字节转换到窄字节MultiByteToWideChar 实现窄字节转换到宽字节WideCharToMultiByte 的代码页用来标记与新转换的字符串相关的代码页;MultiByteToWideChar 的代码页用来标记与一个多字节字符串相关的代码页,[...
分类:
其他好文 时间:
2015-01-08 12:55:03
阅读次数:
264