前言
SSH 全称 Secure Shell
,从它的名字来看这个协议就比较安全。SSH 协议是一种应用层协议,支持几乎所有 UNIX、Linux 平台。
得益于 SSH 协议在传输过程中都是加密,所以在流量层面也较难区分合法的 SSH 流量和攻击者产生的 SSH 流量。
因此在内网渗透过程中,使用 SSH 协议进行建立隧道的方法,一方面不用自己再上传同类工具,另一方面降低了因上传使用了同类工具被管理员发现的风险。
一、SSH 常用命令介绍
相信各位平时最常使用的 SSH 命令就是拿来连接 Linux 系统了,命令一般是这样:
ssh root@192.168.1.1
或者 -p 指定自己自定义的 SSH 端口、-i 指定自己的私钥文件等等。
如果拿 SSH 来创建隧道则需要用到下面的命令:
-C 压缩传输,提高传输速度。
-f 将 SSH 传输转入后台执行,不占用当前 shell
-N 建立静默连接(建立了连接但看不到具体会话)
-g 允许远程主机连接本地用于转发的端口。
-L 本地端口转发
-R 远程端口转发
-D 动态转发( SOCKS 代理)
-p 指定 SSH 端口
二、本地转发
目前有这样的一个环境,外网有一台攻击主机 ,可访问处于内网环境的 Web 服务器(双网卡),但无法访问 Web 服务器所在内网的办公主机,接下来就用 SSH 进行流量转发,使外网的攻击主机通过 Web 服务器访问到位于内网的办公主机。
环境拓扑如下:
在攻击主机上执行以下命令,将内网办公主机的 3389 端口映射到自己的 3388 端口上
ssh -CfNg -L 攻击主机端口:内网办公主机IP:内网办公主机端口 Web服务器ssh用
户名@Web服务器IP
ssh -CfNg -L 3388:192.168.7.110:3