观成科技:加密C2框架Vshell流量分析

一、工具介绍

Vshell是一款功能全面的红队工具,其设计兼顾隐蔽性与灵活性,尤其适合模拟网络攻击和测试防御体系。该工具支持TCP、UDP、KCP、WebSocket、DNS、DOH、DOT等多种协议。内置隧道代理功能,支持正向和反向连接模式,可以适应复杂网络环境。其核心功能包括文件管理、正/反连接上线、插件运行、隧道代理等。多协议的支持及通信加密等功能大大增加了检测难度。

二、通信流程分析

图1 工具原理图

  1. 运行服务端程序后,默认通过8082端口启动Web管理后台,用户可以通过浏览器访问http://IP:8082进入控制面板,conf/setting.conf配置文件中可修改Web端口及其他核心参数。
  2. 在web界面中可以开启监听器,监听器支持多种协议其中包括TCP、KCP/UDP、WebSocket、DNS、DOH、DOT和OSS。默认监听端口为8084,可通过Web界面或配置文件修改为非常用端口。
  3. 运行客户端程序后,受害者会主动连接到监听地址并传输客户端信息,如IP、用户名、主机名系统类型等。
  4. 默认客户端每10秒发送心跳包,包含客户端ID、系统指纹等。服务端与客户端内置相同VKey,用于双向认证。并配置盐值对流量进行加密。
  5. 服务端下发命令,客户端接收到后将执行结果加密后返回给服务端。本文使用TCP和WebSocket协议监听器进行分析,通过分析通信流量特征对恶意流量进行检测。
  • Vshell TCP协议流量分析

图2 Vshell TCP监听配置

客户端通过TCP协议与监听器建立连接后,首先完成标准三次握手,随后立即发送一个6字节的数据:l64或w64用于标识客户端系统架构是linux64位或者windows64位。紧接着,客户端会发送一个34字节的服务端IP声明包,声明最多15个字节位为IP地址(如:0x3139322E3136382E3139392E313334对应的ip是192.168.199.134),其余字节为保留位。完成基础校验后,客户端加密传输系统信息,包括IP、用户名、主机名、操作系统类型及权限等级。

图3 左tcp协议 windows上线流量,右linux上线流量

经过分析Vshell C2工具命令执行的TCP流量有以下几个特征:每个数据包均以4字节长度字段开头(比如"23 00 00 00"则表示后续35字节载荷),载荷内容为加密数据,无明显特征;流量中的短包与长包交替出现,短包用于心跳维持,长包用于指令分发或数据回传,传输内容均为加密数据,无明显的明文特征。

图4 心跳包

图5 流量分析

  • Vshell WebSocket协议流量分析

如果C2工具选择通过WebSocket协议进行通信,攻击流量中会有明文特征:受害者与C2服务器完成TCP三次握手后,立即发起了一个高度可疑的HTTP GET请求,其路径为/?a=l64&h=serverip&t=ws_&p=8088,包含多个动态配置参数:

  1. a=l64 指示目标系统架构为Linux 64位(l64);
  2. h=serverip 显式暴露了C2服务器的IP或域名;
  3. t=ws_ 标明通信类型为WebSocket协议;
  4. p=8088 标识了服务端配置的自定义监听端口;

图6 WebSocket监听配置

图7 WebSocket协议上线流量

三、工具检测

根据流量特征的分析结果,我们采用了特征匹配、行为规则等检测方式,实现了的Vshell C2工具Websocket协议与TCP协议通信的有效检测。

图8 Vshell 检出结果

四、总结

利用 Vshell C2工具进行 C&C通信,攻击者可以将通信内容加密从而规避传统明文流量分析设备的检测,但是加密威胁智能检测系统能够针对性的检测加密通信行为,我们会持续分析研究Vshell多种通信协议,对该工具的各种加密流量检测做到全面覆盖。如今,越来越多的攻击者采用加密通信的 C2工具,以提升攻击的隐蔽性。观成科技安全研究团队持续追踪这些 C2工具的最新动态,积极研究和更新针对加密流量的检测技术。

相关推荐
加勒比之杰克11 小时前
【操作系统原理】进程间通信之管道
网络·管道·ipc
zore_c11 小时前
【数据结构】队列——超详解!!!(包含队列的实现)
c语言·网络·数据结构·c++·笔记·算法·链表
可爱又迷人的反派角色“yang”13 小时前
ansible剧本编写(三)
linux·网络·云计算·ansible
m0_7381207213 小时前
应急响应——知攻善防Web-3靶机详细教程
服务器·前端·网络·安全·web安全·php
橘子真甜~19 小时前
C/C++ Linux网络编程15 - 网络层IP协议
linux·网络·c++·网络协议·tcp/ip·计算机网络·网络层
Allen正心正念202520 小时前
网络编程与通讯协议综合解析
网络
Percent_bigdata20 小时前
百分点科技出席北京市工商联“民营企业出海沙龙” 分享海外政务实践
科技·政务
bing_feilong20 小时前
ubuntu中的WIFI与自身热点切换
网络
CodeByV20 小时前
【网络】UDP 协议深度解析:从五元组标识到缓冲区
网络·网络协议·udp
虹科网络安全21 小时前
艾体宝洞察 | 利用“隐形字符”的钓鱼邮件:传统防御为何失效,AI安全意识培训如何补上最后一道防线
运维·网络·安全