CobaltStrike4.3之Windows与Linux主机上线
lipiwang 2025-03-24 17:55 4 浏览 0 评论
公众号:白帽子左一
专注分享渗透经验,干货技巧....
*此工具仅供技术分享、交流讨论,严禁用于非法用途。后果自负
渗透人员必备的一款工具,CS主机上线是基操,没有上线啥都免谈。
一、前言
几天前和朋友在泡茶的时候,谈起了渗透工程师的面试,当时HR问他,CS怎么上线Linux呢,这时他反问我,我说我不知道,他在纸上写下CrossC2后,嘴里说着”小菜鸡“,转身离开了。
CrossC2简而言之,就是上线Linux系统的拓展插件
初步搭建服务器及启动CS就跳过了,主要是为了记录自己学习CS的笔记。
毕竟拿下蓝队才是我们的终极目标。
二、CS功能及模块介绍
1.Cobalt Strike模块
New Connection:打开一个新的”Connect”窗口。在当前窗口中新建一个连接,即可同时连接不同的团队服务器( 便于团队之间的协作)
Preferences:偏好设置,首选项,用于设置Cobalt Strike主界面、控制台、TeamServer 连接记录、报告的样式
Visualization:将主机以不同的权限展示出来(主要以输出结果的形式展示)
VPN Interfaces:设置VPN接口
Listeners:创建监听器
Script Manager:查看和加载CNA脚本
Close:关闭当前与TeamServer的连接
2. View模块
Applications:显示被控机器的应用信息
Credentials:通过HashDump或mimikatz获取的密码或者散列值都储存在这里
Downloads:从被控机器中下载的文件
Event Log:主机上线记录,以及与团队协作相关的聊天记录和操作记录
Keystrokes:键盘记录
Proxy Pivots:代理模块
Screenshots:屏幕截图模块
Script Console:控制台,在这里可以加载各种脚本(链接)
Targets:显示目标
Web Log:Web 访问日志
3. Attacks Packages模块
HTML Application:基于HTML应用的Payload模块,通过HTML调用其他语言的应用组件进行攻击测试,提供了可执行文件、PowerShell、 VBA三种方法
MS Office Macro:生成基于Office病毒的Payload 模块
Payload Generator:Payload 生成器,可以生成基于C、C#、COM Scriptlet、 Java、 Perl、 PowerShell、Python、 Ruby、 VBA等的Payload
Windows Executable:可以生成32位或64位的EXE和基于服务的EXE、DLL等后门程序。
在32位的Windows操作系统中无法执行64位的Payload, 而且对于后渗透测试的相关模块,使用32位和64位的Payload会产生不同的影响,因此在使用时应谨慎选择
Windows Executable (S):用于生成一个Windows 可执行文件,其中包含Beacon的完整Payload,不需要阶段性的请求。
与Windows Executable模块相比,该模块额外提供了代理设置,以便在较为苛刻的环境中进行渗透测试。
该模块还支持PowerShell脚本,可用于将●Stageless Payload注入内存
(1)Attacks Web Drive-by模块
Manage:管理器,用于对TeamServer上已经开启的Web服务进行管理,包括 Listener 及 Web Delivery模块
Clone Site:用于克隆指定网站的样式
Host File:用于将指定文件加载到Web目录中,支持修改Mime Type
Script Web Delivery:基于Web的攻击测试脚本,自动生成可执行的Payload
Signed Applet Attack:使用Java自签名的程序进行钓鱼攻击测试。如果用户有Applet 运行权限,就会执行其中的恶意代码
Smart Applet Attack:自动检测Java的版本并进行跨平台和跨浏览器的攻击测试。
该模块使用嵌入式漏洞来禁用Java的安全沙盒。可利用此漏洞的Java版本为1.6.0_45以下及1.7.0 _21以下
System Profiler:客户端检测工具,可以用来获取一些系统信息,例如系统版本、浏览器版本、Flash版本等
(2) Attacks Spear Phish模块
4.Reporting模块
activity report活动报告生成
Hosts report主机报告
Indicators opromisef com目标报告
Sessions report会话报告
Social engineering report社会工程学报告
Reset Data 重置数据
Export data 数据出口
5.Help模块
三、主机上线
1. 打开监听
Payload
Beacon DNS(以DNS协议流量建立Beacon连接)
DNS Hosts:Beacon回连的主机,可以添加多个
Host Rotation Strategy:Beacon回连主机策略
HTTP Host (Stager):配置Stager主机,仅当Payload明确需要Stager配合时有效
Profile:Malleable C2配置文件,用于自定义通信流量特征
DNS Port (Bind):绑定监听端口,实现端口重定向
DNS Resolver:指定NS服务器
Beacon HTTP(以HTTP协议流量建立Beacon连接)
Beacon HTTPS(以HTTPS协议流量建立Beacon连接)
HTTPS Hosts:Beacon回连的主机,可以添加多个
Host Rotation Strategy:Beacon回连主机策略
HTTPS Host (Stager):配置Stager主机,仅当Payload明确需要Stager配合时有效
Profile:Malleable C2配置文件,用于自定义通信流量特征
HTTPS Port (C2):Beacon回连的监听端口
HTTPS Port (Bind):绑定监听端口,实现端口重定向
HTTPS Host Header:设置内层真实域名,在使用域前置技术时使用
HTTPS Proxy:为Payload指定代理
Beacon SMB(以SMB协议流量建立Beacon连接)
使用命名管道通过父级Beacon进行通讯,当两个Beacon连接后,子Beacon从父Beacon获取任务执行,两者使用Windows命名管道通信,流量封装在SMB协议中,较为隐蔽
Beacon TCP(以TCP协议流量建立Beacon连接)
External C2
External C2是一种通信规范
Foreign HTTP(以HTTP协议流量建立会话,适用于与外部程序联动)
Foreign HTTPS(以HTTPS协议流量建立会话,适用于与外部程序联动)
成功开启监听,接下来就是让主机上线
2. Windows主机上线
No.1
No.2
Emmm,作者这个无法实现上线,具体思路是这样的
保存成一个带宏模板的办公文件,当受害人点击使用宏模板时,主机上线
大家可以试一试
No.3
这边举个栗子就好了,Powershell Command ,会生成一个文件,保存下来,用powershell执行,这边的原理大致就是生成可执行木马文件
执行后,主机上线,但是只能上线Windows主机
No.4 Windows Executable 和 Windows Executable(S)用法相同
No.5
生成一个Url,访问这个网站去下载,使被攻击机成功上线,目前也未能复现
No.6
这儿的Type 类型 选择哪个都是没问题的,主要看是系统能不能执行,大致的意思就是生成一个Url,让受害者去带上7788的参数去访问这个Url,使被攻击机上线
3. Linux主机上线
要先安装CrossC2,具体得跳过了
设置一个监听端口,CrossC2目前只支持Beacon HTTPS
设置监听和Linux/Mac的型号x86/x64就Ok了
点击Build 就会生成这么个命令,把这个命令复制到要上线的Linux主机上
成功上线
网上还有个是利用命令
./genCrossC2.Linux 10.6.6.25(监听IP) 443(监听端口) null null Linux(Linux/Mac) x86(x86/x32) test
大家可以试试
四、结语
CS主机上线是后面进一步的基操,没有上线啥都免谈。
老生常谈的,各位师傅切勿进行无授权渗透!
原文地址:http://33h.co/w467c
相关推荐
- WIN10系统如何启用net Framework功能
-
当我们安装一些办公软件或是设计软件时,需要.netFramework运行环境,如果没有安装这个运行环境,软件就会无法运行了。那在哪启用呢?下面,我来和大家分享一下第一步,点击开始--设置--在查找设...
- 玩游戏怎能没有.NET Framework 3.5 但你会安装它吗?
-
前段时间NVIDIA发布的最强“煤气灶”引发的不仅仅是显卡价格的剧烈变动(其实也没啥,老的不降价,新的还死贵),还有就是随之而来的一大波游戏,一部分在STEAM平台上搞促销,另外一部分则是不停的放烟雾...
- .Net Framework还是.Net Core?
-
大家都知道,微软在2016年推出了.NetCore框架。后来为了统一,在.NetFramework到了V4.8后便不再更新,同时.NetCore更名为.Net,版本从5.0开始,目前最新版本是....
- .Net Framework详解
-
相信有不少小伙伴遇到过这种情况:安装软件时提示.NetFramework未安装导致软件无法打开,或者需要安装.NetFramework4.0以上的组件。那.NetFramework是什么呢?....
- 远离报错烦恼!深入全面掌握.NET Framework
-
由于Windows系统对.NETFramework这一系统组件有着极为特殊的要求,而部分应用软件及游戏对其的依赖性也近乎达到了驱动级的水准,使用或安装不当会遭遇许多“未知”的问题,因此如何掌握.NE...
- 系统小技巧:深入全面掌握.NET Framework
-
由于Windows系统对.NETFramework这一系统组件有着极为特殊的要求,而部分应用软件及游戏对其的依赖性也近乎达到了驱动级的水准,使用或安装不当会遭遇许多“未知”的问题,因此如何掌握.NE...
- 小菜鸟学Java--如何拿下数组
-
前面谈及到了引用数据类型,数组就是一种,它还是比较重要的一种,本篇就来详细说说它和向量。数组先来说说数组。那么什么是数组呢?它是在数组的基础上的。数组是一种常用的引用数据类型,相同数据类型的元素按照一...
- Java Class 类文件格式看这一篇就够了
-
本文将揭开JavaClass文件的神秘面纱,带你了解Class文件的内部结构,并从Class文件结构的视角告诉你:为什么JavaClass字节码文件可以“写一次,遍地跑”?为什么常量池的计数从1开...
- 八种经典排序算法总结,妈妈再也不用担心我不会了
-
前言算法和数据结构是一个程序员的内功,所以经常在一些笔试中都会要求手写一些简单的排序算法,以此考验面试者的编程水平。下面我就简单介绍八种常见的排序算法,一起学习一下。一、冒泡排序思路:比较相邻的元素。...
- Java 面试题问与答:编译时与运行时
-
在开发和设计的时候,我们需要考虑编译时,运行时以及构建时这三个概念。理解这几个概念可以更好地帮助你去了解一些基本的原理。下面是初学者晋级中级水平需要知道的一些问题。Q.下面的代码片段中,行A和行B所标...
- Java、Set、Map集合框架知识大全,收藏备用
-
前言Java集合框架的知识在Java基础阶段是极其重要的,我平时使用List、Set和Map集合时经常出错,常用方法还记不牢,于是就编写这篇博客来完整的学习一下Java集合框架的知识,如有遗漏和错误,...
- Java反射+注解实现Entity类与Dto类相互转换
-
作者:Mr_Precious链接:https://www.cnblogs.com/scale-lai/p/10164634.html序言近期在工作中管理代码时发现,在项目中从Dao层到Service层...
- Java 最细的集合类总结
-
数据结构作为每一个开发者不可回避的问题,而Java对于不同的数据结构提供了非常成熟的实现,这一个又一个实现既是面试中的难点,也是工作中必不可少的工具,在此,笔者经历漫长的剖析,将其抽丝剥茧的呈现出...
- 我见过的最糟糕代码
-
本文最初发布于jesuisundev.com网站,经原作者授权由InfoQ中文站翻译并分享。在本文中,我将向你展示我见过的一些最糟糕的代码,它们被称为“魔鬼代码”,会带来很严重的后果。然而,我...
- Java面试中最容易忽略的细节,你中了几个?避坑指南送你
-
今日分享开始啦,请大家多多指教~学习Java要明确自己的需求,知道自己要做什么;分析思路,知道自己要怎么做。确定步骤,每一个思路部分用到哪些方法和对象。最后用代码实现,用具体的java语言把思路体现出...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- maven镜像 (69)
- undefined reference to (60)
- zip格式 (63)
- oracle over (62)
- date_format函数用法 (67)
- 在线代理服务器 (60)
- shell 字符串比较 (74)
- x509证书 (61)
- localhost (65)
- java.awt.headless (66)
- syn_sent (64)
- settings.xml (59)
- 弹出窗口 (56)
- applicationcontextaware (72)
- my.cnf (73)
- httpsession (62)
- pkcs7 (62)
- session cookie (63)
- java 生成uuid (58)
- could not initialize class (58)
- beanpropertyrowmapper (58)
- word空格下划线不显示 (73)
- jar文件 (60)
- jsp内置对象 (58)
- makefile编写规则 (58)