如何在远程计算机上找到用户名?


10

我有网络上某些计算机的IP地址。是否有像PsExec这样的命令行工具,它可以将IP地址作为输入并找出当前登录用户的用户名?我可以在我的工作站上安装东西,但不能安装其他工具。我也可以在我的工作站上运行Metasploit / NMap /任何其他此类程序。

Answers:


6

对于Windows的盒子得到 psLoggedOn 。它会告诉您当前通过console / rdp登录到框的人员以及通过网络共享连接的人员。

如果您不想安装应用程序,还有命令qwinsta和 查询会话 您可以从命令行运行,如下所示:

qwinsta /server:name_of_host or query session /server:name_of_host

太棒了,这是一个PsTool。我觉得我好笨。无论如何,这些PsTools是否可以在默认的Windows XP配置上运行,而无需在远程计算机上安装任何东西?
Neil

正确。防火墙或禁用WMI会妨碍,但即使在开启时,Windows防火墙通常也包含WMI的例外。
MikeJ

9

试试这个:

wmic.exe /node:"IP-or-HostName" ComputerSystem Get UserName

例:

wmic.exe /node:"172.28.1.100" ComputerSystem Get UserName

输出:

UserName
DOMAIN\User

(是, /node 值必须引用)


2
为我工作。我需要以域管理员身份运行cmd,否则我收到错误“访问被拒绝”。
Otiel

显然你有两个帐户: 帐户一 帐号二 。你可能希望利用 这个帮助中心教程 并要求超级用户工作人员合并帐户。
robinCTS


0

您可以使用以下命令执行此操作。这是有效的,因为任何登录的用户都会在登录后自动运行explorer.exe:

for /f "TOKENS=1,2,*" %%a in ('tasklist /s %PCNAME% /FI "IMAGENAME eq explorer.exe" /FO LIST /V') do if /i "%%a %%b"=="User Name:" (set domain_user=%%c)    
for /f "TOKENS=1,2 DELIMS=\" %%a in ("%domain_user%") do set domain=%%a && set user=%%b
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.