当前位置: 首页 > 图文教程 > 网络编程 > PHP > 理解PHP及其安全问题的入门知识

PHP
php基础知识:类与对象(5) static
谈谈新手如何学习PHP
Breeze 文章管理系统 v1.0.0正式发布
缓存技术详谈—php
php 进阶:实现无限分类
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
PHP读MYSQL中文乱码的解决方法
亲密接触PHP之PHP语法学习笔记1
IIS环境下快速安装、配置和调试PHP5.2.0
转PHP手册及PHP编程标准
PR值查询 | PageRank 查询
PHP函数utf8转gb2312编码
PHP 模板高级篇总结
PHP 编程请选择正确的文本编辑软件
使用 MySQL 开始 PHP 会话
PHP 的几个配置文件函数
剖析 PHP 中的输出缓冲
Windows2003 下 MySQL 数据库每天自动备份
30分钟学会用PHP写带数据库的简单通讯录
php下看实例学正则表达式

理解PHP及其安全问题的入门知识


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 242 ::
收藏到网摘: n/a

  有时候,您的业务可能涉及到 PHP 应用程序的安全性。当您遇到审计任务时,您知道如何执行查找吗?本系列将带您进入 PHP,并帮您在一定程序上了解它,让您在进行安全审计时知道查找什么。第 1 部分向您介绍 register_globals 设置。
  
  入门知识
  
  我在此假定您对 PHP 的语法有一个大致的了解,至少能够编写“Hello World”之类的程序。如果您不具备基础知识,则请首先学习 PHP 手册和某些基本的 PHP 教程(参阅 参考资料)。很多出版商都有关于 PHP 的好书。建议初学者一开始先看看入门书籍或食谱形式的书籍。
  
  在生产环境的准确副本上执行审计。您不需要复制硬件,但是需要确保软件版本尽量和实际的完全一样。PHP 配置必须精确匹配,这一点在 php.ini 文件中、在 .htaccess 文件的 Apache 指令中或在 httpd.conf 中已经指定。您需要准备一个单独的环境,因为您将显示和记录可能包含敏感的密码及其他信息的错误。此外,您将尝试中断站点的安全性,这一点是您在活动应用程序中极力避免的。
  
  第一步是将 PHP 的 error_reporting 设置更改为 E_ALL。设置更改后,每当使用未初始化的变量、进行错误的文件访问及发生其他(大多数)无害错误时,PHP 都会报告一条警告消息,但也存在这是一个潜在攻击矢量的可能性。这些错误一般情况下只是表明编程草率,所以如果这是您的代码,您把它们清除掉即可。
  
  该设置如下所示:
  
  error_reporting = E_ALL
  
  如果您不知道 php.ini 文件在哪里,则可以通过创建包含以下文本的 .php 脚本来查找:
  
  <?php
  
  phpinfo();
  
  输出的上面部分有一行列出了 PHP 查找 php.ini 的位置: