技术讨论 | 3步以内利用中间人MitM攻击从RDP连接中获得密码

作者:CQITer小编 时间:2018-07-25 21:53

字号

今天和大家分享个小技术,简单几步通过执行MitM攻击同时从RDP连接中提取明文凭据。我这里使用的测试环境是Linux(1台)、Windows(2台),此环境仅供大家参考。

在工作的项目中,经常会有用户问及使用远程桌面是否安全,对此我们更多想到的是关于RDP 3389的各种爆破或是0day漏洞进行批量处理,但爆破毕竟也存在一定的运气成分,万一手潮就不好说了。

之前大家用的比较多的可能是利用Cain&Abel进行中间人攻击,操作上手也比较简单,在windows环境下的图形界面进行操作,可惜只能嗅探不能执行cmd等扩展功能。

Seth是一个用Python和Bash编写的工具,通过尝试降级连接用以提取明文凭证来实现MitM RDP连接。它的出现可以让更多人提高安全认识,也可以在测试、安全研讨会或会谈的背景下教育大家正确配置RDP连接的重要性。

下面先去github下载工具包。

root@2cats:~# git clonehttps://github.com/SySS-Research/Seth.git

Clipboard Image.png

使用环境:

¨      python3

¨      tcpdump

¨      arpspoof

¨      arpspoof

¨      openssl

通过帮助命令,可以查看命令语法和使用格式,由于时间原因具体参数介绍略过。

root@2cats:~/Seth# ./seth.py -h

Clipboard Image.png

渗透测试具体用法:

$ ./seth.sh <INTERFACE> <ATTACKER IP><VICTIM IP> <GATEWAY IP|HOST IP> [<COMMAND>]

如果在同一网段,RDP主机与受害计算机位于同一子网上不需要加网关地址,否则IP网关地址必须、必须写上。

<COMMAND>是最后一个参数,是可选的。它可以包含通过按键事件注入模拟WIN + R在RDP主机上执行的命令。

按键注入取决于受害者使用的键盘布局,目前它仅在英国美国版OS上可靠。建议通过使用避免使用特殊字符powershell -enc <STRING>,其

中STRING是您的UTF-16le和Base64编码命令。但是,calc应用非常普遍,我们以后渗透测试也会用到它并完成测试。

用shell脚本执行ARP欺骗以获得Man-in-the-Middle位置并重定向流量,使其通过RDP代理运行,代理可以单独调用。

也可以将Seth与Responder结合使用,这个非常有用。使用Responder获得Man-in-the-Middle位置并同时运行Seth。运行seth.py -h以获取更多信息。

具体渗透测试过程如下:

查看渗透测试Attack主机,已经配置好并对接口和相关主机进行监听,如果成功,将执行弹出calc计算器程序。

root@2cats:~/Seth# ./seth.sh eth0192.168.41.{175,141,173} calc

Clipboard Image.png

环境搭建好,我们进行渗透测试,在远程PC客户端进行RDP连接操作。

Clipboard Image.png

提示弹出用户(administrator)和密码(Sec@123)进行认证操作。

Clipboard Image.png

弹出警告提示框,我们这里选择Yes继续。

Clipboard Image.png

下面显示已经成功进行RDP操作,并且连接成功,且弹出计算器程序。

Clipboard Image.png

我们进一步测试,在远程桌面服务器运行cmd命令后,执行了ipconfig查看本机网络的命令操作。

责任编辑:CQITer新闻报料:400-888-8888   本站原创,未经授权不得转载
继续阅读
热新闻
推荐
关于我们联系我们免责声明隐私政策 友情链接