您是否曾经须要在远程系统上运行命令或程序,但没有远程桌面访问权限?PsExec 是一款在远程打算机上运行命令的出色工具,环球黑客都在利用它。
你可以利用它在网络中横向移动或获取有关远程机器的更多信息。它是任何黑客工具箱中的代价令媛,但可能会造成稠浊。
在本文中,我们将先容 PsExec 是什么、从哪里获取它、何时可以利用它以及如何以多种办法利用它。让我们深入理解 PsExec 如何不才一次黑客攻击中为您供应帮助。

准备好学习如何利用 PsExec 了吗?我们开始吧。
什么是 PsExec?
PsExec 是 Sysinternal 套件的一部分,该套件是 Mark Russinovich 和 Bryce Cogswell 创建的故障打消工具凑集。它用于故障打消、安装补丁、远程安装软件以及实行系统管理员须要实行的许多其他例行任务。
PsExec 的功能紧张在于许可用户通过命令行界面在远程系统上运行命令或程序。PsExec 的紧张功能包括:
远程运行进程以系统帐户实行进程与远程系统的桌面交互PsExec 许可用户在远程系统上运行命令,并通过重定向查看当前系统上的输出。
在本文中,我们不会从技能层面先容它是如何做到这一点的。但是,从基本层面讲,只要知道当您利用 PsExec 在远程系统上运行命令时,就彷佛您直接从该机器上运行它一样就足够了。
利用 PsExec 进行黑客攻击的示例
和任何合法工具一样,PsExec 也有可能被用于非预期用场。事实上,PsExec 有多种用场,可以让黑客的事情变得更加轻松,而且在远程系统上远程实行命令的能力也为黑客供应了多种攻击路子,而这些路子原来是无法得到的。
一个很好的例子便是在网络中横向移动。
PsExec 可以通过多种办法用于横向移动,但最大略的方法是在远程系统上实行交互式命令提示符。这与远程登录该打算机相同。
当您无法远程桌面访问系统时,此功能非常有用。如果您在远程系统上拥有足够的权限,则可以利用 PsExec 发出命令来启用 RDP(远程桌面协议),并将用户添加到远程桌面用户组。
PsExec 还许可您以其他用户身份运行远程命令。
例如,假设您在 machine01 上可以访问标准用户帐户,但在 machine01 上创造一个密码,您认为该密码可能是 machine02 确当地管理员密码。但是,您无法通过 RDP 进入该系统。您可以利用 PsExec 从 machine01 以 machine02 确当地管理员帐户身份在 machine02 上运行命令提示符。
利用 PSExec 的另一个好处是您不须要用户密码即可以该用户身份运行命令。
假设您通过Mimikatz 在 machine01 上为 machine02 的管理员用户找到了 NLTM 哈希。
利用利用 PsExec 的 Impacket,您可以将用户的哈希通报到远程系统进行身份验证。这使得跨网络移动的速率更快,由于您不须要利用Hashcat之类的工具破解哈希。
利用 PsExec 的哀求
要利用 PsExec,目标系统必须启用一些端口和做事。最常用的是 TCP 端口 445 和 139。
可以利用其他端口,例如端口 135,但不太常用。您还须要配置防火墙设置以许可通过端口 445 和 139 进行入站和出站流量。
还必须启用做事器块 (SMB)。如果创造主机上的端口 445 和/或 139 已打开,则意味着 SMB 可能已启用。您还应验证本地和远程主机系统上是否都启用了文件和打印机共享。
末了,您须要在运行 PsExec 的机器上拥有管理访问权限。
为了验证目标打算机上是否打开了精确的端口, 可以运行Nmap扫描来检讨端口 139 和 445 是否打开。对付此扫描,我们将利用:
sudo nmap -p- -sV TARGET_IP --open
在这个特定的案例中,我们利用了:
sudo nmap -p- -sV 192.168.214.122 --open
PsExec 远程命令
PsExec 有几个命令可以帮助您入侵打算机。在本文中,我们将先容三种最常见的利用方法 - 首先,作为 Windows 二进制文件,然后作为Kali Linux上的 Python 脚本,末了,在 Kali Linux 上的 Metasploit 中利用。
如何利用 PsExec 作为 Windows 二进制文件
让我们一步一步地从 Sysinternals 获取本机 PsExec 并查看常用命令和参数。
要在 Windows 系统上利用 PsExec,您必须先从 Microsoft 下载。在 Google 上快速搜索“psexec”将返回精确的页面作为第一个结果。
点击链接后,您将被勾引至 PsExec 下载页面。您须要点击“下载 PsTools”链接来下载 PsExec。
在打算机高下载 PsTools 后,您必须解压 zip 文件,右键单击它,然后在 Windows 11 上选择“全部解压”。
之后,系统会弹出一个窗口,讯问您要将内容提取到哪里。默认值是与 zip 文件所在的同一目录,这样就可以了。连续并单击“提取”。
提取文件后,您须要将它们移动到打算机上的某个位置,只要您操持利用 PsExec,它们就会保留在那里。我们将文件移动到了 C:\PSTools。
现在,您可以打开终端或命令提示符并导航到目录,或者打开目录文件资源管理器,右键单击,然后选择“在终端中打开”。
之后,您就可以在 Windows 上利用 PsExec 了。
例如,您可以利用 PsExec 利用以下命令获取远程系统的 IP 配置:
.\PsExec.exe \\REMOTE_IP -u <USERNAME> -p <PASSWORD> ipconfig
对付我们的例子,完全的命令将是:
.\PsExec.exe \\192.168.0.225 -u stationx-admin -p stationx ipconfig
您可以将 ipconfig 更换为须要在远程打算机上运行的任何命令。PsExec 将像您在本地一样运行它。
如何通过 Python 脚本利用 PsExec
常日,在 Windows 机器上利用 PsExec 是为了管理目的,但在大多数黑客攻击场景中,您会利用像 Kali Linux 这样的操作系统。
Kali 有许多有用的内置工具。例如,Impacket 是一套非常有用的工具,它有自己的 PsExec 版本。
如果您利用的是 Kali Linux,则 Impacket 无需设置。它已安装好您的 PATH 中的所有工具。
远程打算机的远程掌握语法是:
impacket-psexec USERNAME@IP_ADDRESS
在我们的例子中,这是:
impacket-psexec damon@192.168.237.249
利用 impackt-psexec 登录远程打算机并得到交互式 shell 的屏幕截图。以 Ipconfig 为例。
Impacket 还具有一项功能,许可您利用用户的哈希值(而不是密码)远程访问其他打算机。这在黑客攻击中非常有用,由于您不一定能在找到用户的 NTLM 哈希值后破解它。
语法如下:
impacket-psexec <USERNAME@IP_ADDRESS> -hashes <NTLM_HASH>
在我们的示例中,命令是:
impacket-psexec damon@192.168.237.249 -hashes 00000000000000000000000000000000:820D6348890893116880101307197052
再次,一旦您登录,您就可以实行该用户可用的任何命令。
如何在 Metasploit 中利用 PsExec
Metasploit 是一款出色的黑客工具,您该当很熟习它。与 Impacket 一样,它内置于 Kali Linux 中。要启动Metasploit,您须要输入“msfconsole”,然后您将收到一条随机的欢迎。
然后你须要选择要利用的模块。在我们的例子中,我们将利用这个:
exploit /windows/smb/psexec
设置完模块后,我们必须配置模块所需的各种选项。就此模块而言,它须要以下内容:
RHOST,SMBUser,SMBPass, 和LHOST
输入所有信息后,我们就可以通过输入漏洞来运行该模块。
建立连接后,你将像利用以前的方法一样完备访问系统。你只须要输入 shell 命令。
与 PsExec 类似的工具
许多工具与 PsExec 类似,但它们的浸染不同。
WMIExec: WMIExec 与 PsExec 非常相似。但是,它通过 WMI 协议运行,常日在 TCP 端口 135 上运行。SMBExec: SMBExec 具有 PsExec 的部分功能,但不如 WMIExec。但它利用 SMB 和与 PsExec 相同的端口。Atexec: Atexec 是一款利用内置任务操持程序运用程序在远程 Windows 系统上实行命令的工具。它可以实行 PsExec 的大部分功能,但利用起来可能轻微繁芜一些。PowerShell 远程处理: Powershell 远程处理利用 Powershell 远程处理协议 (PSRP) 和 Windows 远程管理 (WinRM) 做事在远程系统上实行远程命令。它还许可进行交互式会话,功能非常强大。适用于 Windows 的 SSH:适用于 Windows 的 SSH 在默认情形下不具备 SSH 功能的 Windows 主机上供应安全 Shell (SSH) 功能。第三方工具(如 PuTTY)也可用于此功能。RDP:远程桌面协议 (RDP) 许可用户通过 GUI 界面远程连接到另一台打算机。RDP 许可您在远程打算机上实行任何功能,就像您直接登录到该打算机一样。结论
PsExec 对管理员和黑客来说都是一款非常有用的工具。它内置于大多数黑客操作系统中 ,作为其他工具(如 Impacket 或Metasploit)的组件。
目标操作系统须要进行大量配置,因此您不能总是假设 PsExec 可用。但是,管理员利用 PsExec 的情形极为常见,而且您常常会创造它可以在 Windows 和 Active Directory 环境中利用。
PsExec 是您在进一步理解黑客技能时该当理解的工具。只管您可能不会直接将其用作 Windows 二进制文件,但它也涌如今黑客日常利用的 Impacket 和Metasploit等工具中。