内网渗透测试:利用 RDP 协议搭建 Socks5 代理隧道

往期文章:

《内网渗透测试:初探远程桌面的安全问题》

《内网渗透测试:登录远程桌面的别样姿势》

《内网渗透测试:基于文件传输的 RDP
反向攻击》

《内网渗透测试:获取远程桌面连接记录与 RDP
凭据》

前言

如今,在很多组织机构内部,针对 DMZ 或隔离网络区域内的计算机设备,为了限制其它接入端口风险,通常只允许这些设备开启 3389
端口,使用远程桌面来进行管理维护。那么我们能不能利用这个 3389 端口的 RDP 服务建立起一条通向内网的代理隧道呢?当然可以,下面就引出我们今天的主角
—— SocksOverRDP。

文中若有不当之处,还请各位大佬师傅们多多点评。

我的博客:https://whoamianony.top/

SocksOverRDP

20210805192108.png

项目地址:https://github.com/nccgroup/SocksOverRDP

SocksOverRDP 可以将 SOCKS 代理的功能添加到远程桌面服务,它使用动态虚拟通道,使我们能够通过开放的 RDP
连接进行通信,而无需在防火墙上打开新的套接字、连接或端口。此工具在 RDP 协议的基础上实现了 SOCKS 代理功能,就像 SSH
-D参数一样,在建立远程连接后,即可利用 RDP 协议实现代理功能。

该工具可以分为两个部分:

image-20210805164336410

第一部分是一个.dll文件,需要在 RDP 连接的客户端上进行注册,并在每次运行时将其加载到远程桌面客户端 mstsc 的上下文运行环境中。

第二部分是一个.exe可执行文件,它是服务端组件,需要上传到 RDP 连接的服务器并执行。

以下是该工具的运作原理:

If the DLL is properly registered, it will be loaded by the mstsc.exe
(Remote Desktop Client) or Citrix Receiver every time it is started. When
the server executable runs on the server side, it connects back to the DLL
on a dynamic virtual channel, which is a feature of the Remote Desktop
Protocol. After the channel is set up, a SOCKS Proxy will spin up on the
client computer, by default on 127.0.0.1:1080. This service can be used as a
SOCKS5 Proxy from any browser or tool.

大致原理是,当 SocksOverRDP-Plugin.dll 在 RDP 客户端上被正确注册后,每次启动远程桌面时都会由 mstsc 加载。接着,当
SocksOverRDP-Server.exe 被上传到 RDP 服务端上传并执行后 ,SocksOverRDP-Server.exe
会在动态虚拟通道上回连 SocksOverRDP-Plugin.dll,这是远程桌面协议的一个功能。虚拟通道设置完成后,SOCKS 代理将在 RDP
客户端计算机上启动,默认为 127.0.0.1:1080。此服务可用作任何浏览器或工具的 SOCKS5
代理。并且服务器上的程序不需要服务器端的任何特殊特权,还允许低特权用户打开虚拟通道并通过连接进行代理。

通过 SocksOverRDP 搭建 SOCKS5 代理

测试环境如下:

image-20210805190918631

右侧为一个内网环境,其中 Windows Server 2012 是一个 Web
服务器,有两个网卡,分别连通内外网。假设此时攻击者已经通过渗透手段拿下了这台 Web
服务器,需要设置代理进入内网继续对内网进行横向渗透。但是由于防火墙的规则等原因,只允许 TCP/UDP 3389 端口可以进行通信,所以我们只能尝试利用用
RDP 协议来建立通讯隧道。

攻击端

在攻击机上需要安装注册 SocksOverRDP-Plugin.dll。首先我们将 SocksOverRDP-Plugin.dll
放置到攻击机的任何目录中,但是为了方便我们可以将其放置到%SYSROOT%\system32\%SYSROOT%\SysWoW64\目录下。

然后使用以下命令对 SocksOverRDP-Plugin.dll 进行安装注册:

1628163364_610bcd24b36b345c65fac.png!small?1628163364575

image-20210805171250365

如上图所示,注册成功。但是由于 SocksOverRDP 建立的 SOCKS5 代理是默认监听在 127.0.0.1:1080
上的,所以只能从攻击机本地使用,为了让攻击者的 Kali 也能使用搭建在攻击机 Windows 10 上的 SOCKS5 代理,我们需要修改其注册表,将
IP 从 127.0.0.1 改为 0.0.0.0。注册表的位置为:

HKEY_CURRENT_USER\SOFTWARE\Microsoft\Terminal Server Client\Default\AddIns\SocksOverRDP-Plugin

image-20210805183835850

然后启动远程桌面客户端 mstsc.exe 连接目标 Web 服务器 Windows Server 2012:

image-20210805184009799

如上图所示,弹出了一个提示说 SocksOverRDP 成功启动,当服务端的可执行文件运行后即可在攻击机的 1080 端口上启动 SOCKS5 代理服务。

服务端

远程桌面连接成功后,将服务端组件 SocksOverRDP-Server.exe 上传到 Windows Server 2012 上:

image-20210805172727184

直接运行 SocksOverRDP-Server.exe 即可:

image-20210805172901544

此时便成功搭建了一个 SOCKS5 代理隧道,查看攻击机 Windows 10 的端口连接状态发现已经建立连接:

image-20210805173743464

然后在攻击机 Kali 上配置好 proxychains:

image-20210805184447817

此时便可以通过代理访问到内网的主机 DC 了。如下所示,成功打开了 DC 的远程桌面:

proxychains4 rdesktop 192.168.93.30

image-20210805184342519

探测内网主机 DC 的端口开放情况:

proxychains4 nmap -sT -Pn 192.168.93.30 -p 445

image-20210805185347989

先该主机开启了 445 端口,我们可以直接用 smbexec.py 连接:

proxychains4 python3 smbexec.py whoamianony/administrator:Whoami2021@192.168.93.30

image-20210805190126459

如上图所示,成功拿下内网主机 DC。

Ending…

174486

文中若有不当之处,还请各位大佬师傅们多多点评。

我的博客:https://whoamianony.top/

参考

https://github.com/nccgroup/SocksOverRDP

各位大佬师傅们多多点评。

我的博客:https://whoamianony.top/

参考

https://github.com/nccgroup/SocksOverRDP

学习网络安全技术的方法无非三种:

第一种是报网络安全专业,现在叫网络空间安全专业,主要专业课程:程序设计、计算机组成原理原理、数据结构、操作系统原理、数据库系统、 计算机网络、人工智能、自然语言处理、社会计算、网络安全法律法规、网络安全、内容安全、数字取证、机器学习,多媒体技术,信息检索、舆情分析等。

第二种是自学,就是在网上找资源、找教程,或者是想办法认识一-些大佬,抱紧大腿,不过这种方法很耗时间,而且学习没有规划,可能很长一段时间感觉自己没有进步,容易劝退。

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

第三种就是去找培训。

image.png

接下来,我会教你零基础入门快速入门上手网络安全。

网络安全入门到底是先学编程还是先学计算机基础?这是一个争议比较大的问题,有的人会建议先学编程,而有的人会建议先学计算机基础,其实这都是要学的。而且这些对学习网络安全来说非常重要。但是对于完全零基础的人来说又或者急于转行的人来说,学习编程或者计算机基础对他们来说都有一定的难度,并且花费时间太长。

第一阶段:基础准备 4周~6周

这个阶段是所有准备进入安全行业必学的部分,俗话说:基础不劳,地动山摇
image.png

第二阶段:web渗透

学习基础 时间:1周 ~ 2周:

① 了解基本概念:(SQL注入、XSS、上传、CSRF、一句话木马、等)为之后的WEB渗透测试打下基础。
② 查看一些论坛的一些Web渗透,学一学案例的思路,每一个站点都不一样,所以思路是主要的。
③ 学会提问的艺术,如果遇到不懂得要善于提问。
image.png

配置渗透环境 时间:3周 ~ 4周:

① 了解渗透测试常用的工具,例如(AWVS、SQLMAP、NMAP、BURP、中国菜刀等)。
② 下载这些工具无后门版本并且安装到计算机上。
③ 了解这些工具的使用场景,懂得基本的使用,推荐在Google上查找。

渗透实战操作 时间:约6周:

① 在网上搜索渗透实战案例,深入了解SQL注入、文件上传、解析漏洞等在实战中的使用。
② 自己搭建漏洞环境测试,推荐DWVA,SQLi-labs,Upload-labs,bWAPP。
③ 懂得渗透测试的阶段,每一个阶段需要做那些动作:例如PTES渗透测试执行标准。
④ 深入研究手工SQL注入,寻找绕过waf的方法,制作自己的脚本。
⑤ 研究文件上传的原理,如何进行截断、双重后缀欺骗(IIS、PHP)、解析漏洞利用(IIS、Nignix、Apache)等,参照:上传攻击框架。
⑥ 了解XSS形成原理和种类,在DWVA中进行实践,使用一个含有XSS漏洞的cms,安装安全狗等进行测试。
⑦ 了解一句话木马,并尝试编写过狗一句话。
⑧ 研究在Windows和Linux下的提升权限,Google关键词:提权
image.png
以上就是入门阶段

第三阶段:进阶

已经入门并且找到工作之后又该怎么进阶?详情看下图
image.png

给新手小白的入门建议:
新手入门学习最好还是从视频入手进行学习,视频的浅显易懂相比起晦涩的文字而言更容易吸收,这里我给大家准备了一套网络安全从入门到精通的视频学习资料包免费领取哦!

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值