Beacon

从Cobalt strike4.0开始就只有这几种beacon,一般情况下想要得到beacon就先得创建对应的listener,之后根据创建好的listener生成木马文件,文件运行后返回对应的beacon,至于beacon到底是个什么东西可以看我的这篇文章。这里我们先讲述几种比较简单的易于理解的beacon。

附录 beacon与c2通信逻辑
1.stager的beacon会先下载完整的payload执行,stage则省略这一步
2.beacon进入睡眠状态,结束睡眠状态后用 http-get方式 发送一个metadata(具体发送细节可以在malleable_profi
e文件里的http-get模块进行自定义),metadata内容大概是目标系统的版本,当前用户等信息。
3.如果存在待执行的任务,则c2会响应这个metadata发布命令。beacon将会收到具体任务内容与一个任务id。
4.执行完毕后beacon将回显数据与任务id用post方式发送回C2(细节可以在malleable_profile文件中的http-post部分进行自定义),然后又会回到睡眠状态。

其他相关问题可以看cobalt strike中的一些小知识点的理解

不同的监听方式会生成不同的beacon,本文就对这些不同的beacon进行讲解,后面还会有文章分析各种beacon的流量有什么区别。


http beacon

创建listener

一般情况下,只需要填Http Host(Stager)与Http Host和Http port(C2)就够了,前两个值一般相同,是你自己C2的域名或者ip,第三个值是你的监听端口。
后面的Bind是绑定web服务的端口,一般在使用重定向技术的时候会用到(例如接收来自80端口的连接,但是将连接重定向到另一个端口,这个跟利用C2重定向技术隐藏teamserver)不一样。http host header是在使用域前置技术的时候可能会用到。

原理

利用http请求来进行通信来向受害主机传达命令,达到控制对方主机的目的。缺点是明文传输。


https beacon

创建listener

创建方法与http beacon完全一致,其实熟悉http与https区别的人可能更容易理解这两种不同beacon的区别。

原理

只是增加了加密传输,其余跟http完全相同。

附录
https通信原理
https是http+ssl,利用非对称密钥加密实现数据传输安全。为了同时保证通信过程的安全性与可用性,HTTPS选择了折中的方案,即使用非对称加密算法加密对称加密算法的密钥,有点绕,下列步骤即为https的认证步骤。https主要解决身份认证问题与明文传输问题。

  1. 浏览器请求HTTPS网站,同时携带浏览器支持的加密算法类型
  2. 服务器接到请求,确定加密算法;
  3. 服务器将数字证书反馈之浏览器;
  4. 浏览器认证数字证书,并生会话密钥R(对称加密),使用服务器公钥将会话密钥加密;
  5. 浏览器将密文发送至服务器;
  6. 服务器使用私钥进行解密得到会话密钥R;
  7. 服务器使用会话密钥R将网页内容反馈之浏览器;
  8. 浏览器使用会话密钥R解密,获得网页内容

tcp listener

cs4.0之后,只有正向的tcp listener了,这个技术不适用于作为第一个木马来用,反而很适合在内网穿透的时候去使用,且在内网穿透的时候一般只能使用tcp beacon去生成木马(cs生成的pivot listener上只有tcp beacon这一个选项)。

创建方法

为什么tcp与http不适合作为第一个木马来使用呢?其实原因很简单,因为他们都是明文流量,容易被发现,先以第一个比较隐蔽的木马进入目标系统后关闭一些防御措施,然后再用普通的木马上效果就比较好。


以上三种是比较易于理解的beacon。一些比较特殊的beacon例如smb,dns,external,foreign等,由于篇幅原因,我会在下面的文章中讲解,方便大家循序渐进的学习。

dns与smb beacon详解与一种内网穿透方法的实践
external c2的用途与理解
Foreign Beacon与CS跟MSF之间的会话派发与ssh端口转发
cs木马流量分析

cobalt strike各种beacon的详解(http/https/tcp)相关推荐

  1. 对tcp三次握手的详解之 理解TCP序列号(Sequence Number)和确认号(Acknowledgment Number)

    重要 !!!!!!!!!       转载自[怀揣梦想,努力前行] 对tcp三次握手的详解之 理解TCP序列号(Sequence Number)和确认号(Acknowledgment Number) ...

  2. 计算机网络知识详解之:TCP连接原理详解

    网络知识详解之:TCP连接原理详解 计算机网络相关知识体系详解 网络知识详解之:TCP连接原理详解 网络知识详解之:HTTP协议基础 网络知识详解之:HTTPS通信原理剖析(对称.非对称加密.数字签名 ...

  3. Cobalt Strike|Beacon原理浅析

    Hello大家好哇,我是你们可爱的lmn小姐姐,今天我们来研究一下Beacon的一些基础知识,如果有师傅没有看过这个系列之前的文章,可以点击下方图片阅读. Cobalt Strike 作为一种后渗透工 ...

  4. 【Wi-Fi 802.11协议】管理帧 之 Beacon帧详解

    Beacon帧简介 信标帧,由AP以一定的时间间隔周期性发出,以此来告诉外界自己无线网络的存在. Beacon帧组成 下图为Beacon帧的组成 下图为抓包所得(AP为2.4g 11n模式),Pack ...

  5. java tcp demo_详解Java使用TCP实现数据传输实例

    这篇文章主要介绍了Java使用TCP实现数据传输实例详解的相关资料,需要的朋友可以参考下 Java使用TCP实现数据传输实例详解 TCP所提供服务的主要特点: 1.面向连接的传输: 2.端到端的通信: ...

  6. SSL协议(HTTPS) 握手、工作流程详解(双向HTTPS流程)

    SSL协议的工作流程: 服务器认证阶段:1)客户端向服务器发送一个开始信息"Hello"以便开始一个新的会话连接:2)服务器根据客户的信息确定是否需要生成新的主密钥,如需要则服务器 ...

  7. HTTPS详解及HTTPS实验

    目录 HTTPS 一,https在参考模型中的位置 二,什么是HTTPS 三,什么是SSL 1,SSL 协议分为两层: 2,SSL 协议提供的服务: 四,HTTPS的加密方式 1,常见的加密算法 2, ...

  8. 传输层——详解UDP和TCP的区别

    首先我们看一下UDP和TCP的特点: UDP:无连接 .不可靠.面向数据报.没有发送缓冲区 TCP:面向连接.可靠.面向字节流.有发送缓冲区 1 无连接和面向连接 UDP:"无连接" ...

  9. MMX指令集(详解)https://blog.csdn.net/dahan_wangtao/article/details/1944153

    EMMS MMX状态置空: 将FP特征字置空(全1),使后续浮点指令可以使用浮点寄存器,其他MMX指令自动置FP为全0.本指令应在所有MMX例程结束和调用可含有FP指令的例程时使用,以清除MMX状态. ...

最新文章

  1. 微信支付curl出错及错误码解决方案
  2. linux查看python版本命令-linux 查看版本命令
  3. Springboot搭建web项目
  4. python dash_Dash是Databricks Spark后端的理想基于Python的前端
  5. 阿里二面差点败在这道题:MySQL自增主键为何不是连续的呢?
  6. java接口可以接两个吗,接口可以在Java中扩展多个接口吗?
  7. 表达式类型( 一个表达式和一棵二叉树之间,存在着自然的对应关系。写一个程序,实现 基于二叉树表示的算术表达式Expression的操作)
  8. Java的代码书写规范
  9. kubernets 集群和本地环境联调环境打通工具kt-connect
  10. 【背包问题】基于matlab遗传算法求解背包问题【含Matlab源码 578期】
  11. 微信小程序中集成有赞UI自定义Tabbar组件
  12. 用MinIO对象存储构建企业数据集中备份系统
  13. matlab 7.0 win8,Win8.1系统中matlab7.0不兼容的解决方法
  14. java 读取tsv_uniVocity-parsers:一款强大的CSV/TSV/定宽文本文件解析库(Java)
  15. ClickHouse技术分享第二弹(英文讲义)
  16. 学习笔记2 - 利用元数据管理数据质量
  17. 腾讯2018春招实习生和秋招面试问题
  18. NVMe over Fabric诞生记——RDMA篇
  19. Data2SQL数据脚本生成器
  20. python mql4跟单_MT4多功能本地跟单EA

热门文章

  1. linux 云备份恢复,Linux文件、目录及文件系统的备份与恢复相关命令
  2. spring源码分析系列(二)AOP应用
  3. tabLayout当tab数目较多,一屏无法展示时,按键有时会没有反应
  4. java女程序员工作_女生适合做java程序员吗 女java程序员好找工作
  5. 零基础入门黑客教程(普通人成为黑客的10个步骤)
  6. Vue2+Openlayer使用modify修改要素
  7. *****指令引用的*******内存。该内存不能为“written”的解决方法
  8. 扇贝python课程怎么样知乎_扇贝真好用
  9. 日志易之Agent统一IP地址开通多个端口
  10. 【日记本砸】21.04.01-15 上生活的贼船,做快乐的海盗