隧道搭建

学习内网中的知识

Posted by Sprint#51264 on July 21, 2022

引言

隐蔽隧道通信技术

什么是隧道?隧道就是让原本不能通行的网络,能够通行。网络安全研究人员需要掌握常见的隧道技术:

网络层:IPv6隧道、ICMP隧道、GRE隧道 传输层:TCP隧道、UDP隧道、常规端口转发 应用层:SSH隧道、HTTP隧道、HTTPS隧道、DNS隧道

文章主要是基于ailx10的内网攻防实验文章写的

ICMP隧道–icmptunnel

ICMP隧道检测分析 ICMP隧道

安装使用

  • 编译

    
      git clone https://github.com/DhavalKapil/icmptunnel
      cd icmptunnel/
      make
    
  • 在服务器端以root权限运行的隧道:

    icmptunnel -s 10.0.1.1

  • 在客户端执行route -n,找到你的网关和相应信息:

    
      Kernel IP routing table
      Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
      0.0.0.0         192.168.100.2    0.0.0.0         UG    0      0        0 ens33
    
  • 编辑client.sh

    
      用代理服务器的IP替换
      用上面的Gateway地址替换
      用上面的Iface替换
      在客户端以root权限运行
      icmptunnel -c <server>
    

    现在隧道应该成功运行,客户端应该能够访问互联网。所有流量都将通过 ICMP 隧道进行传输。

DNS隧道

SSH隧道的本地(远程)转发

  • 本地转发过程

    
      -C 压缩传输
      -f 将SSH传输转入后台执行
      -N 建立静默连接
      -g 允许远程主机连接本地用于转发的端口
      -L 本地端口转发
      11001 本地端口
      192.168.160.139:3389 目标主机目标端口
      ailx11@192.168.160.137 跳板机
      运行命令输入跳板机的ssh登陆密码就可以了
    
      ssh -CfNg -L 11001:192.168.160.139:3389 ailx11@192.168.160.137
    
    
      连接本地的11001端口就会自动通过跳板机连接到目标机的3389端口
      rdesktop 127.0.0.1:11001
    
    
  • 远程转发过程

    
      *在跳板机ubuntu18上运行SSH远程转发命令*
    
      -R 远程端口转发
      11111 kali rolling上的端口
      192.168.160.139:3389 目标主机目标端口
      root@192.168.160.140 kali rolling
      运行命令输入kali rolling的ssh登陆密码就可以了
      ssh -CfNg -R 11111:192.168.160.139:3389 root@192.168.160.140
    
      连接本地11111端口就可以访问目标机器3389端口
    
    
  • 动态转发

SSH隧道的动态转发