实验环境:
攻击机win10物理机,ip 192.168.83.1
跳板机Linux虚拟机, ip 192.168.83.100
靶机win7虚拟机,ip 192.168.83.91攻击机可以连接跳板机ssh,但是不允许连接靶机3389端口
跳板机可以连接靶机端口
ssh隧道常用参数说明:
-C 压缩数据传输
-f 身份验证后转入后台
-N 静默连接,连接后看不到具体会话
-g 允许远程主机连接到建立的转发的端口
-L 本地端口转发
-R 远程端口转发
-D 动态转发
-p 指定ssh端口
本地转发
在攻击机上执行:ssh -CfNg -L 4444:192.168.83.91:3389 root@192.168.83.100 #ssh -CfNg -L 攻击机端口:靶机ip:靶机端口 root@跳板机ip
输入密码,执行命令
netstat -ano|findstr "4444"
,攻击机的4444端口正在监听
此时访问本机4444端口,成功连接
(完成后找到对应pid停止进程结束监听)
远程转发
在跳板机上执行:ssh -CfNg -R 4444:192.168.83.91:3389 root@192.168.83.1 #ssh -CfNg -L 攻击机端口:靶机ip:靶机端口 root@攻击机ip
攻击机上需要支持ssh协议,因此更换攻击机为linux操作系统
在攻击机上执行rdesktop 127.0.0.1:4444
即可连接上靶机远程桌面本地转发是将远程主机某个端口的数据转发到本地端口
远程转发是在远程主机上监听端口,访问远程主机端口的数据都通过ssh隧道传输到本地对应的端口
动态转发
利用ssh隧道建立socks 4/5代理通道
在攻击机上执行:接着就可以在支持socks代理的软件上设置socks代理,在火狐中设置socks代理ssh -CfNg -D 4444 root@192.168.83.100
那么火狐的访问都会交由127.0.0.1:4444代理,再转发到192.168.83.100上