网络安全攻防对抗之隐藏通信隧道技术整理

2023-09-17 17:37:09

        完成内网信息收集工作后,渗透测试人员需要判断流量是否出得去、进得来。隐藏通信隧道技术常用于在访问受限的网络环境中追踪数据流向和在非受信任的网络中实现安全的数据传输。

一、隐藏通信隧道基础知识

(一)隐藏通信隧道概述

        一般的网络通信,先在两台机器之间建立TCP连接,然后进行正常的数据通信。在知道IP地址的情况下,可以直接发送报文;如果不知道IP地址,就需要将域名解析成IP地址。在实际的网络种,通常会通过各种边界设备、软/硬件防火墙甚至入侵检测系统来检查对外连接的情况,如果发现异常,就会对通信进行阻断。

        什么是隧道?这里的隧道,就是一种绕过端口屏蔽的通信方式。防火墙两端的数据包通过防火墙所允许的数据包类型或者端口进行封装,然后穿过防火墙,与对方进行通信。当被封装的数据包到达目的地,将数据包还原,并将还原后的数据包发送到相应的服务器上。

        常见的隧道列举如下:

  1. 网络层:IPv6隧道、ICMP隧道、GRE隧道
  2. 传输层:TCP隧道、UDP隧道、常规端口转发
  3. 应用层:SSH隧道、HTTP隧道、HTTPS隧道、DNS隧道

(二)判断内网的连通性

1. ICMP协议

        ping www.baidu.com

2. TCP协议

        netcat被誉为网络安全界的“瑞士军刀”,是一个短小精悍的工具,通过使用TCP或UDP协议的网络连接读取数据。

        nc -zv www.baidu.com 443

3. HTTP协议

        使用curl命令测试

        curl 百度一下,你就知道

4. DNS协议

        使用nslookup或者dig测试DNS连通性

        dig @vps-ip www.baidu.com

二、网络层隧道技术

(一)IPv6隧道

        IPv6隧道技术是指通过IPv4隧道技术传送IPv6数据报文的技术。

        支持IPv6的隧道工具:socat、6tunnel、nt6tunnel等。

(二)ICMP隧道

        ICMP隧道见到、实用,是一个比较特殊的协议。在一般的通信协议里,如果两台设备要进行通信,肯定需要开放端口,而在ICMP协议下就不需要。最常见的ICMP消息为ping命令的回复,攻击者可以利用命令行得到比回复更多的ICMP请求。在通常情况下,每个ping命令都有相对应的回复与请求。

        在一些网络环境中,如果攻击者使用各类上层隧道(比如HTTP隧道、DNS隧道等)进行的操作都失败了,常常会通过ping命令访问远程计算机,尝试建立ICMP隧道,将TCP/UDP数据封装到ICMP的ping数据包中,从而穿过防火墙(如果防火墙屏蔽了ping数据包,则此方法也不行),实现不受限制的网络访问。

        常用的ICMP隧道工具有icmpsh、pingtunnel、icmptunnel、powershell icmp等。

        下面是一个测试pingtunnel的实验:

https://blog.csdn.net/u013930899/article/details/132943025?spm=1001.2014.3001.5501

三、传输层隧道技术

        传输层技术包括TCP隧道、UDP隧道和常规端口转发等。在渗透测试中,如果内网防火墙阻止了对指定端口的访问,在获得目标机器的权限后,可以使用IPTABLES打开指定端口。如果内网中存在一系列防御系统,TCP、UDP流量会被大量拦截。

        传输层隧道技术常用的工具有lcx端口转发、netcat、PowerCat等。

四、应用层隧道技术

        在内网中建立一个稳定、可靠的数据通道,对渗透测试工作来说具有重要的意义。应用层的隧道通信技术主要利用应用软件提供的端口来发送数据。常用的隧道协议有SSH、HTTP、HTTPS和 DNS。

        HTTP服务代理用于将所有的流量转发到内网。常见的代理工具有reGeorg、meterpreter、tunna等。

        reGeorg的主要功能是把内网服务器端口的数据通过HTTP/HTTPS隧道转发到本机,实现基于HTTP协议的通信。reGeorg脚本的特征非常明显,很多杀毒软件都会对其进行查杀。

        dnscat2使用DNS协议创建加密的C&C通道,通过预共享密钥进行身份验证;使用shell及DNS查询类型(TXT、MX、CNAME、A、AAAA),多个同时进行的会话类似于SSH中的隧道。

        iodine可以通过一台DNS服务器制造一个IPv4数据通道,特别适合在目标主机只能发送DNS请求的网络环境中使用。

更多推荐

1.测试 —— 答疑篇

什么是软件测试:软件测试是不是就是找bug?软件测试就是证明软件不存在错误的过程软件测试就是为了证明程序能够正确运行刚新买来一部手机,我们要干什么?一场考试,做完一遍题目之后,进行一遍检查,就是在"测试"买一台电视,安装好之后打开试试看能不能正常使用,也是在"测试"概念:验证软件功能是否满足用户的需求。1979年,Gl

【JavaEE】多线程(一)

多线程(一)文章目录多线程(一)进程操作系统进程PCB属性进程的状态进程的优先级进程的上下文CPU寄存器进程的记账信息虚拟地址空间线程线程与进程的区别Java进行多线程编程在了解多线程之前,我们先聊聊进程进程而了解进程前,我们还需聊聊操作系统~操作系统简单来理解就是搞管理的软件。对下:管理好各种硬件设备对上:要给应用程

什么是HTML5中的Web存储API,包括LocalStorage和SessionStorage?它们的区别是什么?

聚沙成塔·每天进步一点点⭐专栏简介⭐Web存储API和区别⭐LocalStorage(本地存储)⭐SessionStorage(会话存储)⭐区别⭐写在最后⭐专栏简介前端入门之旅:探索Web开发的奇妙世界欢迎来到前端入门之旅!感兴趣的可以订阅本专栏哦!这个专栏是为那些对Web开发感兴趣、刚刚踏入前端领域的朋友们量身打造的

机器学习——贝叶斯(三种分布)/鸢尾花分类分界图/文本分类应用

0、前言:机器学习中的贝叶斯的理论基础是数学当中的贝叶斯公式。这篇博客强调使用方法,至于理论未作深究。机器学习中三种类型的贝叶斯公式:高斯分布(多分类)、多项式分布(文本分类)、伯努利分布(二分类任务)贝叶斯算法优点:对小规模数据表现好,能处理多分类任务,常用于文本分类。缺点:只能用于分类问题。1、高斯分布的贝叶斯算法

长安汽车:基于云器Lakehouse一体化数据平台,建立智能互联时代的领先优势丨案例研究

长安汽车智能化研究院是中国长安汽车集团有限责任公司旗下专注于汽车智能化技术研究和创新的研发机构。其愿景是通过持续创新和技术突破,实现汽车智能驾驶、智能网联和智能交通的全面发展,提供更安全、更便捷、更智能的出行体验,并成为中国汽车智能化领域的领军企业。智能化是汽车工业发展近百年来对汽车功能的一次重新定义,它旨在利用大数据

利用python工具提取多个word中的图片和表格

1.前言由于工作因素,经常要对多个文档内容进行查重,文字类可以借助查重工具辅助,但图片和表格只能依靠鼠标滚轮还有笔者的打工眼。久而久之,眼睛废了,肩颈也吃不消了(-.-)。于是乎,就想用脚本批量导出,从而提高效率。笔者非软件专业,所以只能请ChatGPT当导师了,经过多次修改,总算达到了预期效果。大佬们如果有更好的办法

基于STM32设计的温室大棚种植监测系统(onenet+GPRS通信)

一、设计简述基于STM32设计的温室大棚种植监测系统(OneNet+GPRS通信)1.1设计需求随着社会经济的快速发展和人们对食品质量安全的日益关注,温室大棚越来越受到人们的青睐。温室大棚可以提供良好的生长环境,使得蔬菜、水果等植物获得更好的生长条件,从而提高产量和质量。然而,在温室大棚内,温度、湿度、二氧化碳含量、光

肖sir___环境的讲解__001

环境的讲解一、搭建环境此测试环境主要用于功能测试、寻找bug、编写后台测试点、熟悉环境的架构,搭建流程二、搭建多有米前后台所需要的工具包1、虚拟机(centos6.5)2、数据库3、代码包4、服务器5、数据库脚本6、jdk三、搭建测试环境实战1、将本地的服务器上传到linux中,并解压tar-zxvf服务器包名2、上传

利用cms主题构造木马(CVE-2022-26965)

简介CVE-2022-26965是PluckCMS4.7.16版本存在一个远程shell上传执行漏洞。攻击者可利用此漏洞通过构造恶意的主题包进行上传并执行,未经授权访问服务器,造成潜在的安全隐患。过程1.打开环境,查看源码,发现login.php2.进入查看,登陆页面,弱口令admin进行登录,全英文界面,可以翻译的哈

Hyperopt:分布式异步超参数优化(Distributed Asynchronous Hyperparameter Optimization)

1、概述在深度学习的训练模型过程中,参数的优化是一个比较繁琐的过程,一般使用网格搜索Gridsearch与人工搜索Manualsearch,所以这个参数优化有时候看起来就像太上老君炼丹,是一个有点玄的东西。那有没有一种可以自动去调优的工具呢?恩,本节介绍的这个Hyperopt工具就是这个用途。Hyperopt是一个Py

下一代实时数据库:Apache Doris 【一】简介

文章目录第1章Doris简介1.1Doris概述1.2Doris架构后记第1章Doris简介1.1Doris概述ApacheDoris由百度大数据部研发(之前叫百度Palo,2018年贡献到Apache社区后,更名为Doris),在百度内部,有超过200个产品线在使用,部署机器超过1000台,单一业务最大可达到上百TB

热文推荐