C2工具 - Trevorc2流量特征检测分析

工具介绍

项目地址

https://github.com/trustedsec/trevorc2

说明

TrevorC2是一个创新的客户端-服务器模型,巧妙地将命令与控制系统隐藏于正常可浏览的网站之下,大大增加了检测的难度。

流量&逻辑分析

环境&测试准备

环境配置

控制端 Kali 192.168.2.139

被控端 Win10 192.168.2.145

测试方式

  1. Kali运行以下命令启动服务端

python3 trevorc2_server.py

注意需要修改一下clone的网站配置,默认的google国内环境无法直接访问

  1. Windows上运行trevorc2_client.py,需要配置一下site_url指向服务端

  1. 成功上线

检测特征

Server逻辑分析

就一个文件trevorc2_server.py,其中的注释和相关代码都和清楚明了,入口位置为#465的main函数,主要相关的方法和说明如下

if __name__ == "__main__":
    ...
    #  利用所给的UA保存访问url返回的内容到clone_site/index.html
    clone_site(USER_AGENT, URL)
    ...
    # 运行C2主程序,后面分析
    threading.Thread(target=main_c2).start()
    ...
    # prompt使用
    commandline = TrevorPrompt()

主要功能代码在main_c2方法中,包括请求处理、SSL支持等,主要代码如下

def main_c2():
    ...
    """Start C2 Server."""
    # ROOT_PATH_QUERY请求交给RPQ处理,SITE_PATH_QUERY请求交给SPQ处理
    application = tornado.web.Application([
        # RPQ处理/访问情况,通过判断Cookie中是否存在COOKIE_SESSIONID_STRING字段,存在则发送处理之后的对应id的内容
        (ROOT_PATH_QUERY, RPQ),
        # SPQ用于处理针对预定通讯路径的处理
        (SITE_PATH_QUERY, SPQ),
        # UnknownPageHandler没满足以上的路径就设置特定的响应,返回特定内容
        (r'/.*', UnknownPageHandler)  # Make this the last line, if not matched, will hit this rule.
    ])

SPQ主要处理方法如下

对解密的数据做判断,如果内容包含magic_hostname,也就是初始的注册阶段,那么设置指定nothing,否则按照::::进去分块并将数据保存在clone_site/received_xxx文件

其中AES解密的做法如下:

server中还有一处逻辑为TrevorPrompt,其实就是服务端和控制台的数据交互,其中主要方法为do_interact

Client逻辑分析

Client类型有好多种,实现语言不同但是功能都是一样的,这里以py脚本为例,入口为#120#connect_trevor

请求响应特征

请求响应特征由于配置易修改,这里只检测默认配置的情况

请求:

  1. uri以images开始,后面的参数有guid,并且guid为base64编码形式
  2. 可能携带Cookie: sessionid=[a-zA-Z]{15} 初始请求没有
  3. UA为Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko 可修改

响应:

  1. 可能携带Cookie字段Set-Cookie: sessionid=[a-zA-Z]{15}
  2. 命令特征的响应内容中携带以下格式数据
  3. 命令获取的响应特征为server为IIS,并且响应体内容为空
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值