OSCP 渗透测试:网络抓包工具的使用指南
在 OSCP 考试和渗透测试中,网络数据分析是至关重要的技能。无论是嗅探明文密码、分析恶意流量,还是溯源攻击,抓包工具都是我们的得力助手。
本文将介绍 OSI 七层网络模型 及其在网络分析中的作用,并详细讲解 Wireshark 和 tcpdump 这两款常见的抓包工具,帮助你在渗透测试中高效分析流量数据。
一、OSI 七层模型
All People Seem To Need Data Processing!
OSI(Open Systems Interconnection)七层模型是计算机网络的标准框架,每一层都承担不同的功能。在分析网络流量时,理解这个模型可以帮助我们更快地定位问题、识别漏洞。
| 层级 | 功能 | 示例协议/技术 | 作用 |
|---|---|---|---|
| 应用层(Application) | 处理应用程序请求 | HTTP、SMTP、FTP、DNS | 处理用户数据 |
| 表示层(Presentation) | 数据格式转换 | WMV、JPEG、TLS/SSL | 数据加密、解码 |
| 会话层(Session) | 管理会话连接 | NetBIOS、RPC | 维持主机间通信 |
| 传输层(Transport) | 可靠/无连接传输 | TCP、UDP | 传输数据流 |
| 网络层(Network) | IP 地址、路由 | IPv4、IPv6、ICMP | 逻辑寻址、路由转发 |
| 数据链路层(Data Link) | MAC 地址、交换 | 以太网、PPP、ARP | 处理物理地址 |
| 物理层(Physical) | 传输比特流 | 光纤、网线、Wi-Fi | 传输电信号、无线信号 |
📌 分析网络流量时,关注重点:
- 应用层(Application):寻找 HTTP 请求、DNS 查询、SMTP 邮件通信。
- 传输层(Transport):分析 TCP 端口扫描、UDP 数据包。
- 网络层(Network):查看 IP 地址,识别攻击来源。
- 数据链路层(Data Link):过滤 MAC 地址,溯源攻击设备。
二、Wireshark:图形化抓包分析工具
Wireshark 是一款强大的 GUI(图形界面)网络协议分析工具,支持实时抓包和回溯分析。它可以解析几乎所有常见的协议,并且能够直观地展示网络流量数据。
1. 追踪 TCP/UDP 流量
在分析网络流量时,我们通常需要关注特定的 TCP/UDP 连接。Wireshark 提供了“Follow Stream”功能,可以直观地查看完整的会话数据。
🔹 步骤:
- 在 Wireshark 里打开
.pcap抓包文件(或者直接在网络接口上实时抓包)。 - 右键点击感兴趣的数据包,选择 “Follow TCP Stream” 或 “Follow UDP Stream”。
- 这样就能看到完整的 TCP/UDP 会话数据,比如明文 HTTP 请求、Telnet/FTP 传输的密码等。
2. Wireshark 数据包结构解析
在 Wireshark 里,每个网络数据包都可以分为多个协议层级,每一层都承载着不同的信息。
📌 数据包结构分解(从底层到高层)
(1)Frame - 物理层
- 物理层数据,包括帧编号和接收的数据大小(字节数)。
- 主要用于分析数据包的完整性和丢失情况。
(2)Ethernet II - 数据链路层
- 这里可以看到 MAC 地址信息:
- 源 MAC 地址(Source MAC)
- 目的 MAC 地址(Destination MAC)
- 还可以查看传输介质类型,如以太网(Ethernet)。
(3)IPv4 / IPv6 - 网络层
- 主要关注IP 地址:
- 源 IP(Source IP):谁发出的数据?
- 目标 IP(Destination IP):数据发往哪里?
- 这层数据对溯源攻击、找出目标服务器的真实 IP 很有用。
(4)TCP/UDP - 传输层
- 关注端口号和会话状态:
- 源端口 & 目标端口(Port)
- TCP 三次握手(SYN/ACK)
- UDP 无连接特性
(5)应用层(HTTP / DNS / FTP / SSH 等)
- 这里是应用层协议的数据,比如:
- HTTP:可以看到
GET /index.html这样的请求,甚至可能获取到明文密码。 - DNS:可以解析域名查询请求,找出目标主机访问过的地址。
- FTP/Telnet:这些老协议的用户名密码可能是明文传输的!
- SMTP/POP3/IMAP:邮件传输协议,可能泄露敏感的邮件内容。
- HTTP:可以看到
📌 实战技巧:
- 过滤 HTTP 请求:
http.request.method == "GET" - 过滤 DNS 查询:
dns.qry.name contains "target.com" - 查找 FTP/Telnet 明文密码:
ftp || telnet
三、tcpdump:终端抓包分析工具
tcpdump 是一个轻量级的命令行工具,适用于服务器环境(如 SSH 远程服务器)进行实时抓包和流量分析。
1. 读取 .pcap 文件
如果你已经有了 .pcap 抓包文件,可以用 tcpdump 查看数据包:
tcpdump -r password_cracking_filtered.pcap
2. 统计流量中的源 IP
想知道抓包文件里有哪些源 IP?可以用 awk 统计并排序:
tcpdump -n -r password_cracking_filtered.pcap | awk -F" " '{print $3 }' | sort | uniq -c | head
这条命令会:
- 解析
.pcap文件里的数据包 - 提取第 3 列(通常是源 IP 地址)
- 统计出现次数,并排序
- 显示最常见的前 10 个 IP 地址
📌 实战应用:用于找出攻击来源、识别哪些 IP 发起了最多的连接请求。
3. 过滤特定 IP 的数据包
如果只想查看某个 IP 发送的流量,可以用 src host 过滤:
tcpdump -n src host 172.16.40.10 -r password_cracking_filtered.pcap
如果想看目标是这个 IP 的数据包,用 dst host 过滤:
tcpdump -n dst host 172.16.40.10 -r password_cracking_filtered.pcap
📌 实战应用:用于分析某台目标机的通信,看看它都在和哪些 IP 交互。
4. 过滤特定端口的流量
有时候,我们只想查看某个端口(如 Web 服务器 port 80/81)的数据包,可以这样做:
tcpdump -n port 81 -r password_cracking_filtered.pcap
📌 实战应用:可以用来分析 Web 服务器的 HTTP 流量,看看有没有可利用的漏洞,比如 SQL 注入、未授权访问等。
5. 查看完整数据包内容
如果想看到数据包的完整 HEX 和 ASCII 内容,可以加 -X 参数:
tcpdump -nX -r password_cracking_filtered.pcap
📌 实战应用:
- 查找明文密码(如 FTP/Telnet 登录数据)
- 分析恶意代码(如嵌入在 HTTP 请求中的恶意 JS)
- 检查隐藏的数据传输(如 DNS 隧道、加密通信)
四、Wireshark vs tcpdump
| 功能 | Wireshark 🚀 | tcpdump 🖥️ |
|---|---|---|
| 是否有 GUI | ✅ 是 | ❌ 否(命令行) |
| 实时抓包 | ✅ 是 | ✅ 是 |
| 离线分析 .pcap | ✅ 是 | ✅ 是 |
| 协议解析 | ✅ 可视化解析 | ✅ 只能手动解析 |
| 适合环境 | 桌面端、GUI 分析 | 服务器、终端 SSH |
📌 总结建议:
- Wireshark 适合 GUI 分析,查看
.pcap文件时更直观。 - tcpdump 适合服务器环境,在远程主机上抓包更高效。
掌握这两款工具,可以让你的渗透测试能力更上一层楼!🔥
相关文章:
OSCP 渗透测试:网络抓包工具的使用指南
在 OSCP 考试和渗透测试中,网络数据分析是至关重要的技能。无论是嗅探明文密码、分析恶意流量,还是溯源攻击,抓包工具都是我们的得力助手。 本文将介绍 OSI 七层网络模型 及其在网络分析中的作用,并详细讲解 Wireshark 和 tcpdum…...
Android 进程间通信
什么是IPC? Android 进程间通信(IPC,Inter-Process Communication)是Android操作系统中不同进程间交换数据和资源的一种机制。由于Android是多任务操作系统,每个应用通常运行在自己的进程中,以提高安全性和…...
Kubernetes学习之通过Service访问Pod
一、基础概述 1.当通过deployment等controller动态创建和销毁pod使得每个pod都有自己的ip地址,当controller用新的pod替代发生故障的pod时,新的pod会分配到新的ip地址,那么客户端如何稳定的找到并访问pod提供的服务。 2.创建service service从…...
【Numpy核心编程攻略:Python数据处理、分析详解与科学计算】2.18 对象数组:在NumPy中存储Python对象
2.18 对象数组:在NumPy中存储Python对象 目录 #mermaid-svg-shERrGOBuM2rBzeB {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-shERrGOBuM2rBzeB .error-icon{fill:#552222;}#mermaid-svg-shERrGOBuM2rB…...
Web - CSS3基础语法与盒模型
概述 这篇文章是关于 Web 前端 CSS3 的基础语法与盒模型的讲解。包括 CSS3 层叠性及处理冲突规则、伪元素和新增伪类元素、属性选择器等。还介绍了文本与字体属性,如段落和行相关属性、字体文本属性。最后阐述了盒子模型,如元素隐藏、行内与块元素转换、…...
CSS知识总结
CSS(层叠样式表,Cascading Style Sheets)是一种用于描述网页内容视觉表现的样式语言,与HTML(结构)和JavaScript(行为)共同构成现代Web开发的三大核心技术。 一、基本概念 定义&…...
基于Spring Security 6的OAuth2 系列之十 - 授权服务器--刷新token
之所以想写这一系列,是因为之前工作过程中使用Spring Security OAuth2搭建了网关和授权服务器,但当时基于spring-boot 2.3.x,其默认的Spring Security是5.3.x。之后新项目升级到了spring-boot 3.3.0,结果一看Spring Security也升级…...
信息学奥赛一本通 2113:【24CSPJ普及组】小木棍(sticks) | 洛谷 P11229 [CSP-J 2024] 小木棍
【题目链接】 ybt 2113:【24CSPJ普及组】小木棍(sticks) 洛谷 P11229 [CSP-J 2024] 小木棍 【题目考点】 1. 思维题,找规律 【解题思路】 解法1:找规律 该题为:求n根木棍组成的无前导0的所有可能的数…...
安装hami的笔记
k3s环境下安装hami提示如下错误: "failed to “StartContainer” for “kube-scheduler” with InvalidImageName: "Failed to apply default image tag “registry.cn-hangzhou.aliyuncs.com/google_containers/kube-scheduler:v1.31.2k3s1”: 没有Inva…...
【区块链】区块链密码学基础
🌈个人主页: 鑫宝Code 🔥热门专栏: 闲话杂谈| 炫酷HTML | JavaScript基础 💫个人格言: "如无必要,勿增实体" 文章目录 区块链密码学基础引言一、哈希函数1.1 基本概念1.2 数学表达 二、非对称加密2.1…...
强化学习笔记(5)——PPO
PPO视频课程来源 首先理解采样期望的转换 变量x在p(x)分布下,函数f(x)的期望 等于f(x)乘以对应出现概率p(x)的累加 经过转换后变成 x在q(x)分布下,f(x)*p(x)/q(x) 的期望。 起因是:求最大化回报的期望,所以对ceta求梯度 具体举例…...
【C语言入门】解锁核心关键字的终极奥秘与实战应用(三)
目录 一、auto 1.1. 作用 1.2. 特性 1.3. 代码示例 二、register 2.1. 作用 2.2. 特性 2.3. 代码示例 三、static 3.1. 修饰局部变量 3.2. 修饰全局变量 3.3. 修饰函数 四、extern 4.1. 作用 4.2. 特性 4.3. 代码示例 五、volatile 5.1. 作用 5.2. 代码示例…...
寒假day10
第十天:请写出以下几个数据的类型 整数 a int a的地址 int* 存放a的数组b …...
本地部署与使用SenseVoice语音大模型简析
前言 SenseVoice 是一种语音基础模型,具有多种语音理解功能,包括自动语音识别 (ASR)、口语识别 (LID)、语音情感识别 (SER) 和音频事件检测 (AED)。本博客将指导您安装和使用 SenseVoice 模型,使其尽可能方便用户使用。 Github 仓库链接: ht…...
Kafka SASL/SCRAM介绍
文章目录 Kafka SASL/SCRAM介绍1. SASL/SCRAM 认证机制2. SASL/SCRAM 认证工作原理2.1 SCRAM 认证原理2.1.1 密码存储和加盐2.1.2 SCRAM 认证流程 2.2 SCRAM 认证的关键算法2.3 SCRAM 密码存储2.4 SCRAM 密码管理 3. 配置和使用 Kafka SASL/SCRAM3.1 Kafka 服务器端配置3.2 创建…...
中间件漏洞之CVE-2024-53677
目录 什么是struts?CVE-2024-53677简介影响版本复现环境搭建漏洞利用修复 什么是struts? 在早期的 Java Web 开发中,代码往往混乱不堪,难以维护和扩展。比如,一个简单的用户登录功能,可能在不同的 Java 类…...
pytorch基于 Transformer 预训练模型的方法实现词嵌入(tiansz/bert-base-chinese)
以下是一个完整的词嵌入(Word Embedding)示例代码,使用 modelscope 下载 tiansz/bert-base-chinese 模型,并通过 transformers 加载模型,获取中文句子的词嵌入。 from modelscope.hub.snapshot_download import snaps…...
Windows电脑本地部署运行DeepSeek R1大模型(基于Ollama和Chatbox)
文章目录 一、环境准备二、安装Ollama2.1 访问Ollama官方网站2.2 下载适用于Windows的安装包2.3 安装Ollama安装包2.4 指定Ollama安装目录2.5 指定Ollama的大模型的存储目录 三、选择DeepSeek R1模型四、下载并运行DeepSeek R1模型五、常见问题解答六、使用Chatbox进行交互6.1 …...
区间覆盖问题
文章目录 1. 题面2. 简单分析3. 代码解答4. TLE的2点可能 1. 题面 给定 N N N个区间 [ a i , b i ] [a_i,b_i] [ai,bi] 以及一个区间 [ s , t ] [s,t] [s,t],请你选择尽量少的区间,将指定区间完全覆盖。 输出最少区间数,如果无法完全…...
【LLM-agent】(task2)用llama-index搭建AI Agent
note LlamaIndex 实现 Agent 需要导入 ReActAgent 和 Function Tool,循环执行:推理、行动、观察、优化推理、重复进行。可以在 arize_phoenix 中看到 agent 的具体提示词,工具被装换成了提示词ReActAgent 使得业务自动向代码转换成为可能&am…...
铭豹扩展坞 USB转网口 突然无法识别解决方法
当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…...
Flask RESTful 示例
目录 1. 环境准备2. 安装依赖3. 修改main.py4. 运行应用5. API使用示例获取所有任务获取单个任务创建新任务更新任务删除任务 中文乱码问题: 下面创建一个简单的Flask RESTful API示例。首先,我们需要创建环境,安装必要的依赖,然后…...
java_网络服务相关_gateway_nacos_feign区别联系
1. spring-cloud-starter-gateway 作用:作为微服务架构的网关,统一入口,处理所有外部请求。 核心能力: 路由转发(基于路径、服务名等)过滤器(鉴权、限流、日志、Header 处理)支持负…...
ubuntu搭建nfs服务centos挂载访问
在Ubuntu上设置NFS服务器 在Ubuntu上,你可以使用apt包管理器来安装NFS服务器。打开终端并运行: sudo apt update sudo apt install nfs-kernel-server创建共享目录 创建一个目录用于共享,例如/shared: sudo mkdir /shared sud…...
基于Flask实现的医疗保险欺诈识别监测模型
基于Flask实现的医疗保险欺诈识别监测模型 项目截图 项目简介 社会医疗保险是国家通过立法形式强制实施,由雇主和个人按一定比例缴纳保险费,建立社会医疗保险基金,支付雇员医疗费用的一种医疗保险制度, 它是促进社会文明和进步的…...
高频面试之3Zookeeper
高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制࿰…...
转转集团旗下首家二手多品类循环仓店“超级转转”开业
6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...
macOS多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用
文章目录 问题现象问题原因解决办法 问题现象 macOS启动台(Launchpad)多出来了:Google云端硬盘、YouTube、表格、幻灯片、Gmail、Google文档等应用。 问题原因 很明显,都是Google家的办公全家桶。这些应用并不是通过独立安装的…...
Unsafe Fileupload篇补充-木马的详细教程与木马分享(中国蚁剑方式)
在之前的皮卡丘靶场第九期Unsafe Fileupload篇中我们学习了木马的原理并且学了一个简单的木马文件 本期内容是为了更好的为大家解释木马(服务器方面的)的原理,连接,以及各种木马及连接工具的分享 文件木马:https://w…...
【SpringBoot自动化部署】
SpringBoot自动化部署方法 使用Jenkins进行持续集成与部署 Jenkins是最常用的自动化部署工具之一,能够实现代码拉取、构建、测试和部署的全流程自动化。 配置Jenkins任务时,需要添加Git仓库地址和凭证,设置构建触发器(如GitHub…...
