当前位置:WooYun >> 漏洞信息

漏洞概要 关注数(24) 关注此漏洞

缺陷编号:wooyun-2012-07292

漏洞标题:RulingSite-S系统导致中国台湾众多大学数据库任意进入

相关厂商:RulingSite-S

漏洞作者: possible

提交时间:2012-05-18 22:39

修复时间:2012-07-02 22:39

公开时间:2012-07-02 22:39

漏洞类型:任意文件遍历/下载

危害等级:低

自评Rank:5

漏洞状态:未联系到厂商或者厂商积极忽略

漏洞来源: http://www.wooyun.org,如有疑问或需要帮助请联系 [email protected]

Tags标签:

4人收藏 收藏
分享漏洞:


漏洞详情

披露状态:

2012-05-18: 积极联系厂商并且等待厂商认领中,细节不对外公开
2012-07-02: 厂商已经主动忽略漏洞,细节向公众公开

简要描述:

中国台湾近百所大学(从搜索到的域名取重,统计不一定准确)所使用的RulingSite-S系统,存在任意文件下载漏洞,导致源代码泄露,含有数据库用户名和密码的配置文件泄露,phpMyAdmin路径泄露等,导致数据库随便看...

详细说明:

没有什么技术含量,非常简单的任意文件下载漏洞,源文件解码后如下所示:(感谢在http://zone.wooyun.org/content/239这里给予回复的每位同学)
<?php
include( "init.inc.php" );
get_referer( false );
if ( empty( $_GET['filename'] ) || empty( $_GET['title'] ) || empty( $_GET['dir'] ) )
{
error_display( t_( "缺少檔案下載參數" ) );
}
$file_name = $_GET['filename'];
$file_download = uploadpath( )."/".$_GET['dir']."/".$file_name;
$file_extension = get_file_extension( $file_name );
if ( strpos( $_SERVER['HTTP_USER_AGENT'], "MSIE" ) )
{
$file_save = utf8tobig5( $_GET['title'] ).".".$file_extension;
}
else
{
$file_save = $_GET['title'].".".$file_extension;
}
$file_save = ereg_replace( "[\\/:*?\"<>|]", "_", $file_save );
if ( $file_extension == "php" )
{
exit( "<strong>Cannot be used for ".$file_extension." files!</strong>" );
}
$mimeType = get_file_mimetype( $file_name );
if ( strpos( $_SERVER['HTTP_USER_AGENT'], "MSIE 5" ) || strpos( $_SERVER['HTTP_USER_AGENT'], "Opera 7" ) )
{
$mimeType = "application/x-download";
}
ob_end_clean( );
header( "Pragma: public" );
header( "Expires: 0" );
header( "Cache-Control: must-revalidate, post-check=0, pre-check=0" );
header( "Cache-Control: public" );
header( "Content-Description: File Transfer" );
header( "Content-Type: ".$mimeType );
header( "Content-Disposition: attachment; filename=".$file_save );
header( "Content-Transfer-Encoding: binary" );
header( "Content-Length: ".filesize( $file_download ) );
@readfile( @$file_download );
?>
黑名单防止下载php文件简单绕过,即可下载任意文件,百度一下发现很多学校,使用python简单整理一下百度搜索结果,去重,大约有100多个域名,继续用python,下载每个域名的配置文件:


继续python提取配置文件中数据库用户名和密码:


简单看一下有些是root账号:


就写到这吧

漏洞证明:

证明 就不证明了,没有rank...
接着上面在写点:
有了数据库可以进入后台,找到上传点,直接上传php,拿shell,很常规的思路,真的“成功”了。php上传上去了,直接访问发现不行,最开始以为上传路径没有执行权限,后来看了看才知道,上传文件被处理了,而且确实上传后文件变成了644,不能执行...
本想找个通用方法,看来行不通了,不知道有没有文件包含?不知道的还很多,如果被管理通过了,有哪位大神无聊,帮小弟完成通杀吧...
只知道用root导出获得shell,没有找到通杀...

修复方案:

就不写了,大家都懂,最主要的是没有厂商看,真的期望有一天cnvd有权管,期待省略1w字(不谈政治)

版权声明:转载请注明来源 possible@乌云


漏洞回应

厂商回应:

未能联系到厂商或者厂商积极拒绝

漏洞Rank:6 (WooYun评价)