6.Cobaltstrike常用功能

时间:2024-03-10 13:47:33

一、对被控主机的操作

 

对着被控主机右键后:

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               //会话管理,删除,心跳时间,退出,备注

其实直接去整个中文版的Cobaltstrike也不是不行

 

二、UAC提权

 

当我问发现被控主机的权限不够时,可以使用UAC提权

 

 

 

 

三、密码抓取

 

前提是要system权限

 

破解hash的网址:https://www.objectif-securite.ch/ophcrack  (也可以去MD5)

 

四、Mimikatz获取明文密码

 

 

 

 

 

左上角有一个视图,可以帮助我们更好的看获取的密码

 

 

 

 

五、视图

 

既然上面涉及到视图了,这里就来介绍一下,这四个都是视图,可以点着试试:

 

①改变视图为Pivot Graph(视图列表)

②改变视图为Session Table(会话列表)

③改变视图为Target Table(目标列表)

④显示所有以获取的受害主机的凭证

 

 

六、进程注入

 

 

进程的打开方式:

 

 

打开后可以看到最下面,kill是杀死一个进程,inject是注入进程:

 

 

注入进程成功后可以形成一个新的会话,这样一来即使之前上传的木马被杀了,只要这个进程不断,我们还是可以连回这台机器。

这里我们选择一个pid为3108的cmd进行注入

 

 

 

注入完成,可以看到多了一条会话

 

 

 

 

七、截图:

 

  同样是在进程操作列表这里,选择一个进程后点击screenshot即可,弹出的框是输入截屏的延迟时间:

 

 

 

回到beacon这边,看到这个就说明成功了

 

 

然后我们点击这个图标,就可以看到截图了

 

 

 

 

八、屏幕控制

 

利用VNC进行屏幕控制,我这太卡了,就一直黑屏:

 

 

 

九、键盘记录

 

 

  同样是在进程的操作列表这边,选择一个进程后点击Log Keystrokes启用键盘记录

 

 

 

  在beacon这边就可以看到命令执行了

 

 

接着我们点击这里的图标(这是钥匙还是放大镜?),就可以看到对方的键盘输入内容了

 

  注意,CS的键盘记录是不支持session穿透的

 

 

十、文件的增删改查、执行

 

首先从File Browser打开文件管理页面

 

 

 

  打开管理页面后,分别有上传文件、新建文件、根目录、刷新几个选项,上手操作一下就知道怎么用了,这个很简单

 

 

 

随便右键一个文件(这个文件就是我上传的),可以看到有复制、下载、执行、删除四个选项,这里说一下下载

 

 

  由于的下载是先从对方机器下载到teamserver服务器的,因此点击Download后我们要点击这个图标,然后Sync Files下载回本机

 

 

 

 

 

 

 

十一、添加扩展包

 

 

  提权之前我们可以先去添加一个扩展包,这边我就是到https://github.com/rsmudge/ElevateKit整了一些dll提权文件并解压

 

 

  接着回到CobaltStrike,选择script manager,然后点击load加载文件

 

 

 

  这里我们加载刚刚解压出来的cna文件

 

 

 

  添加提权扩展包完成后,当我们输入elevate,就能看到多出了一些提权的脚本

 

 

 

 

十二、提权

 

 

  提权跟绕过UAC的方式一样:

 

 

  点进去后我们发现,提权方式比原来多了,多出来的就是我们刚刚扩展包的内容

 

 

 

  当然,也可以通过beacon输入命令提权

 

 

 

 

十三、Cobaltstrike与MSF的双向联动

 

 

1、将session从CobaltStrike发给MSF:

 

  ①首先在CS开一个外部监听,名字随便写只要以后看得懂就行;payload要选择带有foreign的,因为是外部监听;host填写msf所在的IP地址;端口随便写一个未占用的

 

 

 

  ②在MSF建立一个监听器:

 

 

  这里设置的端口、IP都与上一步在CobaltStrike中一样;payload也要注意,reverse_http对应CS中的foreign http,以此类推,如果CS中是,foreign tcp时亦是如此。

 

 

  ③然后我们回到CS中,选择一个向转发的session,右键spawn

 

 

 

  选择我们刚刚在CS新建的监听器

 

 

 

  此时MSF就上线了

 

 

 

 

2、将session从MSF发给CobaltStrike

 

 

  方法一:我们在MSF的metepreter中通过shell的命令执行CS生成的文件

 

  方法二:

  ①首先将meterpreter放到后台,然后使用exploit/windows/local/payload_inject,

 

 

 

  ②这里我们设置的payload要与监听器一样(都是reverse_http),session是刚刚我们放入后台的,lport和lhost要分别与该监听器的端口和IP一致

 

 

 

  执行后CS出现一个新的session,这就是从MSF那边来的

 

 

十四、扫描

 

1、开启端口扫描:

 

 

2、配置扫描范围:

 

 

3、查看扫描结果:

先点击target图标,然后右键——ctrl+a全选——services即可。

 

 

 

十五、socks代理

 

 

1、启动Cobaltstrike自带的Socks功能,并设置端口:

 

 

 

 

 

2、利用代理工具proxifier:

可以轻易去吾爱破解下载proxifier,启动后打开代理服务器:

 

 

 

点击添加

 

 

 

然后在新的弹框中填写teamserver的ip和刚刚设置的socks端口

 

 

 

接着可以点击检查,测试该代理是否可用,成功后点击确认即可

 

 

 

这里有一条代理链,可以将多个代理服务器连在一起

 

 

 

然后点击这个图标,配置代理规则,打开后点击添加

 

 

 

这里演示设置的规则是任意程序使用任意端口访问百度的域名,都会使用这条代理(实际渗透中,我们可以设置为192.168.100.* 之类的)

 

 

 

配置完成打开百度后,我们就能在proxifier看到这堆数据

 

 

 

此外我们还可以通过隧道将整个msf带进目标内网

点击View->Proxy Pivots,选择Socks4a Proxy,点击Tunnel:

 

 

 

然后打开msf,use 自己想使用的模块后,将上图的命令复制进去执行(setg Proxies socks4:192.168.100.93:8899),在配置其他选项后exploit执行,就可以通过msf对内网进行操作了,甚至msf还不用添加路由

 

 

十六、端口转发

 

 

1、利用web服务器的会话建立pivot监听器:

 

一个 pivot 监听器将绑定到指定会话上的侦听端口。假设我们已经弄到了一台web服务器的session,发现web服务器后面发现有一台内网机器,此时我们想要将这台内网机器的端口通过web服务器转发给我们teamserver服务器,这时就需要利用到端口转发功能。

 

首先,对teamserver服务器上获取的web服务器session右键,建立一个pivod监听器:

 

 

 

 

点击建立pivot监听器后,出现的弹框其实只用改NAME,其他已经自动帮我们填充了,这里的host其实就是web服务器的IP:

 

 

 

 

接着我们就利用这个pivot监听器创建一个攻击文件:

 

 

 

 

 

执行该文件后回到teamserver,就能看到已经完成端口转发了