首页 > 其他分享 >CobaltStrike的使用工具的使用

CobaltStrike的使用工具的使用

时间:2023-08-13 14:05:55浏览次数:161  
标签:键盘记录 主机 CobaltStrike 提权 beacon 使用 进程 工具

CobaltStrike的使用


目录

  • CobaltStrike
  • CobaltStrike的安装
  • CobaltStrike的使用
  • 创建监听器:
  • 创建Attacks:
  • 视图View:
  • 对被控主机的操作
  • 抓取hash和dump明文密码
  • 提权(Elevate)
  • 利用被控主机建立Socks4代理
  • 进程列表(注入进程,键盘监控)
  • 生成黄金票据注入当前会话(Golden Ticket)
  • 凭证转换(Make Token)

01

CobaltStrike

CobaltStrike是一款渗透测试神器,被业界人称为CS神器。CobaltStrike分为客户端与服务端,服务端是一个,客户端可以有多个,可被团队进行分布式协团操作。

CobaltStrike集成了端口转发、服务扫描,自动化溢出,多模式端口监听,windows exe 木马生成,windows dll 木马生成,java 木马生成,office 宏病毒生成,木马捆绑。钓鱼攻击包括:站点克隆,目标信息获取,java 执行,浏览器自动攻击等等强大的功能!

02

CobaltStrike的安装

我这里以Kali安装为例:

先去下载jdk版本

上传到Kali中,解压:tar -xzvf jdk-8u191-linux-x64.tar.gz
移动到opt目录下:mv jdk1.8.0_191/ /opt/
进入jdk目录:cd  /opt/jdk1.8.0_191
 
执行 vim  ~/.bashrc , 并添加下列内容
# install JAVA JDK
export JAVA_HOME=/opt/jdk1.8.0_191
export CLASSPATH=.:${JAVA_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
保存退出
执行: source ~/.bashrc
 
执行:
update-alternatives --install /usr/bin/java java /opt/jdk1.8.0_191/bin/java 1
update-alternatives --install /usr/bin/javac javac /opt/jdk1.8.0_191/bin/javac 1
update-alternatives --set java /opt/jdk1.8.0_191/bin/java
update-alternatives --set javac /opt/jdk1.8.0_191/bin/javac
 
查看结果:
update-alternatives --config java
update-alternatives --config javac

安装好了java之后,我们就去安装CobaltStrike了!

上传到Kali中,解压:unzip cobaltstrike-linux.zip
进入cobalstrike中:cd cobaltstrike-linux/

启动服务端:

启动服务端:./teamserver   192.168.10.11  123456    #192.168.10.11是kali的ip地址,123456是密码
后台运行,关闭当前终端依然运行:nohup  ./teamserver   192.168.10.11  123456  &

这里CobaltStrike默认监听的是50050端口,如果我们想修改这个默认端口的话,可以打开teamserver文件,将其中的50050修改成任意一个端口号

启动客户端:

./cobaltstrike

这里host填kali的ip,密码就是刚刚我们启动的密码。

启动后的客户端:

我们也可以打开windows下的cobaltstrike客户端,然后把ip设置为我们的启动时候的ip即可。


03

CobaltStrike的使用

创建监听器:

点击左上方CobaltStrike选项——>在下拉框中选择 Listeners ——>在下方弹出区域中单机add

name:为监听器名字,可任意payload:payload类型Host: shell反弹的主机,也就是我们kali的ipPort: 反弹端口

这里Payload有9种选项,如下:

内部的Listener

  • windows/beacon_dns/reverse_dns_txt
  • windows/beacon_dns/reverse_http
  • windows/beacon_http/reverse_http
  • windows/beacon_https/reverse_https
  • windows/beacon_smb/bind_pipe

外部的Listener

  • windows/foreign/reverse_dns_txt
  • windows/foreign/reverse_http
  • windows/foreign/reverse_https
  • windows/foreign/reverse_tcp

    Beacon为内置的Listener,即在目标主机执行相应的payload,获取shell到CS上;其中包含DNS、HTTP、HTTPS、SMB。Beacon可以选择通过DNS还是HTTP协议出口网络,你甚至可以在使用Beacon通讯过程中切换HTTP和DNS。其支持多主机连接,部署好Beacon后提交一个要连回的域名或主机的列表,Beacon将通过这些主机轮询。目标网络的防护团队必须拦截所有的列表中的主机才可中断和其网络的通讯。通过种种方式获取shell以后(比如直接运行生成的exe),就可以使用Beacon了。
    Foreign为外部结合的Listener,常用于MSF的结合,例如获取meterpreter到MSF上。
    不同的beacon支持的系统位数也不同,如下:

创建Attacks:

点击中间的Attacks——>Packages

这里Attacks有几种,如下:

  • HTML Application 生成一个基于powershell的恶意HTML Application木马,后缀格式为 .hta
  • MS Office Macro 生成office宏病毒文件;
  • Payload Generator 生成各种语言版本的payload;
  • USB/CD AutoPlay 生成利用自动播放运行的木马文件;
  • Windows Dropper 捆绑器,能够对文档类进行捆绑;
  • Windows Executable 生成可执行exe木马;
  • Windows Executable(S) 生成无状态的可执行exe木马

点击中间的Attacks——>Web Drive-by(网站钓鱼攻击)

CobaltStrike的使用工具的使用_服务端

  • Manage 对开启的web服务进行管理;
  • Clone Site 克隆网站,可以记录受害者提交的数据;
  • Host File 提供一个文件下载,可以修改Mime信息;Host File 可以配合DNS欺骗实现挂马效果使用
  • Scripted Web Delivery 类似于msf 的web_delivery ;
  • Signed Applet Attack 启动一个Web服务以提供自签名Java Applet的运行环境;
  • Smart Applet Attack 自动检测Java版本并l利用已知的exploits绕过security;
  • System Profiler 用来获取一些系统信息,比如系统版本,Flash版本,浏览器版本等。
  • Spear Phish 用来邮件钓鱼的模块

视图View:

点击中间的View


  • Applications 显示受害者机器的应用信息;
  • Credentials 显示受害者机器的凭证信息,能更方便的进行后续渗透;
  • Downloads 文件下载;
  • Event Log 可以看到事件日志,清楚的看到系统的事件,并且团队可以在这里聊天;
  • Keystrokes 查看键盘记录;
  • Proxy Pivots 查看代理信息;
  • Screenshots 查看屏幕截图;
  • Script Console 在这里可以加载各种脚本以增强功能,脚本地址:https://github.com/rsmudge/cortana-scripts
  • Targets 查看目标;
  • Web Log 查看web日志。
  • Reporting 主要就是出报告用的

04

对被控主机的操作

Interact       打开beacon
Access 
  dump hashes   获取hash
  Elevate       提权
  Golden Ticket 生成黄金票据注入当前会话
  MAke token    凭证转换
  Run Mimikatz  运行 Mimikatz 
  Spawn As      用其他用户生成Cobalt Strike的beacon
Explore
  Browser Pivot 劫持目标浏览器进程
  Desktop(VNC)  桌面交互
  File Browser  文件浏览器
  Net View      命令Net View
  Port scan     端口扫描
  Process list  进程列表
  Screenshot    截图
Pivoting
  SOCKS Server 代理服务
  Listener     反向端口转发
  Deploy VPN   部署VPN
Spawn            新的通讯模式并生成会话
Session          会话管理,删除,心跳时间,退出,备注

抓取hash和dump明文密码

这两项功能都需要管理员或System权限

抓取密码哈希:右键被控主机——>Access——>Dump Hashes

利用mimikatz抓取明文密码:右键被控主机——>Access——>Run Mimikatz

默认有三个提权payload可以使用,分别是MS14-058、uac-dll、uac-token-duplication 。

我们选中MS14-058,点击Launch

之后就弹回来一个system权限的beacon

我们也可以自己加入一些提权脚本进去。在Github上有一个提权工具包,使用这个提权工具包可以增加几种提权方法:https://github.com/rsmudge/ElevateKit 。我们下载好该提权工具包后

如下:

再打开我们的提权,可以看到多了几种提权方式了

利用被控主机建立Socks4代理

当我们控制的主机是一台位于公网和内网边界的服务器 ,我们想利用该主机继续对内网进行渗透,于是,我们可以利用CS建立socks4A代理

右键被控主机——>Pivoting——>SOCKS Server

这里是SOCKS代理运行的端口,任意输入一个未占用的端口即可,默认CS会给出一个,我们直接点击Launch即可

于是,我们在自己的主机上设置Socks4代理。代理ip是我们CS服务端的ip,端口即是 38588。

如果我们想查看整个CS代理的设置,可以点击View——>Proxy Pivots

进程列表(注入进程,键盘监控)

右键被控主机——>Explore——>Process List

即可列出进程列表

选中该进程,Kill为杀死该进程,Refresh为刷新该进程,Inject 则是把beacon注入进程,Log Keystrokes为键盘记录,Screenshot 为截图,Stea Token为窃取运行指定程序的用户令牌

这里着重讲一下注入进程和键盘记录

Inject注入进程

选择进程,点击Inject,随后选择监听器,点击choose,即可发现CobaltStrike弹回了目标机的一个新会话,这个会话就是成功注入到某进程的beacon会话。该功能可以把你的beacon会话注入到另外一个程序之中,注入之后,除非那个正常进程被杀死了,否则我们就一直可以控制该主机了。

键盘记录

任意选择一个进程,点击Log Keystrokes,即可监听该主机的键盘记录

查看键盘记录结果:点击钥匙一样的按钮,就可以在底下看到键盘记录的详细了,会监听所有的键盘记录,而不只是选中的进程的键盘记录

键盘监听记录,也可以直接输入 keylogger

标签:键盘记录,主机,CobaltStrike,提权,beacon,使用,进程,工具
From: https://blog.51cto.com/u_16190539/7066280

相关文章

  • 一些爱用的小工具
    SpaceSniffer用来清理磁盘,可以直观地看所占内存大小官方下载地址:SpaceSnifferdownload(uderzo.it)Snipaste截图(f1)+贴图(f3)双击关闭贴图官方下载地址:SnipasteEverythingEverything是voidtools开发的一款文件搜索工具,是一个运行于Windows系统,基于文件、文件夹......
  • SAP ABAP 报表进度显示控件的使用详解试读版
    有些SAPABAP报表包含了多个业务处理步骤,笔者这里举一个例子:计算某个时间段内,系统所有销售订单的总金额。SAP大多数基于ABAP技术栈的销售订单设计,都是采取订单抬头(header)和订单行项目(LineItem)的数据结构。订单的时间段维护在抬头结构上,一张订单可能包含多个行项目,每......
  • 使用 Fiori Elements 框架开发应用的优势
    FioriElements框架是SAP提供的一种开发应用程序的高级抽象层。它建立在SAPUI5框架之上,旨在简化企业应用的开发过程,提高开发效率,并保持应用的一致性和用户体验。使用FioriElements框架,开发人员可以快速创建符合SAPFiori设计准则的应用,无需大量的手动编写代码。本文将探......
  • - csrf跨站请求的相关装饰器 - Auth模块的使用 - 凡是跟登录、注册、修改密码、注销
    csrf跨站请求的相关装饰器 Django中有一个中间件对csrf跨站做了验证,我只要把csrf的这个中间件打开,意味着所有的方法都要被验证在所有的视图函数中:只有几个视图函数做验证只有几个函数不做验证csrf_protect:哪个视图函数加了这个装饰器,这个函数就会做验证 csrf_exemp......
  • 如何使用反射动态加载程序集
    在C#中,我们可以使用反射Reflection来动态加载程序集。动态加载程序集是一种在运行时根据需要加载程序集的技术,而不是在编译时将其硬编码到应用程序中。应用场景具体:为应用程序开发自定义插件。在应用程序中,我们可以使用反射来动态加载插件程序集,然后使用插件中的类型。比如有如......
  • CorelCAD中文版下载-CorelCAD 2021(CAD设计工具) 官方版特色
    CorelCAD是一款CAD软件,可以帮助用户设计和绘制2D和3D图形。它提供了许多功能和工具,包括绘图、编辑、注释、测量和布局等。CorelCAD支持多种文件格式,包括DWG、DXF、DWF和PDF等,可以与其他CAD软件进行互操作。此外,CorelCAD还提供了一些高级功能,例如3D建模、渲染、动画和脚本等,可帮助用......
  • 使用日志来监控应用
    根据提取规则运行的位置可以分为两类做法,一个是在中心端,一个是在日志端。中心端就是把要处理的所有机器的日志都统一传到中心,比如通过Kafka传输,最终落到Elasticsearch,指标提取规则可以作为流计算任务插到Kafka通道上,性能和实时性都相对更好。或者直接写个定时任务,调用Elastic......
  • THREE.JS使用THREE.TEXTGEOMETRY创建三维文本
    <scriptsrc="/lib/three.js"></script><scriptsrc="/lib/js/utils/SceneUtils.js"></script><scriptsrc="/lib/js/utils/GeometryUtils.js"></script><scriptsrc="/lib/js/controls/OrbitC......
  • 使用Linux路由功能
    使用Linux路由功能1、开启Linux主机路由配置功能永久开启,更改配置文件vim/etc/sysctl.confnet.ipv4.ip_forward=1默认值为0[root@ketang-test~]#sysctl-p令修改立刻生效临时开启:echo1>/proc/sys/net/ipv4/ip_forward2、临时添加路由条目使用route命令添加的路由,机器......
  • dectron2框架export导出并使用 onnx 记录
    pythontools/deploy/export_model.py\--sample-image/Users/gatilin/PycharmProjects/model-graphviz-plot/model_graph/detectron/000000439715.jpg\--config-fileconfigs/COCO-InstanceSegmentation/mask_rcnn_R_50_FPN_3x.yaml\--export-methodt......