敏感PHP配置项

Author Avatar
Pr0ph3t 5月 12, 2017
  • register_globals : 全局变量注册开关
    版本: 4.2.3配置范围PHP_INI_ALL
    5.3.0被废弃,不推荐使用
    5.4.0被移除
    涉及项:变量覆盖

  • allow_url_include 是否允许包含远程文件
    版本:5.2.0后默认设置为off,配置范围PHP_INI_ALL
    涉及项:远程文件包含

  • magic_quotes_gpc 魔术引号自动过滤
    版本: < 4.2.3配置范围PHP_INI_ALL

    = 4.2.3配置范围PHP_INI_PERDIR
    5.3.不推荐使用
    5.4.
    被废弃
    涉及项:因为并不会过滤$_SERVICES,所以会导致类似client-ip,referer一类的漏洞被利用(header注入)

  • magic_quotes_runtime 魔术引号自动过滤
    版本:5.4.0后被取消 配置范围PHP_INI_ALL
    涉及项:功能区别于magic_quotes_gpc 是处理的对象不一样,runtime只对从数据库或文件中获取到的数据进行过滤(二次注入)

  • magic_quotes_sybase 魔术引号自动过滤
    版本:5.4.0后被移除
    涉及项:当设置为on时,他会覆盖掉magic_quotes_gpc的配置 但是它与gpc的处理对象一致,很少使用

  • safe_mod 安全模式
    版本:5.4.0后被取消 配置范围PHP_INI_SYSTEM
    涉及项:当此项为on,可以联动配置的指令有
    safe_mod_include_dir
    safe_mod_exec_dir
    safe_mode_allowed_env_vars
    safe_mode_protected_env_vars
    类似于一种沙盒机制?

  • open_basedir PHP可以访问的目录
    版本:沿用至今,只不过配置范围由 < 5.2.3时的PHP_INI_SYSTEM 到 >= 5.2.3的PHP_INI_ALL
    涉及项:简单来说就是php版的chroot 还有一个问题要注意的是配置的时候配置的是路径的前缀,如配置 /var/www/a 那么还是可以访问到 /var/www/ab 除非是用/结束路径

  • disable_function 禁用函数
    版本:沿用至今。 配置范围PHP_INI only
    涉及项:ban的时候要ban上dl()函数,因为dl函数可以加载自定义的php拓展来绕过此指令

  • display_errors 和 error_reporting 错误回显

发表评论

电子邮件地址不会被公开。 必填项已用*标注