从命令行检查远程桌面/RDP 凭据(无 GUI)

jrm*_*jrm 1 command-line rdp hydra

我们目前正在编写一个工具,旨在检查各种应用程序(http、ssh、smb、rdp)上凭据的有效性。前3个没问题。但是对于 RDP,我找不到一种轻松做到这一点的方法。

该工具嵌入在 linux 机器上托管的 Web 应用程序中,因此没有可用的 X 服务器。

我成功用于从命令行验证 RDP 凭据的唯一工具是 THC-Hydra,通过提供单个用户名和密码,它可以正常用于旧版本的 RDP 服务器,也可以用于网络级别身份验证已降低的服务器。

但是,在检查最新版本的 Windows 的 RDP 凭据时,或者在网络级别身份验证已被强化的情况下,THC-Hydra 似乎挂起。

带有 rdesktop 客户端补丁版本的 Medusa 也会失败。(某些服务器需要 CredSSP、SSL、...)

还有 nmap 的 ncrack,但由于某种原因,我只得到“读取”超时。

编辑:我让 Ncrack 工作,但是它失败了 - 至少在 Windows 2008 R2 上(即使提供正确的凭据也找不到凭据)。

有什么线索可以帮助我吗?

干杯

jrm*_*jrm 5

其实我找到了一个可靠的方法来做到这一点。总是当你停止寻找你找到的东西时:)

使用超级棒的远程桌面客户端 FreeRDP 和“+auth-only”开关。身份验证成功时退出状态为 0,否则为 1。还有您可以搜索的错误消息。

认证失败:

jrm@deb-jrm:~$ static/xfreerdp /v:10.0.0.1 /cert-ignore /u:MyUser /MyDomain /p:WRONGPASS +auth-only
Authentication only. Don't connect to X.
credssp_recv() error: -1
freerdp_set_last_error 0x20009
Authentication failure, check credentials.
If credentials are valid, the NTLMSSP implementation may be to blame.
Error: protocol security negotiation or connection failure
Authentication only, exit status 1
Authentication only, exit status 1
Run Code Online (Sandbox Code Playgroud)

有效授权:

jrm@deb-jrm:~$ static/xfreerdp /v:10.0.0.1 /cert-ignore /u:MyUser /MyDomain /p:GOODPASS +auth-only
Authentication only. Don't connect to X.
Authentication only, exit status 0
Authentication only, exit status 0
Run Code Online (Sandbox Code Playgroud)