工具简介
Cobalt Strike 一款以 Metasploit 为基础的 GUI 框架式渗透测试工具,集成了端口转发、服务扫描,自动化溢出,多模式端口监听,exe、powershell 木马生成等。钓鱼攻击包括:站点克隆,目标信息获取,java 执行,浏览器自动攻击等。Cobalt Strike 主要用于团队作战,可谓是团队渗透神器,能让多个攻击者同时连接到团体服务器上,共享攻击资源与目标信息和 sessions。Cobalt Strike 作为一款协同 APT 工具,针对内网的渗透测试和作为 apt 的控制终端功能,使其变成众多 APT 组织的首选。
运行环境
服务端:Ubuntu
客户端:Windows10
CobaltStrike分为客户端和服务端,服务端只能运行在Linux系统上。
CobaltStrike3.14下载链接:
链接:https://pan.baidu.com/s/1oEVTskhidzyZndxjX9XC7Q 提取码:6puc
下载解压后有如下文件:
将cobaltstrike.jar和teamserver两个文件上传到服务器上。
并对teamserver进行赋权操作
chmod a+x teamserver
然后运行teamserver
可以看到没有java环境,安装java环境
安装JDK8,但首先需要确定自己是32位的还是64位的
使用该命令查看
file /bin/ls
可以看到是64位的环境,接着安装Java环境,参考:https://www.cnblogs.com/chuijingjing/p/10316310.html
源码下载JDK8
https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html
如果没有梯子可能下载会比较慢,给出网盘链接:
链接:https://pan.baidu.com/s/1gqw07mkx5yidtYRSBuw7ag 提取码:lgxf
上传到服务器
解压:
tar -xvf jdk-8u261-linux-x64.tar.gz
注意路径
然后修改环境变量,在我这个路径下,使用
vim /etc/profile
需要在profile文件末尾添加:
export JAVA_HOME=/home/ubuntu/jdk1.8.0_261 export JRE_HOME=/home/ubuntu/jdk1.8.0_261/jre export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
如图
令环境变量生效
source /etc/profile
检查安装是否成功
java -version
可以看到文件夹下存在 cobaltstrike.jar 和teamserver 两个文件,运行 teamserver
报错
[-] Trapped java.io.FileNotFoundException during readFile: /home/ubuntu/cobaltst rike/cobaltstrike.auth [main]: /home/ubuntu/cobaltstrike/cobaltstrike.auth (No s uch file or directory) java.io.FileNotFoundException: /home/ubuntu/cobaltstrike/cobaltstrike.auth (No s uch file or directory) at java.io.FileInputStream.open0(Native Method) at java.io.FileInputStream.open(FileInputStream.java:195) at java.io.FileInputStream.<init>(FileInputStream.java:138) at java.io.FileInputStream.<init>(FileInputStream.java:93) at common.CommonUtils.readFile(Unknown Source) at common.Authorization.<init>(Authorization.java:32) at server.TeamServer.main(Unknown Source) [-] Your authorization file is not valid: Could not read /home/ubuntu/cobaltstri ke/cobaltstrike.auth
感觉是缺少授权文件 cobaltstrike.auth
将之前文件夹中的 cobaltstrike.auth文件传到该文件夹中
上传到同目录文件夹下,可以看到现在文件夹下为:
cobaltstrike.store 为之前运行失败的时候生成的文件,看起来并不影响
重新运行 teamserver
./teamserver IP地址 密码
windows10客户端链接
用户名随便取,密码是之前输的那个密码,也就是Admin@123
SpringBird has joined!
成功加入,部署完成。
二更
发现总是在链接公网服务器之后一段时间beacon会自动断开,本来以为是 ssh 断开的原因,ssh的断开导致了beacon自动断开,但是使用了screen之后还是会自动断开,猜测是不是下载的CS存在EXIT暗桩的原因,关于EXIT暗桩:
作者在程序里留了个验证jar文件完整性的功能,如果更改了jar包的文件 这个完整性就遭到破坏,作者会在目标上线30分钟后,在此以后添加的命令任务后门加一个exit的指令,目标的beacon就自动断开了,如下图。
所以寻找另外版本的CS
在先知社区上有 cobalt strike 3.8 英文版:https://xz.aliyun.com/t/2170
三更
关于cobalt strike中文显示乱码的问题解决方案:
https://github.com/Ridter/CS_Chinese_support
使用压缩工具打开 cobaltstrike.jar,替换相应class即可。
替换后重新启动,可以看到:
参考链接
https://soapffz.com/sec/483.html