CTF学习笔记(大学篇)03 —— CobaltStrike 详解
CobaltStrike信息
Cobalt Strike(下面会简称为CS)是一款由java编写的全平台多方协同渗透测试框架,在3.0版本之前它基于Metasploit框架工作,在3.0后的版本以独立成一个渗透测试平台。CobaltStrike集成了端口转发、端口扫描、socket代理、提权、钓鱼、远控木马等功能。该工具几乎覆盖了APT攻击链中所需要用到的各个技术环节,且其最大的优点在于可以进行团队合作和优越的UI界面。
不过这东西好像是要钱的,在百度搜索可以找到别人打包好的程序,包括汉化包、服务器等东西(自己找去吧),但是一定要注意,teamserver和CS程序本体的版本号一定要一样!
如果是官方下载的纯净版,那目录结构应该是长这样的
1 | CobaltStrike |
开启CS服务器
CS需要一台电脑作为监听服务器,这里我直接用物理机当服务器和攻击机,用虚拟机当目标机
在Windows下,需要把以下代码复制粘贴到一个bat文件(建议放在同目录),然后再运行监听服务器
1 | @echo off |
弄好了以后,打开Windows Terminal,运行下面的命令来打开监听服务器
1 | .\teamserver.bat <监听ip> <服务器密码> |
这里监听IP不能是0.0.0.0
,必须指定ip。可以通过ipconfig
来查看本机的ip地址,然后填在对应的位置,密码就自己设置了,另外打开的时候一定要用管理员权限!
开完了应该会像下面这张图这样显示
然后打开CS软件本体,输入ip和密码进行连接,出现主页面即为连接成功
开CS软件本体的方式就很简单了,可以简单粗暴直接java -jar cobaltstrike.jar
,也可以把下面这些内容复制到一个bat文件然后直接双击打开(下面这里用了汉化模组CobaltStrikeCN.jar
,你可以在Github搜索下载)
1 | java -Dfile.encoding=UTF-8 -javaagent:CobaltStrikeCN.jar -XX:ParallelGCThreads=4 -XX:+AggressiveHeap -XX:+UseParallelGC -jar cobaltstrike.jar |
生成木马文件
这个其实很简单(如果不做免杀的话),直接在顶上找到齿轮图标点一下,然后选择一个监听器生成就行了,不过在生成之前要记得一定要关闭杀软(因为没做免杀,会被杀软直接干掉)
这里我生成了一个名为beacon.exe
的木马文件,把它丢到虚拟机里面双击运行(记得要把虚拟机的杀软也关了)
这里有个坑,如果你发现你的肉鸡很久都没有上线,那你应该去检查一下虚拟机的网络模式设定,我一开始设置的是NAT模式,但是NAT模式的网段跟本机的网段不太一样,就会连不上,所以要改成桥接模式才能够连接成功。
在虚拟机打开木马文件后,你攻击机的CS就会有上线提示了,然后会显示一些关于肉鸡的信息,如图所示
肉鸡上线的时候,第一件事情就是要调整延迟。如果说你想做到实时控制,那就要把延迟调整为0s,如果你想操作延迟执行,那就修改为对应的时间,默认是60s
修改也很简单,右击一下你的目标机器,在会话
里面可以找到Sleep
选项,点开以后修改就行了
右击选择进入beacon
可以进入CS提供的命令行,对目标机器进行操作
一般可以使用shell <powershell命令>
的格式来执行Windows自带的命令,例如使用shell notepad
就可以在目标机器打开一个记事本,使用shell calc
就可以在目标机器打开一个计算器
安装插件
CS自己就带了不少的功能,例如提权、VNC等功能,但是这些功能不太够,幸好整个CS的生态里面是有很多大佬开发插件的,这里可以在Github上随便搜搜就能找到了。这里我装了一个z1un/Z1-AggressorScripts: 适用于Cobalt Strike的插件 (github.com)整个插件集,所以我这里右击肉鸡的时候多了一个Z1
选项
这里就有很多功能了,这里可以讲一下一些有趣的功能
用户密码钓鱼
很多计算机都会设置有电脑的登录密码,有的时候我们想获取用户的密码,那用得最烂但是挺有效的手段就是钓鱼(特别对于CSGO库存价值高的Steam用户来说肯定遇到过不少),这里Z1也给我们提供了对应的功能,我们可以在Z1
->读取密码
->钓鱼密码窃取
->FakeLogonScreen
里面使用这个功能,点击后会弹出一个小窗口,点击执行后,肉鸡就会显示一个钓鱼窗口了
不过有一说一这个窗口……做的还是挺次的
不过这个可以自动判断用户密码的正误,直到用户输入正确了才放行,控制台会实时弹用户输入密码的情况,但是但是,对于我这种用PIN登录的人来说,获取不到PIN
还有一种钓鱼窗口就是Windows自带的那种认证窗口(如图)【紫色的表框是VMware的Unity模式带的,在正常的系统中显示实际上是没有没有】
不过也有一个缺点就是:正常的巨硬认证窗口是不能移动的,这个可以……
打开这个窗口也不难,只是在刚刚上面那个Windows登录的那个选项那里选择下面那个,然后设定一下标题(在这里是安全认证
这几个字)就可以了。