内网安全-SSH流量转发的姿势

837 阅读4分钟

​本文已参与「新人创作礼」活动,一起开启掘金创作之路。

SSH安装

Windows

mls-software.com

Linux

Debian系列

apt-get install  ssh

RedHat系列

yum install openssh

SSH远程连接

ssh root@192.168.1.5

即:ssh [用户]@[IP地址]

在接下来出现的提示信息 输入 yes,之后提示输入密码,即可连接成功

实验准备

Vmware

三台虚拟机

windows7主机,模拟攻击机A(vlan8),IP:192.168.1.128

kali2020.3主机,模拟公网跳板机B(两块网卡:vlan2和vlan8),IP1:192.168.1.154 IP2:10.0.0.6

kali2018.1主机,模拟内网主机C (vlan2),IP:10.0.0.7

配置

Windows7(A)

主机安装openssh即可

注:ssh的配置文件目录

kali2020.3主机(B)

配置网络

给自定义的VMnet2网卡配置静态IP,VMnet8网卡自动获取IP即可

vim /etc/network/interfaces

重启网卡

/etc/init.d/networking restart

检查配置结果

配置SSH

查看SSH服务是否启动,没有启动的话start启动即可

service ssh restart/status/start/stop

修改配置文件(允许远程密码登录,TCP流量隧道,X11)

vim /etc/ssh/sshd_config

kali2018.1(C)主机

配置方式与B主机类似,只不过只有一块网卡

确定ssh服务开启

SSH流量转发的四种姿势

本地转发、远端转发、跳板转发、动态转发(socks5代理)

实验一:本地转发

本地转发,即在本地启动端口,将本地的端口转发到远程主机的端口

模拟场景:在B主机上有一个web服务,防火墙限制只允许B主机本地访问

我们拿已经配置好的A和B主机实验

做之前我们需要在主机B上面配置apache2服务,以便我们测试实验结果,为了模拟以上场景,我直接在B主机上开启防火墙,只放行22端口

在A主机上绕过了B主机防火墙的限制,访问到了B主机的Web服务

实验二:远端转发

远端转发,它实现的功能和本地转发类似,只不过它是一种反向的代理

模拟场景:很实验一的场景类似,只不过B主机的防火墙关闭放行22端口

这样的话,我们的主机A是无法通过ssh连接到B主机,这里就要用到反向代理,在B主机上将本地的80端口反向代理到A主机的7777端口

B主机反向代理

在A主机上绕过了B主机防火墙的限制,访问到了B主机的Web服务

实验三:跳板转发

跳板转发,就是通过跳板机,转发内网的数据到公网的攻击机,绕过内网的限制

模拟场景:现在我们已经拿到了公网B主机的权限,接下就是横向渗透,入侵内网的C主机,C主机只允许内网的地址访问其80端口

这里,我们就可以拿B主机做跳板去通过B主机的内网IP去访问C主机的80端口

C主机不做防火墙限制

B主机上的防火墙要放行22端口

在A主机上

即可在A主机上绕过内网的限制访问到C主机的Web服务

实验四:动态转发(socks5代理)

模拟场景: 主机C在内网,无法访问外网数据

我们可以将主机B作为代理服务器,在主机C的浏览器配置代理服务

在C主机上即可直接访问到192.168.1.0网段的主机的Web服务(我这里通过python -m SimpleHTTPServer 8080临时搭建了一个web服务来模拟外网,这里只能代理IP地址,域名就不行了)

参考博文:

ssh转发流量的四种姿势 - Chorder - 博客园

abcdabcd987.com/ssh/

kali开启端口、关闭防火墙方法-kali-开心博客

利用ssh的端口转发实现SOCKS5代理_林墨的博客-CSDN博客_socks5 ssh

Python 一句命令启动一个web服务器 - 陈佳鑫--007 - 博客园

SSH -R 反向端口转发_autoliuweijie的博客-CSDN博客_反向端口转发

defcon group 860931|甘肃兰州第二届极客沙龙议题视频(2020年6月13日)mkv_哔哩哔哩_bilibili

zhuanlan.zhihu.com/p/57630633