红队隧道应用篇之SSH端口转发突破内网(六)

前言

什么是SSH隧道

SSH隧道是使用SSH协议连接两台计算机之间的通道。它使用密钥加密数据传输,并允许计算机之间的安全连接。

通常,SSH隧道用于通过不安全的网络(例如互联网)连接到远程服务器。隧道提供了一种安全的方法来访问远程服务器,而无需担心数据被窃取。

要使用SSH隧道,需要有远程服务器的SSH登录凭据,包括用户名和密码或SSH密钥。还需要安装并运行SSH客户端软件,例如PuTTY或OpenSSH。使用这些工具,可以连接到远程服务器并使用SSH隧道。

总之,SSH隧道是一种安全连接两台计算机的方法,可以在不安全的网络中传输数据并访问远程服务器


什么是SSH端口转发

SSH端口转发是使用SSH隧道将本地计算机的端口映射到远程计算机的端口的功能。这样就可以使用本地计算机访问远程计算机上的服务,而无需直接连接到远程计算机

正向SSH端口转发用于允许本地计算机访问远程计算机上的服务,而反向SSH端口转发用于允许远程计算机访问本地计算机上的服务。

使用反向SSH端口转发时,需要注意的一点是,需要在本地计算机上打开防火墙规则,允许远程计算机连接到本地计算机的端口。如果防火墙规则阻止了连接,则反向SSH端口转发将无法正常工作


SSH常用命令参数

  • -C: 表示压缩数据传输
  • -N: 告诉SSH客户端, 此连接不需要执行任何命令, 仅用于端口转发
  • -L: 指定本地转发端口
  • -R: 指定远程转发端口
  • -f: 表示SSH连接在后台运行
  • -q: 表示安静模式, 不向用户输出任何警告信息

Windows安装SSH服务

1.下载OpenSSH文件

OpenSSH下载地址: https://github.com/PowerShell/Win32-OpenSSH/releases

红队隧道应用篇之SSH端口转发突破内网(六)_第1张图片


2.解压文件至相应文件夹

红队隧道应用篇之SSH端口转发突破内网(六)_第2张图片


3.设置环境变量

此处我添加的环境变量为: E:\HackerTools\Intranet Penetration\Tunnel Tools\OpenSSH-Win64

红队隧道应用篇之SSH端口转发突破内网(六)_第3张图片


4.CMD测试SSH命令

cmd命令行输入: ssh, 出现如下界面代表ssh服务安装成功

红队隧道应用篇之SSH端口转发突破内网(六)_第4张图片


SSH正向端口转发访问内网

拓扑环境

红队隧道应用篇之SSH端口转发突破内网(六)_第5张图片

本地端口转发本质上是一种正向连接, 通过让代理服务器作为跳板将内网主机的指定端口映射至本地主机(攻击机)的指定端口


操作步骤

在攻击机执行如下ssh命令, 然后输入ssh连接远程服务器, 并输入对应用户的密码

ssh -L 7777:192.168.52.149:80 [email protected] -fN

SSH正向端口转发命令语法: ssh -L [本地端口]:[目标IP]:[目标端口] [跳板机ip及用户名] -fN

红队隧道应用篇之SSH端口转发突破内网(六)_第6张图片


随后攻击机访问本机的7777端口, 即可访问内网主机80端口的Web服务

红队隧道应用篇之SSH端口转发突破内网(六)_第7张图片


SSH反向端口转发访问内网

拓扑环境

红队隧道应用篇之SSH端口转发突破内网(六)_第8张图片

SSH远程端口转发其实相当于一个反向连接, 如上图所示, 代理服务器和内网主机之间有一个防火墙, 由于防火墙限制了内网主机80端口的访问, 因此需要内网主机主动去连接代理服务器, 将本地的指定端口映射到远程服务器的指定端口, 以此来突破防火墙的限制

若将内网主机的80端口映射至代理服务器的6666端口, 那么攻击机就能通过访问代理服务器的6666端口访问到内网主机的80端口


操作步骤

在代理服务器修改ssh服务的配置文件: vim /etc/ssh/sshd_config, 将GatewayPorts设置为yes, 然后保存文件

若不将GatewayPorts设置为yes, 那么映射的端口只能绑定在127.0.0.1上, 也就是说只有本机才能访问映射的端口, 其他机器是无法访问到的; 将GatewayPorts设置为yes后, 映射的端口会绑定在0.0.0.0上

红队隧道应用篇之SSH端口转发突破内网(六)_第9张图片


修改完ssh配置文件后重启sshd服务: service sshd restart

红队隧道应用篇之SSH端口转发突破内网(六)_第10张图片


在内网主机执行如下代码, 意思是将本地主机的80端口与远程服务器的6666端口相互映射

ssh -N -R [远程端口]:[本地ip]:[本地端口] [用户名及远程服务器ip] -fN

SSH反向端口转发命令语法: ssh -N -R [远程端口]:[本地ip]:[本地端口] 远程服务器

红队隧道应用篇之SSH端口转发突破内网(六)_第11张图片


在攻击机访问代理服务器的6666端口, 即可访问到内网主机80端口的web服务

红队隧道应用篇之SSH端口转发突破内网(六)_第12张图片

你可能感兴趣的:(红队的自我修养,ssh,服务器,运维)