专业承接:邳州网站建设 / 邳州网页制作 / 邳州网站建设
如何对PHP程序中的常见漏洞进行攻击(下)

发布时间:2008-4-28 10:59:57 新闻类别: 网页设计 点击次数: 1146

如何对PHP程序中的常见漏洞进行攻击(下)

[库文件]

  正如我们前面讨论的那样,include()和require()主要是为了支持代码库,因为我们一般是把一些经常使用的函数放到一个独立的文件中,这个独立的文件就是代码库,当需要使用其中的函数时,我们只要把这个代 码库包含到当前的文件中就可以了。

  最初,人们开发和发布PHP程序的时候,为了区别代码库和主程序代码,一般是为代码库文件设置一个“.inc”的扩展名,但是他们很快发现这是一个错误,因为这样的文件无法被PHP解释器正确解析为PHP代码。如果我们直接请求服务器上的这种文件时,我们就会得到该文件的源代码,这是因为当把PHP作为Apache的模块使用时,PHP解释器是根据文件的扩展名来决定是否解析为PHP代码的。扩展名是站点管理员指定的,一般是“.php”, “.php3”和“.php4”。如果重要的配置数据被包含在没有合适的扩展名的PHP文件中,那么远程攻击者很容易得到这些信息。

  最简单的解决方法就是给每个文件都指定一个PHP文件的扩展名,这样可以很好的防止泄露源代码的问题,但是又产生了新的问题,通过请求这个文件,攻击者可能使本该在上下文环境中运行的代码独立运行,这可能导致前面讨论的全部攻击。

  下面是一个很明显的例子:

In main.php:
<?php
  $libDir = "/libdir";
  $langDir = "$libdir/languages";
  ...
  include("$libdir/loadlanguage.php":
?>

In libdir/loadlanguage.php:
<?php
  ...
  include("$langDir/$userLang");
?>

  当“libdir/loadlanguage.php”被“main.php”调用时是相当安全的,但是因为“libdir/loadlanguage”具有“.php”的扩展名,因此远程攻击者可以直接请求这个文件,并且可以任意指定“$langDir”和“$userLang”的值。


关键词:如何对PHP程序中的常见漏洞进行攻击(下),邳州网站建设,邳州做网站,邳州网站,邳州网络公司,徐州慧网网络科技有限公司
上一篇: 如何对PHP程序中的常见漏洞进行攻击(上)
下一篇: PHP高手宝典
 
 网页设计其他新闻
  建站常用代码  [2009-11-7 12:22:09]
  网页设计之网页布局 [2009-9-10 10:22:13]
  网页色彩搭配内涵 [2008-11-2 14:39:05]
  网页设计中HTML常犯的五个错误 [2008-11-2 14:35:39]
  网页设计中的文字运用 [2008-11-2 13:57:35]
  根据不同的浏览器调用不同的CSS设置 [2008-11-2 10:43:39]
  Dreamweaver 入门:DW 8 的新增功能 [2008-11-2 9:53:28]
  Dreamweaver技巧:让你的图片下载更迅速 [2008-11-2 9:46:09]
  给你的网页盖个章 [2008-11-2 9:37:25]
  DW做ASP程序时关于数据库的几个常见问题  [2008-11-2 9:32:06]
  学习参考:用Dreamweaver+ASP实现网页分页 [2008-11-2 9:30:13]
  在Dreamweaver中插入有颜色的直线 [2008-11-2 9:26:02]
  常用Dreamweaver使用技巧二十则 [2008-11-2 9:23:55]
  PHP.MVC的模板标签系统 [2008-7-28 9:37:31]
  PHP中addcslashes函数与stripcslashes的用法 [2008-7-28 9:36:13]

 
2003-2016 版权所有:徐州慧网网络科技有限公司 地址:江苏省邳州市韩世步行街七号楼七号 徐州和信广场F308室
电话:0516-81581111 13179703111 传真:82608399 国家信息产业部备案号:苏ICP备11050226号-2
在众多的邳州网站建设制作公司中,10年来慧网公司一直提供专业可靠的网页设计制作,网络营销服务 ,相信您的选择不仅仅会得到邳州网站建设!
慧网公司旗下:邳州在线 银杏 银杏论坛 银杏树 邳州做网站 徐州网站建设 新沂网站建设 睢宁网站建设 铜山网站建设 贾汪网站建设 中国苗木交易网 新沂网站建设

苏公网安备 32038202000256号