0x00 前言
一直嚷嚷着要学习内网,但是却迟迟没有动手,买来的内网安全攻防也只是随便看了看,不得不说我当懒狗一直可以的。
cs是在内网渗透过程中的一大神器,今天主要来学习cs中的基础远控模块。
0x01 环境
公网Windows Server 2012 47.*.*.130
公网Centos vps 112.*.*.102
cobaltstrike3.14
Jdk 1.8
0x02 正文
cobaltstrike的主要组成部分是teamserver、cs客户端,通常情况下团队服务器都是搭建在公网vps上,然后团队成员利用本地的客户端连接上去
cs的TeamServer相当于是一个中转站,可以使目标系统权限反弹到TeamServer上,也是有效负载的控制器。然后本地就可以利用客户端进行一系列后续的内网渗透
团队服务器
团队服务器必须要以root身份来创建,在启动团队服务器之前先对teamserver添加一个可执行文件
chmod +x teamserver
然后创建我们的teamserver服务器,后面跟上我们这个公网vps的ip 和密码
bash teamserver 112.*.*.102 admin
ps:这里需要将我们vps的策略打开,像我这个vps是阿里云的,默认策略组是不开放50050的所以导致本地客户端连接超时
本地客户端
打开cs客户端,连接我们的团队服务器
进入到了页面
进来之后,我们首先需要创建一个监听器。监听器主要的作用就是为了监听我们后面的payload的回传的数据。
这里cs的监听器分为两种:
beacon:beacon就是cs内置的监听器,支持很多通信协议。
foreign:foreign是一个外置的监听器,主要是用于例如和msf的shell这种
这里我们端口随意就行,只要没有实现被占用就行
后面会跳出来一个窗口,我们点击确认即可
至此我们的监听器就已经添加完毕了,接下来我们就可以利用cs来生成一些可执行文件或者恶意代码在目标系统系统中进行一个执行,然后利用监听器获取返回的数据。
首先,利用cs生成我们的可执行文件 ,这里有很多种选择,具体选择根据实际情况而定,我这里就简单的尝试了一下windows可执行文件和powershell恶意命令
windows可执行文件
点击generate生成即可
利用powershell代码r
点击generate Payload就会以txt的形式生成
然后直接将我们的powershell在终端进行一个运行或在我们的目标机中执行我们的exe可执行命令
如图可以发现机器已经上线
如下图我们可以通过修改session的sleep时间将回连的时间调短,这样我们的命令就会比较及时的回显出来,我们将sleep时间调短 0-1秒
右键点击interact进入命令行
执行命令前添加shell即可执行命令
shell ipconfig
我们可以利用 shell calc.exe 弹出计算器,如图
同时我们还可以利用cs自带的功能进行屏幕截图、端口探测等功能
提权
ps:提权这里只是比较简单的方法
提权,一般拿到的都是普通权限,我们需要进行一个权限提升,不然后面很容易频繁受阻
这里我们直接使用使用https://github.com/rsmudge/ElevateKit这个提权工具
利用srcript manager进行一个导入
将我们elevatekit进行一个加载
选择合适的进行一个提权
提权成功之后右上角会有一个星号
0x03 总结
这样一个cs的最简单的使用就算是走过了,之前一直听大佬们说cs但是自己也没有学习过,一头雾水,这篇文章也作为自己的内网渗透学习的开篇吧!