标题:Apache+Php Web安全配置全攻略 出处:沧海一粟 时间:Fri, 01 Apr 2011 11:11:58 +0000 作者:jed 地址:http://www.dzhope.com/post/786/ 内容: apache方面: 1.编译源代码,修改默认的banner 2.修改默认的http状态响应码404,503等默认页面 3.访问特殊目录需要密码.htaccess 4.关闭索引目录options -Indexes 5.关闭CGI执行程序options -ExecCGI 6.apache限制目录php_admin_value open_basedir /var/www 7.apache的php扩展名解析漏洞 apache配置文件,禁止.php.这样的文件执行,配置文件里面加入 Order Allow,Deny Deny from all 8.apache设置上传目录无执行权限 关闭路径/www/home/upload的php解析: Order allow,deny Deny from all PHP方面: 1.配置文件php.ini设置register_globals = Off。(防止变量滥用) 2.magic_quotes_gpc=On还是必须的了,咱可以程序处理好,客户不能- – !! 3.safe_mode是唯一PHP_INI_SYSTEM属性,必须通过php.ini或httpd.conf来设置。要启用safe_mode,只需修改php.ini:safe_mode = On(避免本地包含、文件打开、命令执行) 4.如非特殊需要,一定要关闭PHP的远程文件打开功能。修改php.ini文件(避免远程包含漏洞) 5.防注入,在php.ini中,找到此节: ; Automatically add files before or after any PHP document. ;auto_prepend_file = “phpids.php” ;auto_append_file = “alert.php” 默认是空,请添加所包含的文件。 同时找到: ; UNIX: “/path1:/path2″ ;include_path = “.:/php/includes” ; ; Windows: “\path1;\path2″ include_path = “.;F:\PHPnow\htdocs” 6.修改display_errors = Off(关闭警告及错误信息,爆路径) 7.disable_function要屏蔽的 disable_functions = phpinfo,exec,system,passthru,shell_exec,escapeshellarg,escapeshellcmd,proc_close,proc_open,dl,popen,show_source 8.disable_classes可以禁用某些类,如果有多个用逗号分隔类名,看情况所需 Generated by Bo-blog 2.1.1 Release