PHP彩蛋还是漏洞?expose_php彩蛋的触发和屏蔽方法

最近在折腾网站 XSS 漏洞修复的时候,当我把 XSS 漏洞和谐成功之后,360 扫描送来了一个"彩蛋":

本以为又是 360 误报,结果点击看了下,还真能打开 PHPinfo:

PHP 彩蛋我也是第一次听说,貌似老一辈的程序员们都知道,因为 PHP 是由黑客语言发展而来,所以各方面都透露着放荡不羁的极客精神!

一、如何触发 PHP 彩蛋?

我们只要在运行 PHP 的服务器上,在域名后面输入下面的字符参数,就能返回一些意想不到的信息。当然有些服务器是把菜单屏蔽了的。彩蛋只有这 4 个,PHP 是开放源代码的,所以不必担心还有其他。

?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000 (PHP信息列表)
?=PHPE9568F34-D428-11d2-A769-00AA001ACF42 (PHP的LOGO)
?=PHPE9568F35-D428-11d2-A769-00AA001ACF42 (Zend LOGO)
?=PHPE9568F36-D428-11d2-A769-00AA001ACF42 (PHP LOGO 蓝色大象)

我 2 个网站目前都已屏蔽了 PHP 彩蛋,所以我们一起来看下腾讯的招聘网站:

原网站是这样的 点击跳转

加上“彩蛋之后”是这样:

1). PHP 信息列表 点击跳转

2). PHP 的 LOGO 点击跳转

3). Zend LOGO 点击跳转

4). PHP LOGO 蓝色大象  点击跳转

二、如何看待 PHP 彩蛋?

如果你在自己的博客上也发现了这个问题,请不要惊慌,也莫要想着必须马上去解决他。其实这不算是漏洞。只是开源团队开的一个玩笑,全世界都认可的玩笑。没必要上纲上线,将它列为 PHP 的漏洞,连 360 都戏称为[彩蛋漏洞]。

三、如何屏蔽 PHP 彩蛋?

方法①、我们可以通过 apache 或者 nginx 的伪静态规则去屏蔽,比如 apache 的服务器,我们可以在 .htaccess 里面加入以下 2 条规则即可拦截此类访问:

RewriteCond %{QUERY_STRING} \=PHP[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12} [NC]
RewriteRule .* - [F]

方法②、 直接编辑 PHP 的配置文件 php.ini,找到 expose_php,将值改为 Off,然后重启或重载 PHP 服务即可:

#修改php.ini,找到expose_php并将其值改为Off
expose_php = Off
 
#修改并保存之后,执行如下命令重载php
service php-fpm reload

我是懒得去想 nginx 规则该如何写了,直接修改 php.ini 来屏蔽的。屏蔽后,再去触发彩蛋发现已经无效了。再用 360 检测已经没有任何问题了:

如果你也发现你的网站有这个问题,也不必太在意。当然,强迫症还是去折腾修复下,免得坐立不安,哈哈!

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏HTML5学堂

HTML5-类库系列 补讲AJAX

HTML5学堂:AJAX主要是两个兼容问题,其一是AJAX请求的创建,其二是加载状态的检测。本文主要讲解AJAX兼容的方法的搭建。 AJAX请求的创建 大部分使...

29450
来自专栏晨星先生的自留地

实战系列之你真的会mysql注入么?

22850
来自专栏菩提树下的杨过

Silverlight调用本机exe程序

要点: 1. Silverlight必须启用OOB模式,以及 Require elevated trust when running in-browser.参考...

20980
来自专栏小白课代表

Autodesk Revit 2019安装教程

Revit是Autodesk公司一套系列软件的名称。Revit系列软件是专为建筑信息模型(BIM)构建的,可帮助建筑设计师设计、建造和维护质量更好、能效更高的建...

25730
来自专栏FreeBuf

后渗透工具Koadic:你真的了解我吗?

前言: 在朋友的博客上看到推荐的一款工具Koadic,我接触了以后发现很不错这款工具的强大之处我觉得就是拿到shell后的各种模块功能,我就自己写出来发给大家看...

25650
来自专栏信安之路

RedTeam 技巧集合

1、利用目标用户使用的 user agent 来隐藏自身的恶意流量,比如像 Outlook 软件的 UA。

16820
来自专栏Eugene's Blog

黑客常用的扫描器盒子分类目录文章标签友情链接联系我们

35290
来自专栏Web 开发

利用H5的EventSource,小试服务器推送(SSE)

H5在最后定稿的时候,出现了一个新的JS API:EventSource(也许是我之前一直没关注吧)。

20800
来自专栏小白课代表

Autodesk Revit 2018安装教程

Revit是Autodesk公司一套系列软件的名称。Revit系列软件是专为建筑信息模型(BIM)构建的,可帮助建筑设计师设计、建造和维护质量更好、能效更高的建...

13620
来自专栏皮振伟的专栏

[linux][memory]balloon技术分析

前言: 我大天朝人觉得什么东西含量不够,叫做有“水份”。内存的含量不足,叫“balloon”。作者是外语专业毕业的,感觉不同国度的人虽然语言不同,但是表达出来的...

57680

扫码关注云+社区

领取腾讯云代金券