PHP默认安装产生系统漏洞

2016-02-19 11:07 5 1 收藏

下面图老师小编跟大家分享一个简单易学的PHP默认安装产生系统漏洞教程,get新技能是需要行动的,喜欢的朋友赶紧收藏起来学习下吧!

【 tulaoshi.com - Web开发 】


这一个漏洞在 packetstorm 被发表,我把它翻成中文,加上自己的一些注解,希望对在 NT 上执行
PHP 的朋友有一些帮助。

当你下载 PHP 後,在它内含的安装文件中帮助了 PHP 在 NT + Apache Web Server 的安装方式
,其中的安装帮助会要你将底下这几行设置加到 apache 的 httpd.conf 设置文件中,而这个安装文
件将导引你将你的系统门户大开。

这几行命令为:

ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php.exe"

我们进一步的解释这三行设置,这些设置命令要求 Apache 将 /php/ 这个虚拟目录直接映射到 c:/php/
目录下,所以当你使用: 

"http://www.example.com/php/"

链接网页的时候,实际上 Web Server 是直接存取到 c:/php/ 这个目录,这时候你会看到 "Access Denied"
的错误信息,但是当你改用:

"http://www.example.com/php/php.exe"

命令来连接的时候,你会发现服务器回送了 "No input file specified." 这行字,这行字是由 php.exe
所进行的回送,表示你刚刚在这台 server 上执行了 php 执行文件。

如果你的服务器是使用 php 里所教你的安装方法来作设置的,这时候你可能有了以下的危机。

[** 漏洞 1 **]

我们可以利用这个漏洞来读取这台服务器上的任何一个文件,甚至可以跨磁盘读取,只要使用下列方式连接:

"http://www.example.com/php/php.exe?c:winntrepairsam"

PHP 会将文件 "c:winntrepairsam" 丢给浏览器,并把它显示出来,而这个文件正是 Windows NT 
保存密码的所在,

"http://www.example.com/php/php.exe?d:winntrepairsam"

PHP 会把在 D: 磁盘中相同的文件传出。
而有了这个 SAM 文件,黑客可以用以破解出你在这台机器上所设置的密码。

[** 漏洞 2 **]

如果你指定了在 php 目录下的文件,你的 Web 服务器会尝试执行这个文件,并且传会错误信息,所以当你
使用了:

"http://www.example.com/php/php4ts.dll"

这个错误会导致 Web Server 传回 "couldn|t create child process: 22693: C:/php/php4ts.dll"
这个信息,因而漏了你安装 PHP 的真实目录

PS. 经过我的测试,第二个漏洞在 PHP V4.11 上执行时将回传回 "Internal Server Error" 的错误,
并不回漏目录结构,但是在 PHP V4.11 中,第一个漏洞仍然有效。

简易解决法∶使用较长且不易判定之虚拟目录来放置 PHP 执行文件,例如∶

ScriptAlias /php-mY-sCrIpT/ "c:/php411/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php-mY-sCrIpT/php.exe"

这样入侵者将不易得知 PHP 的存放目录,而降低了被入侵的机会。
在更改过 httpd.conf 後记得要将 Apache Service 重新启动∶

NET STOP APACHE
NET START APACHE

[END]

来源:http://www.tulaoshi.com/n/20160219/1596602.html

延伸阅读
标签: Web开发
Apache和mysql的安装较简单,主要是安装前请保证80端口未被占用 比如 iis 以前安装过的apache mysql 先停止运行phpmyadmin,主要是配置文件的问题,把phpMyAdmin安装目录下Libraries目录下面的Config.default.php复制到PHPmyAdmin根目录下,改 名为Config.inc.php;用记事本打开Config.inc.php,把 “$cfg['blowfish_secret'] = &#...
标签: Web开发
受影响的系统:  PHP 3.00   -------------------------------------------------------------------------------- 描述:     PHP Version 3.0是一个HTML嵌入式脚本语言。其大多数语法移植于C、Java和Perl并结合了 PHP的特色。这个语言可以让web开发者快速创建动态网页。     ...
标签: 电脑入门
第一步、打开注册表编辑器,方法是:运行 - 输入regedit 第二步、找到注册表项HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion 第三步、在右侧你可以找到数值名称为ProgramFilesDir的项目,里面的默认数值数据为C:Program Files,将这个值修改为你所需要设定的路径,比如D:software,然后确定,推出注册表编辑器;再次安装其他软...
标签: 电脑入门
win8如何在已安装多系统的情况下,更改默认开机系统 Windows 8更改开机默认系统 以win8,为例。右键计算机,打开属性 打开高级系统设置。 在启动和故障恢复的设置中进行更改,
标签: windows 操作系统
    懂得网络的人对于Ping这个最基本的网络命令一定很熟悉,它是一个非常好用的TCP/IP工具。它可以向你提供的地址发送一个小的数据包,然后侦听这台机器是否有“回答”。你可以使用机器的 Internet 地址,如:ping 192.78.222.81,或者也可使用机器名,如:ping MyComputer。 在使用Ping时,Ping工具程序发送一个ICMP(Interne...

经验教程

854

收藏

84
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部