创建 PHP 网站安全的几个实用要点
大家都知道 PHP 已经是当前最流行的 Web 应用
了。但是也与其他脚本语言
一样,PHP
也有几个很危险的安全漏洞。所以在这篇教 学文章中,我们将大致看看几个
实用的技巧来让你避免一些常见的 PHP 安全问题。
技巧 1:使用合适的错误报告
一般在开发 过程中,很多程序员总是忘了制作程序错误报告,这是极大的错误,因
为恰当的错误报告不仅仅是最好的调试工具,也是极佳的安全漏洞 检测工具,这能让你
把应用真正上线前尽可能找出你将会遇到的问题。
当然也有很多方式去启用错误报告。比如在 php.in
配置文 件中你可以设置在运行时
启用
启动错误报告:
error_reporting(E_ALL);
停用错误报告:
error_reporting(0);
技巧 2:不使用 PHP 的 Weak
属性 有几个 PHP 的属性是需要被设置为 OFF 的。一般它
们都存在于 PHP4 里面,而在 PHP5 中是不推荐使用的。尤其最后在 PHP6 里面,这些属性
都被移除了。
注册全局变量
当 register_globals
被 设置为 ON 时,就相当于设置 Environment,GET,POST,COOKIE
或者 Server
变量都定义为全局变量。此时你根本不需要去写 $_POST ['username']来获取表
单变量'username',只需要'$username'就能获取此变量了。
那么你肯定在想既 然设置 register_globals
为 ON 有这么方便的好处,那为什么不要
使用呢?因为如果你这样做将会带来很多安全性的问题,而且也可能 与局部变量名称相
冲突。
比如先看看下面的代码:
if( !empty( $_POST['username'] ) && $_POST
['username'] == ‘test123′ && !empty( $_POST['password'] ) && $_POST['password'] ==
“pass123″ )