mysql防护函数及设置

一、防护设置及函数

1.1)magic_quotes_gpc配置项

在php较低版本中(php version <= 5.3.0),配置文件php.ini有个配置项magic_quotes_gpc,俗称魔术引号。

magic_quotes_gpc配置项在php中的作用是判断解析用户输入的数据,如包括有post、get、cookie过来的数据。

在magic_quotes_gpc = On的情况下,如果输入的数据有单引号(’)、双引号(”)、反斜线(\)与 NULL(NULL 字符)等字符都会被加上转义字符反斜线(\)。以确保这些数据不会引起程序,特别是数据库语句因为特殊字符引起的污染而出现致命的错误。

1.2)addslashes()函数

addslashes()函数的作用与magic_quotes_gpc配置项相同,addslashes()函数不受版本限制,且需要在代码中主动调用。

二、绕过技巧

2.1)编码绕过

通过16进制编码绕过

如下图所示,在未编码情况下,自动添加了转义字符\,读取文件失败:

编码之后成功读取:

2.2)宽字节注入

暂时不讲

文章作者: TechOtaku
文章链接: http://techotaku.me/2018/07/25/mysql防护函数及设置注入/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 徒然の博客