缺陷标题 testphp网站存在PHP信息泄露风险。
测试平台与浏览器 Windows 7(64 bit)+IE 11或Chrome。
测试步骤
(1)打开testphp网站http://testphp.vulnweb.com/secured/phpinfo.php。
(2)分别在IE、Chrome上观察页面信息。
期望结果 不显示PHP详细信息。
实际结果 显示PHP详细信息,如图1-33和图1-34所示。
图1-33 Chrome上显示PHP详细信息
图1-34 IE上显示PHP详细信息
PHP是一个HTML嵌入式脚本语言。PHP包是通过一个名为phpinfo.php的CGI程序传输的。phpinfo.php对系统管理员来说是一个十分有用的工具,在安装的时候被默认安装。但它也能被用来泄露其所在服务器上的一些敏感信息。
PHPInfo提供了以下信息。
(1)PHP版本(包括build版本在内的精确版本信息)。
(2)系统版本信息(包括build版本在内的精确版本信息)。
(3)扩展目录(PHP所在目录)。
(4)SMTP服务器信息。
(5)Sendmail路径(如果安装了Sendmail)。
(6)Posix版本信息。
(7)数据库:ODBC设置(包括路径、数据库名、默认密码等);MySQL客户端的版本信息(包括build版本在内的精确版本信息);Oracle版本信息和库的路径。
(8)所在位置的实际路径。
(9)Web服务器。
(10)IIS版本信息。
(11)Apache版本信息。
如果在Windows(32bit)环境下运行,那么还会提供以下信息。
(1)计算机名。
(2)Windows目录的位置。
(3)路径(能用来泄露已安装的软件信息)。
通过访问一个类似http://www.example.com/PHP/phpinfo.php的URL,即会得到以上信息。
解决方案是删除这个对外CGI接口,因为它主要适用于调试目的,不应放在实际工作的服务器上。