《红蓝攻防对抗实战》九.内网穿透之利用GRE协议进行隧道穿透
前文推荐:
《红蓝攻防对抗实战》一. 隧道穿透技术详解
《红蓝攻防对抗实战》二.内网探测协议出网之TCP/UDP协议探测出网
《红蓝攻防对抗实战》三.内网探测协议出网之HTTP/HTTPS协议探测出网
《红蓝攻防对抗实战》四.内网探测协议出网之ICMP协议探测出网
《红蓝攻防对抗实战》五.内网探测协议出网之DNS协议探测出网
《红蓝攻防对抗实战》六.常规反弹之利用NC在windows系统执行反弹shell
《红蓝攻防对抗实战》七.常规反弹之利用NC在Linux系统执行反弹shell
《红蓝攻防对抗实战》八.利用OpenSSL对反弹shell流量进行加密
《红蓝攻防对抗实战》九.内网穿透之利用GRE协议进行隧道穿透
一.利用GRE协议进行隧道穿透
GRE协议是一种应用较为广泛的路由封装协议,用于将一种网络层协议PDU封装于任一种网络层协议PDU中,就像将一个盒子放在另一个盒子中一样。GRE是在网络上建立直接点对点连接的一种方法,目的是简化单独网络之间的连接。该协议经常被用来构造GRE隧道来穿越各种三层网络。下面讲一下如何利用GRE协议进行隧道穿透。
实验环境如图1-1所示,假设在内网信息收集中发现存活主机,通过漏洞获取到其主机的控制权限,并探测到其开放GRE协议,我们可以通过搭建GRE隧道的方式来进行内网穿透,具体实验环境如表1-1所示。
图1-1 GRE协议实验拓扑图
表1-1 GRE协议隧道穿透实验环境表
主机类型 | 外网IP | 内网IP | GRE隧道IP |
---|---|---|---|
VPS服务器 | 47.94.168.41 | 192.168.0.128 | 192.168.5.1 |
Linux受控主机 | 123.56.14.177 | 172.16.0.1 | 192.168.5.2 |
1)首先我们需要对VPS服务器和受控主机分别执行modprobe ip_gre命令来加载ip_gre模块,执行完毕后,我们再执行lsmod | grep gre命令确认是否已加载GRE协议模块,实验操作命令如图1-2所示。
图1-2 加载ip_gre模块
2)当上述ip_gre模块加载成功后,我们在VPS服务器中执行ip tunnel add tun1 mode gre remote 123.56.14.177 local 192.168.0.128命令来创建名为tun1的GRE隧道,之后通过执行ip link set tun1 up mtu 1400命令启动名为tun1的GRE隧道,此时已设定数据包最大的传输为1400字节,实验操作执行命令如图1-3所示。
图1-3 创建启动GRE隧道tun1
3)通过在VPS服务器中执行ip addr add 192.168.5.1 peer 192.168.5.2 dev tun1命令为VPS服务器创建配置双方互联IP地址,其中本端GRE隧道互联IP地址为192.168.5.1,对端GRE隧道互联IP地址为192.168.5.2,随后执行route add -net 172.16.0.0/18 dev tun1命令来创建一条到达Linux受控主机所属网段172.16.0.0/18的路由,最后通过执行echo 1 > /proc/sys/net/ipv4/ip_forward命令来开启路由转发功能,相关操作执行命令如图1-4所示。
图1-4 VPS侧GRE隧道配置操作执行命令
4)此时通过route -n命令来查看路由信息,如图1-5所示,可以到看到已配置的路由规则。
图1-5 VPS服务器侧GRE隧道路由信息
5)接下来我们执行类似操作,为Linux受控主机创建名为tun2的GRE隧道,之后通过执行ip link set tun2 up mtu 1400命令,启动名为tun2的GRE隧道,相关执行操作命令如图1-6所示。
图1-6 创建启动GRE隧道tun2
6) 同理,我们也需要在Linux受控主机侧执行ip addr add 192.168.5.2 peer 192.168.5.1 dev tun2命令来配置双方互联IP地址,其中本端GRE隧道互联IP地址为 192.168.5.2,对端GRE隧道互联IP地址为192.168.5.1,并执行route add -net 192.168.0.0/24 dev tun2命令来创建一条到达VPS攻击服务器所属网段192.168.0.0/24的路由,最后通过执行echo 1 > /proc/sys/net/ipv4/ip_forward命令来开启路由转发功能,相关操作执行命令如图1-7所示。
图1-7 Linux受控主机侧GRE隧道配置操作执行命令
7)通过在Linux受控主机中执行route -n命令来查看路由信息,如下图1-8所示,可以到看到已配置的路由规则。
图1-8 Linux受控主机侧GRE隧道路由信息
8)当完成以上配置后进行验证,在VPS服务器中对Linux受控主机的GRE隧道IP执行Ping操作,反过来在Gre2中进行相同验证操作。验证成功,证明GER隧道成功,如图1-9所示。
图1-9 GRE隧道连接测试成功
相关文章:

《红蓝攻防对抗实战》九.内网穿透之利用GRE协议进行隧道穿透
前文推荐: 《红蓝攻防对抗实战》一. 隧道穿透技术详解 《红蓝攻防对抗实战》二.内网探测协议出网之TCP/UDP协议探测出网 《红蓝攻防对抗实战》三.内网探测协议出网之HTTP/HTTPS协议探测出网 《红蓝攻防对抗实战》四.内网探测协议出网之ICMP协议探测出网 《红蓝…...

大数据毕业设计选题推荐-智慧消防大数据平台-Hadoop-Spark-Hive
✨作者主页:IT毕设梦工厂✨ 个人简介:曾从事计算机专业培训教学,擅长Java、Python、微信小程序、Golang、安卓Android等项目实战。接项目定制开发、代码讲解、答辩教学、文档编写、降重等。 ☑文末获取源码☑ 精彩专栏推荐⬇⬇⬇ Java项目 Py…...

LeetCode 面试题 16.20. T9键盘
文章目录 一、题目二、C# 题解 一、题目 在老式手机上,用户通过数字键盘输入,手机将提供与这些数字相匹配的单词列表。每个数字映射到0至4个字母。给定一个数字序列,实现一个算法来返回匹配单词的列表。你会得到一张含有有效单词的列表。映射…...

systemctl enable docker.service报错“Failed to execute operation: Bad message“
将docker加入到开机自启,报错: 解决: 重新粘贴复制: [Unit] DescriptionDocker Application Container Engine Documentationhttps://docs.docker.com Afternetwork-online.target firewalld.service Wantsnetwork-online.target…...

向量的范数、矩阵的范数
向量的范数 p-范数 常用的0-范数、1-范数、2-范数、无穷-范数其实都是p-范数的特殊情形。 0-范数 当p0时,表示0-范数。它比较特殊,本质是一种计数,表示向量中非0元素的个数。 1-范数(也称L1范数) 当p1时ÿ…...

C# OpenCvSharp 玉米粒计数
效果 项目 代码 using OpenCvSharp; using System; using System.Drawing; using System.Text; using System.Windows.Forms;namespace OpenCvSharp_Demo {public partial class frmMain : Form{public frmMain(){InitializeComponent();}string fileFilter "*.*|*.bmp;…...

前端缓存机制——强缓存、弱缓存、启发式缓存
强缓存和弱缓存的主要区别是主要区别在于缓存头携带的信息不同。 强缓存: 浏览器发起请求,查询浏览器的本地缓存,如果找到资源,则直接在浏览器中使用该资源。若是未找到,或者资源已过期,则浏览器缓存返回未…...
对称密钥加密与非对称密钥加密:原理与应用
在信息安全领域,对称密钥加密和非对称密钥加密是两种重要的加密方法,它们各有特点,适用于不同的场景。本文将详细介绍这两种加密方法的原理,并通过实例说明其应用,同时阐述在报文传输过程中,何时使用对称密…...
商品小类管理实现B
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.java1234.mapper.SmallType…...

Unity--视觉组件(Raw Image,Mask)||Unity--视觉组件(Text,Image)
1.Raw Image 2.mask “”Raw Image:“” Texture:(纹理) 表示要显示的图像的纹理; Color:(颜色) 应用于图像的颜色; Material:(材质)…...

在Node.js中,什么是事件发射器(EventEmitter)?
聚沙成塔每天进步一点点 ⭐ 专栏简介 前端入门之旅:探索Web开发的奇妙世界 欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的。无论你是完全的新手还是有一些基础的开发…...

STM32——NVIC中断优先级管理分析
文章目录 前言一、中断如何响应?NVIC如何分配优先级?二、NVIC中断优先级管理详解三、问题汇总 前言 个人认为本篇文章是我作总结的最好的一篇,用自己的话总结出来清晰易懂,给小白看也能一眼明了,这就是写博客的意义吧…...
YOLOV5----修改损失函数-SimAM
主要修改yolo.py、yolov5s.yaml及添加SimAM.py 一、SimAM.py import torch import torch.nn as nnclass SimAM(torch.nn.Module):def __init__(self, e_lambda=1e-4):super...
MongoDB单实例安装(windows)
https://fastdl.mongodb.org/windows/mongodb-windows-x86_64-7.0.2.zip 安装过程很简单,将下载的文件解压到安装目录。 提前创建好数据文件目录: D:\data\4000 创建配置文件mongodb.conf,配置文件需要注意的是,mongodb在6.1之后就…...

Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:
错误描述如下所示: 我们将错误拉到最下面如下所示为导致异常的原因: Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type com.example.reviewmybatisplus.Service.UserService available: expec…...

安卓RadioButton设置图片大小
RadioButton都不陌生,一般我们都会设置图片在里面,这就涉及一个问题,图片的大小。如果图片过大,效果很不理想。搜了很多方法,都不理想。无奈只能自己研究了 代码如下: 1,一个简单的 RadioButt…...

电脑怎么录制视频,录制的视频怎么剪辑?
在现今数字化的时代,视频成为了人们日常生活中不可或缺的一部分。因此,对于一些需要制作视频教程、录制游戏或者是进行视频演示的人来说,电脑录屏已经成为了一个必不可少的工具。那么,对于这些人来说,如何选择一个好用…...

外接式网络隔离变压器/网络隔离滤波器/网口变压器/脉冲变压器/网络隔离变压器模块
Hqst华强盛(石门盈盛)电子导读:外接式网络隔离变压器/网络隔离滤波器/网口变压器/脉冲变压器/网络隔离变压器模块,后统称网络隔离变压器,它是一种安装在电路外部的隔离变压器,主要用于隔离网络中的干扰信号…...

AI:83-基于深度学习的手势识别与实时控制
🚀 本文选自专栏:人工智能领域200例教程专栏 从基础到实践,深入学习。无论你是初学者还是经验丰富的老手,对于本专栏案例和项目实践都有参考学习意义。 ✨✨✨ 每一个案例都附带有在本地跑过的代码,详细讲解供大家学习,希望可以帮到大家。欢迎订阅支持,正在不断更新中,…...

MySQL---存储过程
存储过程的相关概念 是一组为了完成特定功能的sql语句的集合,类似于函数 写好了一个存储过程之后,我们可以像函数一样随时调用sql的集合。 复杂的,需要很多sql语句联合执行完成的任务 存储过程再执行上比sql语句的执行速度更快,…...
树莓派超全系列教程文档--(62)使用rpicam-app通过网络流式传输视频
使用rpicam-app通过网络流式传输视频 使用 rpicam-app 通过网络流式传输视频UDPTCPRTSPlibavGStreamerRTPlibcamerasrc GStreamer 元素 文章来源: http://raspberry.dns8844.cn/documentation 原文网址 使用 rpicam-app 通过网络流式传输视频 本节介绍来自 rpica…...
C++ 基础特性深度解析
目录 引言 一、命名空间(namespace) C 中的命名空间 与 C 语言的对比 二、缺省参数 C 中的缺省参数 与 C 语言的对比 三、引用(reference) C 中的引用 与 C 语言的对比 四、inline(内联函数…...

uniapp微信小程序视频实时流+pc端预览方案
方案类型技术实现是否免费优点缺点适用场景延迟范围开发复杂度WebSocket图片帧定时拍照Base64传输✅ 完全免费无需服务器 纯前端实现高延迟高流量 帧率极低个人demo测试 超低频监控500ms-2s⭐⭐RTMP推流TRTC/即构SDK推流❌ 付费方案 (部分有免费额度&#x…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南
精益数据分析(97/126):邮件营销与用户参与度的关键指标优化指南 在数字化营销时代,邮件列表效度、用户参与度和网站性能等指标往往决定着创业公司的增长成败。今天,我们将深入解析邮件打开率、网站可用性、页面参与时…...

MySQL 知识小结(一)
一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库,分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷,但是文件存放起来数据比较冗余,用二进制能够更好管理咱们M…...

莫兰迪高级灰总结计划简约商务通用PPT模版
莫兰迪高级灰总结计划简约商务通用PPT模版,莫兰迪调色板清新简约工作汇报PPT模版,莫兰迪时尚风极简设计PPT模版,大学生毕业论文答辩PPT模版,莫兰迪配色总结计划简约商务通用PPT模版,莫兰迪商务汇报PPT模版,…...

群晖NAS如何在虚拟机创建飞牛NAS
套件中心下载安装Virtual Machine Manager 创建虚拟机 配置虚拟机 飞牛官网下载 https://iso.liveupdate.fnnas.com/x86_64/trim/fnos-0.9.2-863.iso 群晖NAS如何在虚拟机创建飞牛NAS - 个人信息分享...

spring Security对RBAC及其ABAC的支持使用
RBAC (基于角色的访问控制) RBAC (Role-Based Access Control) 是 Spring Security 中最常用的权限模型,它将权限分配给角色,再将角色分配给用户。 RBAC 核心实现 1. 数据库设计 users roles permissions ------- ------…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...