快速寻找可以构建出网通信隧道的计算机

news2024/11/26 1:47:24

点击星标,即时接收最新推文

743dab61ce458980a11e295b6feb85cc.png

本文选自《内网安全攻防:红队之路》

扫描二维码五折购书

为加强内网的安全防范,安全管理员往往会限制内网计算机访问互联网,当然不同机构的限制策略是不一样的,有的完全阻断了内网计算机访问互联网;有的机构会设置只允许白名单中的计算机访问互联网或者允许特定协议出网;有的机构会设置只允许访问特定网站,比如Baidu、Github等。

在没有获取到内网防火墙的权限,不知道完整的防火墙规则前,攻击者只能尝试在各种时间段、各个计算机上通过各种协议访问互联网,进而找到能够构建出网通信隧道的计算机。

TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP协议不仅仅指的是TCP 和IP两个协议,而是指一个由FTP、SMTP、TCP、UDP、IP等协议构成的协议簇,同时是Internet最基本的协议、Internet国际互联网络的基础,由网络层的IP协议和传输层的TCP协议组成。TCP/IP 定义了电子设备如何连入因特网,以及数据如何在它们之间传输的标准。

TCP/IP协议中最重要的特点就是分层。由上往下分别为应用层,传输层,网络层,数据链路层,物理层。如图所示。

b180ecd995d712e0f02034f142edcea3.png

TCP/IP协议

常用的隧道列举如下。

  • 网络层:IPv6隧道、ICMP隧道、GRE隧道。

  • 传输层:TCP隧道、UDP隧道、常规端口转发。

  • 应用层:SSH隧道、HTTP隧道、HTTS隧道、DNS隧道。

可用于构建出网通信隧道的协议

判断内网的连通性是指判断机器能否上外网等。要综合判断各种协议(ICMP、TCP、UDP、HTTP、HTTPS、DNS等)及端口通信的情况。常见的允许流量流出的端口有80、8080、443、53、110、123等。常用的内网连通性判断方法如下。

1.ICMP协议

执行命令“ping <IP地址或域名>”,如图所示。

12cd85d97037e3cf03bead14640cc14d.png

ICMP协议探测

2.TCP协议

探测TCP协议可以使用curl、telent、nc、Test-PortConnectivity或者端口扫描器。netcat(简称nc)被誉为网络安全界的“瑞士军刀”,是一个短小精悍的工具,通过使用TCP或UDP协议的网络连接读写数据。

使用nc工具,执行“nc <IP地址 端口号>”命令,如图3-3所示。

100678090935b38f3828cf4320e7ba70.png

TCP协议探测

3.UDP协议

通过UDP协议上线的速度要快很多,而且不那么容易被防守方发现。探测UDP协议可以使用telent、nc或者Test-PortConnectivity。

Test-PortConnectivity用法如下:

nc -lvup 53      # 在服务器上监听UDP端口
C:\Users\test\Desktop>powershell -exec bypass Import-Module .\TestPortConnectivity.ps1;Test-PortConnectivity -Source
'localhost' -RemoteDestination '192.168.130.129' 53 -protocol UDP
DESKTOP-6G7FO7V Not connected to 192.168.130.129 on UDP port : 53
# 在服务器上监听UDP端口

4.HTTP协议

探测HTTP协议可以使用curl、certutil。curl是一个利用URL规则在命令行下工作的综合文件传输工具,支持文件的上传和下载。curl命令不仅支持HTTP、HTTPS、FTP等众多协议,还支持POST、Cookie、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。Linux操作系统自带curl命令。在Windows操作系统中,需要下载并安装curl命令。

在使用curl时,需要执行“curl <IP地址: 端口号>”命令。如果远程主机开启了相应的端口,会输出相应的端口信息,如图所示。如果远程主机没有开通相应的端口,则没有任何提示。按“Ctrl+C”键即可断开连接。

fd6e4e45fa009c0c471f09300f91be9e.png

HTTP协议探测

5 . HTTPS协议

Windows操作系统下从Win10版本开始系统自带了curl的命令,Linux系统一般也有curl的命令,对于没有curl的系统,也可以上传一个curl到目标计算机上。

curl -k -vv -m 10 https://www.baidu.com
curl -k -vv -m 10 https://IP

当https可以访问百度但是不能访问我们的上线服务器时,可能的原因有:
1. 我们的服务器没有绑定域名,直接使用IP访问;
2. 我们的服务器是红标证书;
3. 我们的服务器在黑名单里;
4. 目标限制了仅允许访问特定地区的服务器;
5. 目标限制了仅允许访问特定域名的服务器;(可以给Curl加一个 -H "Host: www.baidu.com" 参数进行测试)

6.DNS协议

DNS协议上线比较隐蔽,但是速度较慢。在进行DNS连通性检测时,Windows平台下常用的命令为nslookup、LINUX平台下常用命令为dig。

nslookup是Windows操作系统自带的DNS探测命令,其用法如下所示。在没有指定vps-ip时,nslookup会从系统网络的TCP/IP属性中读取DNS服务器的地址。具体的使用方法是:打开Windows操作系统的命令行环境,输入“nslookup 域名”命令,按“回车”键,如图所示。

nslookup www.baidu.com

181f77c59536cbb3c8532e3d8d2a71d6.jpeg

DNS协议探测-nslookup

dig是Linux默认自带的DNS探测命令,其用法如下所示。在没有指定vps-ip时,dig会到 /etc/resolv.conf文件中读取系统配置的DNS服务器的地址。如果vps-ip为192.168.43.1,将解析百度网的IP地址,说明目前DNS协议是连通的,如图3-6所示。具体的使用方法,可在Linux命令行环境中输入“dig -h”命令获取。

dig@vps-ip www.baidu.com

38ce001fcfa5c13782528c80b48477de.png

DNS协议探测-dig

还有一种情况是流量不能直接流出,需要在内网中设置代理服务器,常见于通过企业办公网段上网的场景。常用的判断方法如下。

  • 查看网络连接,通过netstat –ano命令判断是否存在与其他机器的8080(不绝对)等端口的连接。如果有可以尝试运行“ping -n 1 -a ip”命令进一步获得主机名。

  • 查看内网中是否有主机名类似于“proxy”的机器。

  • 查看IE浏览器的直接代理。

  • 根据pac文件的路径(可能是本地路径,也可能是远程路径),将其下载下来并查看。

  • 执行如下命令,利用curl工具进行确认。

curlwww.baidu.com            //不通
curl –x proxy-ip:port www.baidu.com    //通

也可以使用在线平台DNSLog.cn探测。现在平台上申请一个域名(iruh9g.dnslog.cn),然后在目标上通过ping命令测试解析(这里将当前计算机名环境变量 %computername% 加入到访问的url中,这样在web访问日志中,可以直接确定能出网的计算机,而不需要去返回结果),如图所示:

aa310781a32b3ffab84be21bc1e825d8.png

HTTP协议探测

成功解析后,可以在平台上查看解析记录,如图所示。

515ab1ef6179b92fe5353e29a2bf1f66.png

HTTP协议探测

—  实验室旗下直播培训课程  —

e633a3f7e042917573d229aff1508111.png

fcd75325d2fa82bf57d55ac6b12ba9e1.jpeg

b27f2b911f63780764ab50239e3fdaef.jpegb0224b0272b684e9fedb84dec7248e65.png

569d9db23f57c925a6f95aba150746b4.png

10cf78e79825edf074900862800d40a7.jpeg

e53253afa3105114be0b83d094d5a36a.jpeg

f6745d129e7426bdf17449255c79134a.jpeg

3f5dfd0251c0674c8b8a1182144e5a21.png

和20000+位同学加入MS08067一起学习

3c6308414c1ce4cb65aae2b08b139ac4.gif

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

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

相关文章

langchain LCEL,prompt模块,outputparse输出模块

目录 基本代码 prompt模块 prompt模版控制长度 outputparse格式化输出 并行使用调用链 LangChain表达式语言&#xff0c;或者LCEL&#xff0c;是一种声明式的方式&#xff0c;可以轻松地将链条组合在一起 langchian 可以使用 通义千问&#xff0c;我们用通义千问&#x…

openkylin系统通过网线连接ubuntukylin系统上网攻略

openkylin系统通过网线连接ubuntukylin系统上网攻略 主机1&#xff1a;x64 amd &#xff0c;系统&#xff1a;ubuntukylin 22.04 &#xff0c;状态&#xff1a;通过wifi连接热点进行上网&#xff0c;并共享网络。 主机2&#xff1a;x64 intel &#xff0c;系统&#xff1a;ope…

阿里一面:如何将重复性比较高的 String 类型的地址信息从 20GB 降到几百兆?...

这次应该是互联网及软件行业的第三次寒潮&#xff0c;大家在寒潮中一定要继续保持学习&#xff0c;寒潮挺过去以后还是会迎来新的发展机遇。 有粉丝去阿里面试&#xff0c;跟码哥分享了其中一题面试问题「如何将重复性比较高的 String 类型的地址信息从 20GB 降到几百兆&#x…

linux创建文件、linux创建文件的几种方式、touch、echo、cat、vi、vim

文章目录 一、创建文件1.1、touch1.2、echo1.3、cat1.4、vi或vim 一、创建文件 1.1、touch touch命令&#xff1a;用于创建一个新的空文件或者更新已存在文件的访问和修改时间。 &#xff08;1&#xff09;如果目标文件不存在&#xff0c;则新建一个文件 touch demo.txt&am…

AcWing 1388. 游戏(每日一题)

原题链接&#xff1a;1388. 游戏 - AcWing题库 玩家一和玩家二共同玩一个小游戏。 给定一个包含 N 个正整数的序列。 由玩家一开始&#xff0c;双方交替行动。 每次行动可以在数列的两端之中任选一个数字将其取走&#xff0c;并给自己增加相应数字的分数。&#xff08;双方…

Vscode设置滚轮进行字体大小的调节

Vscode设置滚轮进行字体大小的调节 正常的话按 ctrl 或者 ctrl - 进行字体的大小调节 1.打开Vscode&#xff0c;找打设置的图标&#xff0c;在点击设置&#xff0c;或者直接使用快捷键&#xff0c;【ctrl ,】 2. 在搜索框搜索Font Ligatures 3.双击进入settings.json ,找到如…

[大模型]# Yi-6B-Chat Lora 微调

Yi-6B-Chat Lora 微调 概述 本节我们介绍如何基于 transformers、peft 等框架&#xff0c;对 Yi-6B-Chat 模型进行 Lora 微调。Lora 是一种高效微调方法&#xff0c;深入了解其原理可参见博客&#xff1a;知乎|深入浅出Lora。 本节所讲述的代码脚本在同级目录 04-Yi-6B-Chat…

【教学类-52-04】20240412动物数独(4宫格)空1-空15

作品展示 背景需求&#xff1a; 【教学类-52-03】20240412动物数独&#xff08;4宫格&#xff09;难度1-9 打印版-CSDN博客文章浏览阅读603次&#xff0c;点赞20次&#xff0c;收藏8次。【教学类-52-03】20240412动物数独&#xff08;4宫格&#xff09;难度1-9 打印版https://…

Razzashi Raptor

拉扎什迅猛龙 Razzashi Raptor 95000金&#xff08;游戏币&#xff09;比老虎便宜多了&#xff0c;捡漏啊 为啥我开团都不出&#xff0c;很生气&#xff0c;去打架&#xff01;&#xff01;

【题目】【信息安全管理与评估】2022年国赛高职组“信息安全管理与评估”赛项样题2

【题目】【信息安全管理与评估】2022年国赛高职组“信息安全管理与评估”赛项样题2 信息安全管理与评估 网络系统管理 网络搭建与应用 云计算 软件测试 移动应用开发 任务书&#xff0c;赛题&#xff0c;解析等资料&#xff0c;知识点培训服务 添加博主wx&#xff1a;liuliu548…

在线药房数据惨遭Ransomhub窃取,亚信安全发布《勒索家族和勒索事件监控报告》

本周态势快速感知 本周全球共监测到勒索事件119起&#xff0c;与上周相比勒索事件有所增长。 本周Blacksuit是影响最严重的勒索家族&#xff0c;Ransomhub和Blackbasta恶意家族紧随其后&#xff0c;从整体上看Lockbit3.0依旧是影响最严重的勒索家族&#xff0c;需要注意防范。…

《五》QListWidget列表框

QListWidgetQListWidget和QListWidgetItem QListWidget 是qt中的列表框控件&#xff0c;它用于显示多个列表项&#xff0c;列表项对应的类是QListWidgetItem. QListWidget列表框的创建 QListWidget 类的继承关系如下&#xff1a; QListWidget -> QListView -> QAbs…

SonarQube 9.9.4 LTS社区版安装

目标 安装个SonarQube社区版. 安装SonarQube9.9.4 LTS社区版 https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube-9.9.4.87374.zip # 切换到安装目录 cd /opt # 下载安装包 sudo wget https://binaries.sonarsource.com/Distribution/sonarqube/sonarqube…

中国移动校园招聘相关笔试题整理

目录 公司文化文档更新时间 公司文化 24年的 改正地方&#xff1a; 世界电信日&#xff1a;1969年5月17日18年的企业文化题 改正地方&#xff1a; 中国移动企业发展定位是&#xff1a;世界一流企业 中国移动的企业文化体系主要由核心价值观、使命和愿景三部分构成。 核心价值观…

基于Springboot的自习室预订系统

基于SpringbootVue的自习室预订系统的设计与实现 开发语言&#xff1a;Java数据库&#xff1a;MySQL技术&#xff1a;SpringbootMybatis工具&#xff1a;IDEA、Maven、Navicat 系统展示 用户登录页 网站首页 公告信息 留言反馈 后台管理 学生信息管理 公告信息管理 留言…

004Node.js常用快捷键

1.常用的终端命令&#xff1a; &#xff08;1&#xff09;del 文件名&#xff1a; 删除文件 &#xff08;2&#xff09;ipconfig: 查看IP命令 &#xff08;3&#xff09;mkdir 目录名 &#xff1a;在当前目录新建指定目录 &#xff08;4&#xff09;rd 目录名&#xff1a;在当前…

面经:Cassandra分布式NoSQL数据库深度解读

作为一位热衷于分享技术知识的博主&#xff0c;我深知在当今大数据时代&#xff0c;掌握分布式数据库尤其是Apache Cassandra的原理与实践对于提升个人技能和应对面试挑战的重要性。本篇博客将从我的面试经验出发&#xff0c;结合对Cassandra核心特性的理解&#xff0c;深入探讨…

万兆以太网MAC设计(3)MAC_RX模块添加CRC

文章目录 前言一、并行CRC处理二、添加CRC处理的MAC_RX模块三、总结 前言 上文介绍的MAC_RX模块实现了接受字节对齐的功能&#xff0c;但是尾端存在4字节CRC校验未处理。 一、并行CRC处理 前面在千兆以太网里对CRC代码和使用进行了介绍&#xff0c;千兆里面数据是一个一个by…

c++24.4.13-const修饰指针

1、const修饰指针-常量指针 2、const修饰常量-指针常量 3、const既修饰指针又修饰常量 示例

使用yolov8实现自动车牌识别(教程+代码)

该项目利用了一个被标记为“YOLOv8”的目标检测模型&#xff0c;专门针对车牌识别任务进行训练和优化。整个系统通常分为以下几个核心步骤&#xff1a; 数据准备&#xff1a; 收集包含车牌的大量图片&#xff0c;并精确地标记车牌的位置和文本信息。数据集可能包含各种环境下的…