内网隧道技术总结

news2024/12/24 8:41:52

隧道技术解决的是网络通信问题,因为在内网环境下,我们不同的内网主机管理员会进行不同的网络配置,我们就需要使用不同的方式去控制我们的内网主机。隧道技术是一个后渗透的过程,是可以是我们已经取得了一定的权限,在这个权限下,我们通过后门将权限转交到msf或者cs服务器上,因为这两个平台上有很多的渗透手段可以帮助我们进行进一步的渗透测试

隧道技术和代理

技术

先解释一下两个容易混淆的概念--隧道技术和代理技术

代理技术:就是一个内网域里面一个主机不能上网,我们通过外网无法访问到这个主机,但是这个内网域中又有一个可以连接外网的主机,我们可以利用这个可以与外网通信的主机作为跳板来连接那个没有外网的主机,这就是代理技术

隧道技术:协议被限制使用隧道技术进行协议转换 例如我们不能访问网页 但是可以使用qq,就是本主机的http协议被限制了,但

ICMP隧道技术--pingtunnel

案例分析--内网可以ping通外网但是无法访问网站

是qq走的是其他协议为此就就可以继续使用

(后渗透技术主要目的是进行权限的维持)

使用ICMP隧道技术的前提条件:内网的主机在防火墙设置的时候限制了TCP/IP协议,这是一个基于ICMP协议的一个上层协议,但是禁用了TCP/IP协议没有禁用ICMP协议的话我们就可以使用ICMP协议去连接

msf进行上线

先生成一个本地的后门

ps:隧道技术需要一个较高权限的用户权限(管理员权限)

将本地的3333端口流量转化为出网IP的4444端口流量

现将tcp流量发送到本地的4444端口,因为外网的tcp协议发送不出去。工具将本地的3333端口流量转化为 跳板主机4444端口的icmp数据流量(代理客户端)

执行木马(双击木马或者直接在cmd中执行木马)

网站依旧无法访问但是我们已经 通过ICMP流量进行了数据传输

控制端收到了流量回连(代理服务端)

msf也受到了数据回连

原理就是使用这个程序先使用后门将tcp数据传输到本地的3333端口,然后使用工具将3333端口的数据转到攻击目标主机的4444端口并且以icmp数据报的形式进行传输数据,传输到监听的攻击机器的时候工具会再次将icmp的数据转化为tcp形式的数据进行监听

本地3333(tcp)->利用工具转发到攻击端的4444端口(icmp)->数据到达4444端口后再 还原成tcp数据流量

cs进行上线

木马生成模式选择(选择stageless模式)

先设置两个两个监听器一个用于监听本地的5555端口,生成一个5555端口的密码,在设置一个6666端口的监听器用于数据转发

创建端口生成后门

在受控主机上执行代理工具和后门

执行后门就可以实现上线

生成的是ICMP1的后门,但是上线主机是ICMP2,就是因为使用了代理转发(生成的5555端口的流量但是上线的是6666端口的监听器)

补充--

DNS隧道技术

由于我没有域名服务器,下面的实验截图来源于小迪视频

前提条件:防火墙已经封杀了所有的tcp协议

跳板机:这里解释一下我理解的跳板机,就是我们在外网攻击一个内网的时候,我们很有可能是无法访问内网的一些主机的资源的,因为这些主机的出网做了限制,为此如果内网中有一台出网主机,我们就可以借助这台主机去连接内网的其他主机,这个主机就充当了访问内网的跳板作用,我们称之为跳板机

前提条件:需要使用一个域名

ns记录是一个与dns服务器相关的一条记录,他指定了该域名应该由那一个DNS服务器进行解析 一般把ns记录指定的dns服务器叫做该域名的权威服务器

ns.xiaosedi.fun 会解析为cs.xiaosedi.com

ns2.xioasedi.fun也会解析为cs.xiaosedi.com(这个是备用的域名解析地址)

cs.xiaosedi.fun 会解析为47.94.236.117这个公网IP

当我们封杀了tcp协议使用原来的tcp反向连接的后门就会失效

然后生成后门将其放到目标服务器上执行

返回来一个没有数据的会话,我们将会话中的输入mode dns-txt

数据回显正常

SSH隧道技术

管理人员为了方便Linux服务器的管理,通常会在服务器端开启ssh服务,我们可以借助这个服务来建立目标主机和控制端的通信

利用kali作为跳板机去获取内网主机的流量

将流量转发到远程的服务器

将流量转发到本地

将本地的8080端口流量转发到1122

我们直接访问8080可以看到主机上有一个网页

当我们执行那个命令之后,我们访问1122端口,可以发现有同样的网页

证明我们的流量转发成功

文件共享协议SMB上线(445端口)

当内网主机对于流量做了较为严格的限制,但是一般会开启icmp协议,因为icmp协议是打印机的底层协议,一般情况下,如果内网主机需要与其他主机进行通信,基本上都会开启这个协议,这样的话,只可以使用icmp协议进行上线,这种情况比较符合实际环境,因为如果限制条件更为严格的话,内网主机就无法与其他主机进行通信,我们也就无法发现这个主机,也就没有后期的上线流程操作。

创建一个监听器SMB监听器,这个监听执行后门执行后不会有反应,一位这个监听器只是一个特殊的管道,不会有其他的通信操作,所以不用使用这个监听器生成后门上线,要使用横向移动进行上线

因为这种检测较为严格,我们先使用跳板机进行端口检测发现主机

发现目标主机(445端口开放的主机)

使用psexec64横向移动

然后填写提前收集到的主机账号和密码或者是套用账号密码

监听器选择上面生成的beacon监听器,会话要选择同一网段下的会话进行操作

执行上线,而且获得的是system权限

因为构建环境出现问题,所以最终没有上线,收集信息的时候管理员密码出现问题

在Linux中与这个相同的服务协议是ssh协议进行ssh隧道技术进行上线

多协议隧道技术--Spp

支持的协议:tcp udp icmp http kcp quic

支持的类型:正向连接反向连接 sockets5正向连接 sockets反向连接

服务端:监听本地的ICMP数据

这样做做的 目的是如果数据直接以tcp流量的数据进行传递的话,由于防火墙的设置流量会被封锁,但是我们将tcp流量转发到本地其他端口(出网端口)变为了icmp数据出网

生成的tcp协议的木马,先生成一个tcp的本地后门,利用项目本地tcp流量转化为icmp的流量进行出网,生成的是8082的后门上线的8081

在服务端运行spp

整个流程就是服务端监听icmp的流量,客户端生成本地的tcp木马,利用工具将tcp木马转化为icmp流量出去,为此我们生成木马是本地端口的木马,监听木马是转发目标主机的ip和端口

因为没有Linux主机的公网主机,以下截图取自小迪课堂

生成两个监听器

生成本地木马

执行上线

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

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

相关文章

元数据管理Atlas

文章目录 一、Atlas概述1、Atlas入门2、Atlas架构原理 二、Atlas安装1、安装环境准备1.1 安装Solr-7.7.31.2 Atlas2.1.0安装 2、Atlas配置2.1 Atlas集成Hbase2.2 Atlas集成Solr2.3 Atlas集成Kafka2.4 Atlas Server配置2.5 Kerberos相关配置2.6 Atlas集成Hive 3、Atlas启动 三、…

一次配置Docker环境的完整记录

一次配置Docker环境的完整记录 Docker环境搭建报错与解决报错一报错二报错三 Docker环境搭建 本节介绍了一次配置docker环境的完整记录: 编写Dockerfile文件: FROM pytorch/pytorch:1.10.0-cuda11.3-cudnn8-develRUN rm /etc/apt/sources.list.d/cuda.l…

【每日力扣】15. 三数之和与11. 盛最多水的容器

🔥 个人主页: 黑洞晓威 😀你不必等到非常厉害,才敢开始,你需要开始,才会变的非常厉害 15. 三数之和 给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k 且 j ! k…

安全认证Kerberos详解

文章目录 一、Kerberos入门与使用1、Kerberos概述1.1 什么是Kerberos1.2 Kerberos术语1.3 Kerberos认证原理 2、Kerberos安装2.1 安装Kerberos相关服务2.2 修改配置文件2.3 其他配置与启动 3、Kerberos使用概述3.1 Kerberos数据库操作3.2 Kerberos认证操作 二、Hadoop Kerberos…

10个常用的损失函数及Python代码实现

本文深入理解并详细介绍了10个常用的损失函数及Python代码实现。 什么是损失函数? 损失函数是一种衡量模型与数据吻合程度的算法。损失函数测量实际测量值和预测值之间差距的一种方式。损失函数的值越高预测就越错误,损失函数值越低则预测越接近真实值…

Day99:云上攻防-云原生篇K8s安全实战场景攻击Pod污点Taint横向移动容器逃逸

目录 云原生-K8s安全-横向移动-污点Taint 云原生-K8s安全-Kubernetes实战场景 知识点: 1、云原生-K8s安全-横向移动-污点Taint 2、云原生-K8s安全-Kubernetes实战场景 云原生-K8s安全-横向移动-污点Taint 如何判断实战中能否利用污点Taint? 设置污点…

【项目实战】记录一次PG数据库迁移至GaussDB测试(上)

目录 一、说明 1.1、参考文档 1.2、注意事项 1.3、环境基本情况 二、GaussDB新环境安装 2.1 配置操作环境变量 2.1.1 关闭防火墙 步骤1 执行以下命令,检查防火墙是否关闭。 步骤2 执行以下命令,关闭防火墙并禁止开机启动。 步骤3 修改/etc/sel…

济南大学微软校区教室OLED透明屏项目报告

济南大学微软校区教室OLED透明屏项目报告 产品:55寸OLED透明屏 项目时间:2024年04月 项目地点:山东济南 一、项目概述 本次项目旨在为济南大学微软校区的教室配备先进的55寸OLED透明屏,以满足现代化教学需求,提升教学…

虹科Pico汽车示波器 | 免拆诊断案例 | 2016款保时捷911 GT3 RS车发动机异响

一、故障现象 一辆2016款保时捷911 GT3 RS车,搭载4.0 L水平对置发动机(型号为MA176),累计行驶里程约为4.2万km。车主反映,1星期前上过赛道,现在发动机有“哒哒”异响。 二、故障诊断 接车后试车&#xff…

Vue3 + Element-Plus 使用 Table 预览图片发生元素遮挡

Vue3 Element-Plus 使用 Table 预览图片发生元素遮挡 问题代码问题重现解决方法最终效果 问题代码 <el-table-column label"视频" align"center"><template #default"scope" style"display: flex;"><div style"…

Keepalived+LVS+nginx搭建nginx高可用集群

一、简介 nginx是一款非常优秀的反向代理工具&#xff0c;支持请求分发&#xff0c;负载均衡&#xff0c;以及缓存等等非常实用的功能。在请求处理上&#xff0c;nginx采用的是epoll模型&#xff0c;这是一种基于事件监听的模型&#xff0c;因而其具备非常高效的请求处理效率…

Qt 4 QPushButton

Qt 常用控件 QPushButton 实例 Push Button:命令按钮。 入口文件 main.cpp #include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]) {QApplication a(argc, argv);MainWindow w;w.show();return a.exec(); }头文件 mainwindow.h …

【C 数据结构】单链表

文章目录 【 1. 基本原理 】1.1 链表的节点1.2 头指针、头节点、首元节点 【 2. 链表的创建 】2.0 创建1个空链表&#xff08;仅有头节点&#xff09;2.1 创建单链表&#xff08;头插入法&#xff09;*2.2 创建单链表&#xff08;尾插入法&#xff09; 【 3. 链表插入元素 】【…

rabbitmq每小时自动重启

引言 找了半天&#xff0c;最后通过系统日志发现是因为执行 systemctl restart rabbitmq-server 命令无法返回回调 systemctl 导致超时&#xff0c;自动关机。怀疑是 rabbitmq 与 systemctl 冲突&#xff0c;后 mq 升级版本已修复&#xff0c;可参考&#xff1a;https://github…

golang-基础语法

make 和 new 的区别 make 和 new 都是用来分配内存 make 只能对 slice map channel 进行初始化结构体实例。new 可以对任意类型进行初始化make 用于分配数据对象的具体实例&#xff0c;new 用于分配数据类型的默认值&#xff0c;并返回该数据的指针。 new 出来的 slice 、ma…

springboot Logback 不同环境,配置不同的日志输出路径

1.背景&#xff1a; mac 笔记本开发&#xff0c;日志文件写到/data/logs/下&#xff0c;控制台报出&#xff1a;Failed to create parent directories for [/data/logs/........... 再去手动在命令窗口创建文件夹data&#xff0c;报Read-only file system 2.修改logback-spri…

(C++) 稀疏表Sparse Table

目录 一、介绍 1.1 倍增 1.2 稀疏表ST 二、原理 三、代码实现 3.1 创建稀疏表 3.2 初始化数值 3.3 ST查询 一、介绍 1.1 倍增 倍增的思想是在数据空间特别大的时候&#xff0c;快速进行查找搜索而使用的。例如想要在一个数据量为n的递增数组中查找到等于x的下标&#x…

算法|基础算法|高精度算法

基础算法|位运算 1.高精度加法 2.高精度减法 3.高精度乘法 4.高精度除法 心有猛虎&#xff0c;细嗅蔷薇。你好朋友&#xff0c;这里是锅巴的C\C学习笔记&#xff0c;常言道&#xff0c;不积跬步无以至千里&#xff0c;希望有朝一日我们积累的滴水可以击穿顽石。 高精度加法 …

图灵奖得主AviWigderson:随机性与AI深度融合,引领计算科学新篇章

近日&#xff0c;理论计算机科学领域的杰出代表Avi Wigderson教授荣获了享有“计算机界诺贝尔奖”美誉的图灵奖&#xff0c;以表彰他对计算中随机性和伪随机性研究的杰出贡献。这一荣誉不仅彰显了Wigderson教授在计算理论领域的卓越成就&#xff0c;也为当前热门的AI和深度学习…

打破常规,重新定义PMP备考之路

今天我想和大家聊聊一个我们都不陌生的话题——PMP备考。你是不是也在备考的苦海中挣扎&#xff0c;或是听说过各种“速成”的神话&#xff1f;&#x1f914; 最近读到一篇文章&#xff08;来着圣略PMP培训讲师老杨&#xff09;&#xff0c;让我对PMP备考有了新的认识。原来&a…