如何使用“PHP” 彩蛋进行敏感信息获取


Posted in PHP onAugust 07, 2013

关于“PHP彩蛋”的说法也许很多老PHPer已经都知道或听说了,好像是早在PHP4版本的时候就有彩蛋了,挺好玩儿的,可能近年来逐渐被人们遗忘了,其实彩蛋功能在PHP脚本引擎默认情况下是开启。

写个phpinfo();然后访问,再加上以下的GET值即可查阅
下面就用Discuz官方论坛做一下测试:
http://www.discuz.net/?=PHPE9568F34-D428-11d2-A769-00AA001ACF42
http://www.discuz.net/?=PHPE9568F35-D428-11d2-A769-00AA001ACF42
http://www.discuz.net/?=PHPE9568F36-D428-11d2-A769-00AA001ACF42
http://www.discuz.net/?=PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000
如上4个链接加红色的部分是PHP源码/ext/standard/info.h中定义的GUID值,如下图所示
   如何使用“PHP” 彩蛋进行敏感信息获取

关于PHP彩蛋这个玩法已经被国外的某些Web漏洞扫描器(例如:HP WebInspect)所使用了,用其来探测被扫描的网站使用的是何种Web开发语言。其实在渗透测试过程中经常遇见某些网站难以辨别出使用了何种Web开发语言,因为有些网站采用动态脚本生成纯静态HTML页或者是采用URL重写实现伪静态页面,如果网站使用的是PHP开发的话,可以尝试使用彩蛋的探测法,在很多情况下可以一针见血的鉴定出来,因为默认情况下彩蛋的功能在php.ini中是开启的,当然如果不想让别人通过彩蛋的方式来获取网站的敏感信息的话,那就在php.ini中将expose_php = Off即可!

看完上面这些可能有些人会说既然php.ini中的expose_php = On,那么直接抓包看看http头信息不就OK了,可是某些大站点Web服务器的前面都是有反向代理服务器的,所以还不能完全依赖于捕获http头中的信息。

PHP 相关文章推荐
APACHE的AcceptPathInfo指令使用介绍
Jan 18 PHP
浅析php变量修饰符static的使用
Jun 28 PHP
php设计模式之单例模式使用示例
Jan 20 PHP
一个经典的PHP验证码类分享
Nov 18 PHP
在Nginx上部署ThinkPHP项目教程
Feb 02 PHP
php自动识别文字编码并转换为目标编码的方法
Aug 08 PHP
php批量删除超链接的实现方法
Oct 19 PHP
PHP中功能强大却很少使用的函数实例小结
Nov 10 PHP
Yii框架用户登录session丢失问题解决方法
Jan 07 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
Sep 17 PHP
PHP合并两个或多个数组的方法
Jan 20 PHP
php输出控制函数和输出函数生成静态页面
Jun 27 PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
Aug 07 #PHP
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
Aug 06 #PHP
一个漂亮的php验证码类(分享)
Aug 06 #PHP
如何在php中正确的使用json
Aug 06 #PHP
PHP 线程安全与非线程安全版本的区别深入解析
Aug 06 #PHP
浅析php中三个等号(===)和两个等号(==)的区别
Aug 06 #PHP
解析php中如何调用用户自定义函数
Aug 06 #PHP
You might like
PHP开发不能违背的安全规则 过滤用户输入
2011/05/01 PHP
php生成数字字母的验证码图片
2015/07/14 PHP
Smarty简单生成表单元素的方法示例
2016/05/23 PHP
PHP全功能无变形图片裁剪操作类与用法示例
2017/01/10 PHP
让回调函数 showResponse 也带上参数的代码
2007/08/13 Javascript
js固定DIV高度,超出部分自动添加滚动条的简单方法
2013/07/10 Javascript
多种方法判断Javascript对象是否存在
2013/09/22 Javascript
深入理解JavaScript系列(19):求值策略(Evaluation strategy)详解
2015/03/05 Javascript
jQuery复制表单元素附源码分享效果演示
2015/09/30 Javascript
将JavaScript的jQuery库中表单转化为JSON对象的方法
2015/11/17 Javascript
js实现页面跳转的五种方法推荐
2016/03/10 Javascript
jquery获取所有选中的checkbox实现代码
2016/05/26 Javascript
jQuery判断是否存在滚动条的简单方法
2016/09/17 Javascript
AngularJS使用带属性值的ng-app指令实现自定义模块自动加载的方法
2017/01/04 Javascript
javascript基本常用排序算法解析
2017/09/27 Javascript
将jquery.qqFace.js表情转换成微信的字符码
2017/12/01 jQuery
Vue2 模板template的四种写法总结
2018/02/23 Javascript
vue  elementUI 表单嵌套验证的实例代码
2019/11/06 Javascript
vue 判断元素内容是否超过宽度的方式
2020/07/29 Javascript
Python基于socket实现简单的即时通讯功能示例
2018/01/16 Python
python写入已存在的excel数据实例
2018/05/03 Python
python中int与str互转方法
2018/07/02 Python
将pandas.dataframe的数据写入到文件中的方法
2018/12/07 Python
python导入pandas具体步骤方法
2019/06/23 Python
Python-接口开发入门解析
2019/08/01 Python
pytorch 更改预训练模型网络结构的方法
2019/08/19 Python
详解Python3中的 input() 函数
2020/03/18 Python
django配置app中的静态文件步骤
2020/03/27 Python
Python如何读取、写入CSV数据
2020/07/28 Python
什么是方法的重载
2013/06/24 面试题
幼儿师范毕业生自荐信
2013/11/09 职场文书
创业女性典型材料
2014/05/02 职场文书
法人授权委托书范本
2014/09/17 职场文书
征求意见函
2015/06/05 职场文书
2015年大学迎新工作总结
2015/07/16 职场文书
python内置进制转换函数的操作
2021/06/02 Python