PHP代码审计

php.ini 核心配置注意事项

  1. 设置 register_globals = Off

    • PHP5.5版本register_globals配置被删除
    • register_globals的危害:会将用户提交的GET,POST参数注册成全局变量并初始化为参数对应的值
  2. 设置allow_url_include = Off ,当为On 时会出现文件远程包含漏洞,一般默认设置就好,如下:

    • allow_url_fopen = On
    • allow_url_include = Off
  3. 隐藏PHP 版本信息 expose_php = Off

    • 不隐藏的话,可以在http头部看到,如X-Powered-By: PHP/5.6.40
  4. 设置 upload_tmp_dir '/hotdata/tmp'

    • 如果 php.ini 没有设置 ,那么默认 php 进程会读写系统的临时目录(Windows 默认为 C:/windows/temp,Linux 为 /tmp),所以为了保险起见还是设置下这个值
  5. 设置 PHP可访问目录 open_basedir = '指定目录' ,但是会影响

    • 开启open_basedir后,执行时间是关闭的3倍
      总结:使用open_basedir可以限制程序可操作的目录和文件,提高系统安全性。但会影响I/O性能导致系统执行变慢,因此需要根据具体需求,在安全与性能上做平衡。
  6. 关闭错误显示 display_errors=Off

未完待续

你可能感兴趣的:(PHP)