PHP中使用addslashes函数转义的安全性原理分析

作者:shichen2014 时间:2023-08-16 10:31:22 

本文实例讲述了PHP中使用addslashes函数转义的安全性原理分析。分享给大家供大家参考。具体分析如下:

先来看一下ECshop中addslashes_deep的原型

function addslashes_deep($value) {
    if (empty($value)) {
        return $value;  //如为空,直接返回;
    } else {
        return is_array($value) ? array_map('addslashes_deep', $value): addslashes($value);
    }  //递归处理数组,直至遍历所有数组元素;
}


addslashes_deep函数本身没有问题,但使用时得注意一点
恰好今天也是在网上看到了有人发了关于使用这个函数使用的BUG注入漏洞
这个函数在引用回调函数addslashes时,只对数据的值进行转义,所以如果使用者在此过程中引用数组的键进行特定处理时,存在$key注入风险,此时可更改addslashes_deep函数,使其同时对键值进行转义,或者使用时明确不引用键内容。

希望本文所述对大家的PHP程序设计有所帮助。

标签:PHP,addslashes
0
投稿

猜你喜欢

  • python自动查询12306余票并发送邮箱提醒脚本

    2023-08-26 09:34:37
  • Python寻找路径和查找文件路径的示例

    2023-05-01 10:36:37
  • python 动态生成变量名以及动态获取变量的变量名方法

    2021-05-18 10:28:20
  • CentOS 6.3安装配置nginx+php+mysql

    2023-11-24 11:11:33
  • Django框架配置mysql数据库实现过程

    2024-01-20 00:35:23
  • Python2.7 实现引入自己写的类方法

    2022-02-25 00:07:44
  • thinkphp微信开发(消息加密解密)

    2023-11-21 06:08:43
  • SQL Server如何保证可空字段中非空值唯一

    2011-02-24 16:44:00
  • Linux 自动备份oracle数据库详解

    2023-07-14 08:11:41
  • python实现学生成绩测评系统

    2023-08-09 19:40:56
  • Python经典案例之图像漫水填充分割详解

    2021-08-25 11:41:14
  • Python 蚁群算法详解

    2023-01-03 03:46:25
  • 浅析python 中__name__ = '__main__' 的作用

    2022-07-21 16:32:28
  • ACCESS转SQL Server2000需要注意的问题

    2007-11-18 15:25:00
  • Python字典遍历的陷阱

    2022-11-16 21:59:11
  • Python移动测试开发subprocess模块项目实战

    2022-09-06 11:11:19
  • python自制简易mysql连接池的实现示例

    2023-04-14 20:23:55
  • 利用python对Excel中的特定数据提取并写入新表的方法

    2023-09-17 16:03:10
  • TFRecord文件查看包含的所有Features代码

    2023-07-26 15:45:08
  • pycharm sciview的图片另存为操作

    2022-09-26 08:03:07
  • asp之家 网络编程 m.aspxhome.com