php隐藏后缀(.PHP)的方法过程

1.expose_php=On|Off

作用域:PHP_INI_SYSTEM;默认值:On。

启用时,PHP指令expose_php将细节追加到服务器签名后面。例如,如果启用了ServerSignature,ServerTokens设置为Full,并且启用了此指令,服务器签名档有关部分如下:

Apache/2.0.44(Unix) DAV/2 PHP/5.0.0b3-dev Server at www.example.com Port 80

如果expose_php被禁用,则服务器签名如下所示:

Apache/2.0.44(Unix) DAV/2 Server at www.example.com Port 80

2.删除phpinfo() 调用的所有实例

phpinfo()函数提供了一个很棒的工具,可用于在指定服务器上查看PHP 配置的总结。但是,由于在服务器上未加保护,这些文件对于攻击者来说实可谓是一个金矿。例如,这个函数能生成操作系统、PHP 和Web 服务器版本、配置标志的有关信息,还能生成关于所有可用扩展及其版本的详细报告。如果允许攻击者访问此信息,就更有可能发现并利用潜在的攻击漏洞。

遗憾的是,似乎许多开发人员没有意识到或不关心这些漏洞,因为只要在搜索引擎中键入phpinfo.php,将得到大约336 000 个结果,其中很多链接直接指向执行phpinfo()命令的文件,因而提供了关于服务器的大量信息。对于早期脆弱的PHP 版本。只需快速地修改搜索条件,加入其他关键词,就能得到原来结果的一个子集,而这将成为攻击的主要对象,因为他们使用了已知不安全的PHP 、Apache 、IIS版本和各种所支持的扩展。

允许其他人查看phpinfo()的结果,这实质上相当于向公众提供一个路线图,其中列出了你的服务器的许多技术特性和缺陷。不要仅仅因为懒惰未能删除或保护这个文件而成为攻击的牺牲品。

3.修改文档扩展名

启用PHP的文档一般通过其独特的扩展名就能识别,最常见的包括.php、php3 和.phtml 。你知道这可以很容易地改为你希望的其他扩展名吗?甚至可以改成是.html、.asp或者.jsp?,为此只要在httpd.conf 文件中修改如下一行:

Addtype application/x-httpd-php .php

添加所希望的任何扩展名,例如:

AddType application/x-httpd-php .asp

相关推荐