十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
前几天配置PHP5.4的时候发现PHP新版已经在一些安全函数方面进行了增改,从php自身防止一些不必要的漏洞,因此开发人员在写代码时也需要注意版本的兼容。下面讲几个涉及安全方面的函数进行说明。
1、safe_mode
状态:已删除
描述:此函数主要限制系统相关的文件打开、命令执行等函数(具体影响函数见参考1)。当然现在也有bypasss safe_mode的方法(见参考2),通过com接口来绕过。
解决办法:可以通过配置php.ini中的disable_functions函数列表进行限制指定函数。
2、magic_quotes_gpc
状态:已删除 (magic_quotes_runtime、magic_quotes_sybase 删除)
描述:此函数在PHP <= 4.2.3默认开,会自动对GPC (Get/Post/Cookie)提交的值中的’, “, 和空格进行转义,PHP5.4中get_magic_quotes_gpc()默认返回false。
解决办法:基本上还是不受影响,先检测状态,然后采用mysql_real_escape_string进行转义处理。
3、register_globals
状态:已删除
描述:此函数虽然从PHP>>4.2开始默认由on改为off,但是如果程序员开启的话会导致变量覆盖等安全问题,特别是结合文件包含漏洞等。
解决办法:可以结合前面sablog源码中的函数进行改写(采用extract函数).
4、session_register
状态:已删除(session_unregister()、session_is_registered 删除)
描述:采用session认证的时候可以用该函数注册session变量。
解决办法:采用$_SESSION数组进行注册变量。
参考:
http://hi.baidu.com/zhangguanshi/blog/item/0a5bf51771a54e42f3de32d1.html
http://luoq.net/PHP-COM-functions/
http://php.net/releases/5_4_0.php
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。