加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

PHP中实现用户提交数据有什么需注意的?

发布时间:2023-06-07 13:33:00 所属栏目:PHP教程 来源:
导读:关于“PHP中实现用户提交数据有什么要注意的?”的知识有一些人不是很理解,对此小编给大家总结了相关内容,具有一定的参考借鉴价值,而且易于学习与理解,希望能对大家有所帮助,有这个方面学习需要的朋友
关于“PHP中实现用户提交数据有什么要注意的?”的知识有一些人不是很理解,对此小编给大家总结了相关内容,具有一定的参考借鉴价值,而且易于学习与理解,希望能对大家有所帮助,有这个方面学习需要的朋友就继续往下看吧。
 
很多 PHP 程序所存在的重大弱点并不是 PHP 语言本身的问题,而是编程者的安全意识不高而导致的。因此,必须时时注意每一段代码可能存在的问题,去发现非正确数据提交时可能造成的影响。
 
Example #1 危险的变量用法
 
<?php
 
    // 从用户目录中删除一个文件,或者……能删除更多的东西?
 
    unlink ($evil_var);
 
   // 记录用户的登陆,或者……能否在 /etc/passwd 添加数据?
 
   fwrite ($fp, $evil_var);
 
    // 执行一些普通的命令,或者……可以执行 rm -rf * ?
 
    system ($evil_var);
 
    exec ($evil_var);
 
?>
 
必须时常留意你的代码,以确保每一个从客户端提交的变量都经过适当的检查,然后问自己以下一些问题:
 
此脚本是否只能影响所预期的文件?
 
非正常的数据被提交后能否产生作用?
 
此脚本能用于计划外的用途吗?
 
此脚本能否和其它脚本结合起来做坏事?
 
是否所有的事务都被充分记录了?
 
在写代码的时候问自己这些问题,否则以后可能要为了增加安全性而重写代码了。注意了这些问题的话,也许还不完全能保证系统的安全,但是至少可以提高安全性。
 
还可以考虑关闭 register_globals,magic_quotes 或者其它使编程更方便但会使某个变量的合法性,来源和其值被搞乱的设置。在开发时,可以使用 error_reporting(E_ALL) 模式帮助检查变量使用前是否有被检查或被初始化,这样就可以防止某些非正常的数据的挠乱了。
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!