宽字符注入
gbk是一种多字符编码,通常来说,一个gbk编码汉字,占用2个字节。一个utf-8编码的汉字,占用3个字节。PHP在开启magic_quotes_gpc或者使用addslashes、iconv等函数的时候,单引号(’)会被转义成\’。比如字符%bf在满足上述条件的情况下会变成%bf\’。其中反斜杠(\)的十六进制编码是%5C,单引号(’)的十六进制编码是%27,那么就可以得出%bf \’=%bf%5c%27。如果程序的默认字符集是GBK等宽字节字符集,则MySQL会认为%bf%5c是一个宽字符,也就是“縗”。也就是说%bf \’=%bf%5c%27=縗’。
可以看到‘,转为\‘。
成功把\注释掉。
然后就自行进行py交易吧!!!
附上两篇链接
https://www.waitalone.cn/php-code-audit-5.html
http://blog.csdn.net/ytuo1223/article/details/49001191