Cobalt Strike 4.0 学习笔记-基础(一)

枫少@KillBoy
枫少@KillBoy
管理员
219
文章
0
粉丝
资源分享387,379字数 2134阅读7分6秒阅读模式
AI智能摘要
想快速上手黑客红队必备利器Cobalt Strike?这篇实战笔记彻底打破新手壁垒!作者以亲测经验揭秘4.0版本核心架构:从分布式服务器联动策略到监听器精准配置,手把手教你搭建钓鱼/后渗透环境;中文界面解析+20+高频Beacon命令速查表,覆盖木马生成、权限提升、横向移动全流程。零基础也能30分钟掌握渗透测试关键链路,立即解锁安全攻防实战能力——你的渗透技术进阶第一步,就从这里开始!
— AI 生成的文章内容摘要

Cobalt Strike 4.0学习笔记-基础(一)

一、前言

记录自己的学习,分享给更多人的,是让自己印象加深的最好方式。

哈哈,菜鸟一枚,希望大家多多指教

二、基础概念

1、什么是Cobalt Strike ?

Cobalt Strike是一个为对手模拟和红队设计的平台主要是侧重于后渗透。

后渗透即为完成想要在目标网络中达到的目的的一个攻击步骤。

注:PTES(渗透测试执行标准),这个标准大家可以参考一下,标准的渗透测试执行标准

PTES 对于后渗透的标准是:确定受损机器的价值,并保持对机器的控制以备后

2、分布式和团队行动

Cobalt Strike 4.0  学习笔记-基础(一)-图片1

这是cs一个亮点,它可构造多个服务器联动行动,

2.1、一个服务器连接团队:

  • 使用相同的会话
  • 分享主机、捕获的数据和下载的文件
  • 通过一个共享的事件日志交流
    2.2、客户端连接多个服务端:

进行分工合作,通过Cobalt Strike →新建连(New Connection),当连接到多个团队服务器,一个切条会出现在窗口底部

Cobalt Strike 4.0  学习笔记-基础(一)-图片2
Cobalt Strike 4.0  学习笔记-基础(一)-图片2

团队服务器分工合作:

  • 架构多台服务器列如:钓鱼服务器,侦查服务器,后渗透服务器,攻击服务器,长控服务器
  • 分解整个攻击链,避免单点失败,方便服务器之间的权限传递

3、基本功能介绍

3.1、文件目录

Cobalt Strike 4.0  学习笔记-基础(一)-图片3

agscript    拓展应用的脚本` c2lint     用于检查 profile 的错误异常 teamserver    服务端程序 cobaltstrike,cobaltstrike.jar  客户端程序 (java 跨平台)` logs     目录记录与目标主机的相关信息` update,update.jar  用于更新 CS` third-party   第三方工具` 

3.2、服务端

  • 启动./teamserver [/path/to/c2.profile] [YYYY-MM-DD]
    • 必需,团队服务器IP
    • 必需,连接服务器的密码(建议强密码,容易被爆破)
    • <path/to/c2.profile >可选参数 指定C2通信配置文件
    • 可选参数 所有payload的终止时间

3.3、客户端

  • 双击启动
    • 服务器IP
    • 默认端口50050 (可在teamserver 文件中修改端口,建议修改)
    • 连接的客户端名字
    • 团队服务器配置的密码

Cobalt Strike 4.0  学习笔记-基础(一)-图片4

注:第一次连接至此团队服务器, Cobalt Strike 会询问你是否承认这个团队服务器的 SHA256 hash,点击ok就行。

3.4、界面功能介绍

本人英语不才,整了一个中文版,哈哈!来个中英文互相介绍。

3.4.1、首页

Cobalt Strike 4.0  学习笔记-基础(一)-图片5

3.4.2、Cobalt Strike模块

Cobalt Strike 4.0  学习笔记-基础(一)-图片6

New Connection  新的连接(支持连接多个服务器端) Preferences  偏好设置(设置Cobal Strike界面、控制台、以及输出报告样,TeamServer连接记录等) Visualization  可视化(展示输出结果的形式) xxx Interfaces  xxx接口 Listenrs  监听器(创建Listener) Script Manager  脚本管理 Close   关闭 
3.4.3 、视图(view)模块

Cobalt Strike 4.0  学习笔记-基础(一)-图片7

Applications  应用(显示受害者机器的应用信息) Credentials  凭证(通过hashdump或Mimikatz抓取过的密码都会储存在这里) Downloads   文件下载 Event Log  日志(主机上线记录以及团队协作聊天记录) Keystrokes   键盘记录 Proxy Pivots  代理信息 Screenshots  屏幕截图 Script Console  脚本控制台 Targets   显示目标主机 Web Log   Web日志 
3.4.4 、攻击(Attacks)

Cobalt Strike 4.0  学习笔记-基础(一)-图片8

生成后门(Packages) HTML Application    生成恶意的HTA木马文件 MS Office Macro    生成office宏病毒文件 Payload Generator    生成各种语言版本的payload USB/CD AutoPlay    生成利用自动播放运行的木马文件 Windows Dropper    捆绑器,能够对文档类进行捆绑 Windows Executable    生成可执Payload Windows Executable(S) 把包含payload,Stageless生成可执行文件(包含多数功能)  钓鱼攻击(WEB Drive-by) Scripted Web Delivery  提供Web服务,便于下载和执行PowerShell Payload. Signed Applet Attack  启动一个Web服务以提供自签名Java Applet的运行环境 Smart Applet Attack  自动检测Java版本并利用已知的exploits绕过security System Profiler   用来获取一些系统信息  邮件钓鱼 (Spear Phish) 这个模块得实战出真理哈哈! 

另外两个模块就不介绍了,看看图吧

Cobalt Strike 4.0  学习笔记-基础(一)-图片9Cobalt Strike 4.0  学习笔记-基础(一)-图片9

4、会话界面

Cobalt Strike 有多种可视化展示 ,可通过,工具栏进行切换。

  • 目标栏:展示了每个目标的ip地址,最左侧表示了它的操作系统,带有红色闪电的表示此目标有一个通信的会话

Cobalt Strike 4.0  学习笔记-基础(一)-图片10

  • 会话表:显示了那些Beacon回到了这台CS在这里,你将看到每个 Beacon 的外网 IP 地址、内网 IP 地址、该 Beacon 的出口监听器、此 Beacon 最后一次回连的时间,以及其他信息

注释:Beacon 是 Cobalt Strike 用于模拟高级威胁者的 payload

Cobalt Strike 4.0  学习笔记-基础(一)-图片11

  • Pivot 图:每一个 Beacon 会话都有一个对应的图,防火墙图标代表你 Beacon payload 的流量出口点。绿色虚线表示使用了HTTPHTTPS连接出网。黄色虚线表示使用DNS协议出网

Cobalt Strike 4.0  学习笔记-基础(一)-图片12

5、控制台

它是与Beacon会话、脚本等交互,也可以通过控制台与其他队友进行交流。

  • tab键可以补全命令

Cobalt Strike 4.0  学习笔记-基础(一)-图片13

具体命令参数见下

beacon> help argue                     进程参数欺骗 blockdlls                 阻止子进程加载非Microsoft DLL browserpivot              注入受害者浏览器进程 bypassuac                 绕过UAC提升权限 cancel                    取消正在进行的下载 cd                        切换目录 checkin                   强制让被控端回连一次 clear                     清除beacon内部的任务队列 connect                   Connect to a Beacon peer over TCP covertxxx                 部署Covert xxx客户端 cp                        复制文件 dcsync                    从DC中提取密码哈希 desktop                   远程桌面(VNC) dllinject                 反射DLL注入进程 dllload                   使用LoadLibrary将DLL加载到进程中 download                  下载文件 downloads                 列出正在进行的文件下载 drives                    列出目标盘符 elevate                   使用exp execute                   在目标上执行程序(无输出) execute-assembly          在目标上内存中执行本地.NET程序 exit                      终止beacon会话 getprivs                  Enable system privileges on current token getsystem                 尝试获取SYSTEM权限 getuid                    获取用户ID hashdump                  转储密码哈希值 help                      帮助 inject                    在注入进程生成会话 jobkill                   结束一个后台任务 jobs                      列出后台任务 kerberos_ccache_use       从ccache文件中导入票据应用于此会话 kerberos_ticket_purge     清除当前会话的票据 kerberos_ticket_use       Apply 从ticket文件中导入票据应用于此会话 keylogger                 键盘记录 kill                      结束进程 link                      Connect to a Beacon peer over a named pipe logonpasswords            使用mimikatz转储凭据和哈希值 ls                        列出文件 make_token                创建令牌以传递凭据 mimikatz                  运行mimikatz mkdir                     创建一个目录 mode dns                  使用DNS A作为通信通道(仅限DNS beacon) mode dns-txt              使用DNS TXT作为通信通道(仅限D beacon) mode dns6                 使用DNS AAAA作为通信通道(仅限DNS beacon) mode http                 使用HTTP作为通信通道 mv                        移动文件 net                       net命令 note                      备注 portscan                  进行端口扫描 powerpick                 通过Unmanaged PowerShell执行命令 powershell                通过powershell.exe执行命令 powershell-import         导入powershell脚本 ppid                      Set parent PID for spawned post-ex jobs ps                        显示进程列表 psexec                    Use a service to spawn a session on a host psexec_psh                Use PowerShell to spawn a session on a host psinject                  在特定进程中执行PowerShell命令 pth                       使用Mimikatz进行传递哈希 pwd                       当前目录位置 reg                       Query the registry rev2self                  恢复原始令牌 rm                        删除文件或文件夹 rportfwd                  端口转发 run                       在目标上执行程序(返回输出) runas                     以其他用户权限执行程序 runasadmin                在高权限下执行程序 runu                      Execute a program under another PID screenshot                屏幕截图 setenv                    设置环境变量 shell                     执行cmd命令 shinject                  将shellcode注入进程 shspawn                   启动一个进程并将shellcode注入其中 sleep                     设置睡眠延迟时间 socks                     启动SOCKS4代理 socks stop                停止SOCKS4 spawn                     Spawn a session  spawnas                   Spawn a session as another user spawnto                   Set executable to spawn processes into spawnu                    Spawn a session under another PID ssh                       使用ssh连接远程主机 ssh-key                   使用密钥连接远程主机 steal_token               从进程中窃取令牌 timestomp                 将一个文件的时间戳应用到另一个文件 unlink                    Disconnect from parent Beacon upload                    上传文件 wdigest                   使用mimikatz转储明文凭据 winrm                     使用WinRM横向渗透 wmi                       使用WMI横向渗透 

基础的学习就先到这,如果有不足欢迎大家评论指出,本人小菜菜。

以上使用的技术仅用于学习交流目的。

参考连接:[Cobalt Strike mannual 4.0],Cobalt Strike 官网
https://blog.csdn.net/qq_34801745/article/details/109391166

本文作者:, 转载请注明来自FreeBuf.COM

https://www.freebuf.com/sectool/270208.html

 
枫少@KillBoy
评论  38  访客  37  作者  1
    • 外滩钟声
      外滩钟声 1

      挺实用的,配合团队挺顺的👍

        • 寒月仙子
          寒月仙子 0

          @ 外滩钟声 配合团队挺顺的,不过人多容易乱,得定好操作规范。

        • 社恐小蜜蜂
          社恐小蜜蜂 0

          文里团队服务器的分工思路清晰,实际部署也不算难。

          • ZeroDay
            ZeroDay 0

            建议把c2.profile里的默认监听端口改成60000,能避开常见检测。

            • 墨青衫
              墨青衫 0

              Beacon在linux上能跑吗?

              • 虚拟现实导游
                虚拟现实导游 1

                其实这套工具对新手门槛不低,别说轻松上手。

                  • 爱吃火锅的兔
                    爱吃火锅的兔 0

                    @ 虚拟现实导游 门槛高是真的,我照着弄三天才上线第一个Beacon,别信“轻松上手”这种话。

                    • 吃货
                      吃货 0

                      @ 虚拟现实导游 确实不太友好,刚装的时候也踩了不少坑

                    • 苍穹之声
                      苍穹之声 0

                      前几天刚装好CS4.0,花了整整一天才弄明白teamserver的参数设置。

                      • 会说话的皮卡丘
                        会说话的皮卡丘 0

                        文中截图太小,看不清按钮位置。

                          • 龙纹小篆
                            龙纹小篆 1

                            @ 会说话的皮卡丘 我也遇到同样的问题,建议放大截图或截取关键区域,方便大家对照。

                          • 梦回夜
                            梦回夜 0

                            有人把payload塞进Office宏,结果被防病毒拦住,真是大跌眼镜。

                              • 未来图腾
                                未来图腾 0

                                @ 梦回夜 我试过把宏藏在文档里,结果被AV拦住,后来改用加密payload才成功。

                              • CosmosFury
                                CosmosFury 0

                                最近论坛有人炫耀用Cobalt Strike绕过UAC,结果日志全记录,被蓝队秒杀,教训深刻。

                                  • 爱睡觉的哈密瓜
                                    爱睡觉的哈密瓜 0

                                    @ CosmosFury 绕UAC不等于不被发现,日志审计太敏感,最好配合清理痕迹

                                  • 独夜人
                                    独夜人 0

                                    整体结构挺完整。

                                      • 梦境低语
                                        梦境低语 0

                                        @ 独夜人 确实,模块划分清晰,后期扩展也挺方便的👍。

                                        • TacoSaurus
                                          TacoSaurus 0

                                          @ 独夜人 结构是完整,但有些命令参数没写全,比如sleep和jitter怎么配?

                                        • 星际浪人
                                          星际浪人 0

                                          新手刚搭完环境,teamserver老连不上,密码输对了也不行,有人遇到过吗?

                                          • 夜影迷离
                                            夜影迷离 1

                                            这个分工架构确实能防止单点崩盘,实战中用钓鱼+后渗透分离效果不错。

                                            • 河伯清波
                                              河伯清波 0

                                              说真的,光看文档根本搞不懂Beacon的通信机制,还是得动手试。

                                                • WobbleWizard
                                                  WobbleWizard 0

                                                  @ 河伯清波 动手实验才是王道,我也是边敲边学,才慢慢理清流程 👍

                                                • 竹叶青幽
                                                  竹叶青幽 0

                                                  文中提到的Stageless payload生成在哪找选项?没看到啊🤔

                                                  • 旅人歌
                                                    旅人歌 0

                                                    前几天刚搞完这个,确实折腾了好久,特别是c2.profile配置那块。

                                                    • 搞笑小分队
                                                      搞笑小分队 1

                                                      payload被杀软秒杀太常见了,现在不加壳基本没法用。

                                                      • 夜兰
                                                        夜兰 0

                                                        要是回调服务器被封了咋办?有备用通道方案不?

                                                        • 熊猫奶
                                                          熊猫奶 0

                                                          感觉还行,至少比网上那些零散教程系统点。

                                                          • 星光碎片
                                                            星光碎片 0

                                                            linux上跑不了Beacon吧,这玩意不是Windows专用的吗?

                                                            • 饭桶
                                                              饭桶 0

                                                              默认50050端口早被盯死了,建议直接改掉,别偷懒。

                                                              • 银月之舞
                                                                银月之舞 1

                                                                命令列表挺全的,日常用得上

                                                                • 清风拂过
                                                                  清风拂过 1

                                                                  @元宝 这玩意儿真能搞那么复杂?

                                                                    • yuanbao
                                                                      yuanbao 3

                                                                      @ 清风拂过 Cobalt Strike功能确实很丰富,分布式团队协作和多种攻击模块让它能应对复杂场景,学习曲线是有点陡。

                                                                    • 铁匠李十四
                                                                      铁匠李十四 0

                                                                      这个中文版界面介绍挺实用的,英语不好的人有福了。

                                                                      • 幻影风暴
                                                                        幻影风暴 0

                                                                        c2lint检查profile这步经常被新手忽略,结果跑起来各种报错。

                                                                        • 玻璃穹顶
                                                                          玻璃穹顶 1

                                                                          payload终止时间那个参数具体怎么设置?是必须填的吗?

                                                                          • 高冷的雪豹
                                                                            高冷的雪豹 1

                                                                            那个pivot图用虚线表示协议,挺直观的。

                                                                              • 枫少@KillBoy
                                                                                枫少@KillBoy

                                                                                @ 高冷的雪豹 那个虚线设计还蛮实用的,能快速区分不同协议的流量走向。

                                                                              • 雾踪
                                                                                雾踪 0

                                                                                看完了,基础部分讲得挺清楚的,适合入门。

                                                                              匿名

                                                                              发表评论

                                                                              匿名网友

                                                                              拖动滑块以完成验证