网络分析抓包工具
网络抓包工具——Wireshark
概述
- Wireshark 是一款开源的网络协议分析工具,用于捕获和分析网络数据包,广泛应用于网络故障排查、协议分析和安全审计。
主要功能
- 捕获数据包:实时捕获网络接口上的数据包。
- 协议解析:支持解析数百种协议(如 TCP、UDP、HTTP、DNS)。
- 过滤与搜索:通过过滤规则(如
ip.addr == 192.168.1.1
)定位特定数据包。 - 可视化分析:提供流量统计、协议层次视图和时间序列图。
安装使用
[!important]
Windows 安装 Wireshark 时,会自动检测安装
npcap
,切勿取消安装,因为 Windows 默认不支持流量抓取。
启动捕获:
- 选择网络接口(如 Wi-Fi 或以太网)。
- 开始捕获数据包。
应用过滤:例如输入
arp
捕获 ARP 请求/响应。分析数据包:查看数据包的协议栈、源/目标地址、端口等信息。
- 抓包分析 IPv4
抓包工具——Netcat
概述
Netcat(nc) 是一个多功能网络工具,可用于 TCP/UDP 通信测试。
安装使用
- 安装包可在 Github 上找到。
服务器模式:
nc -lvnp 12345 # 监听端口12345 #l listen 监听 #v verbose 显示详细信息 #n 不要使用 netbios 协议,使用 ip 地址 #p port 端口
客户端模式:
nc 192.168.1.1 12345 # 连接目标IP和端口
抓包:使用 Wireshark 过滤
tcp
捕获 Netcat 通信。
浏览器开发者工具
浏览器开发者工具提供以下功能:
- 元素:查看渲染后的 DOM 结构和 CSS 样式。
[!important]
元素的 HTML 标签是浏览器渲染、解析 js 之后的代码。
右键界面查看源代码,查看的是未经解析的响应体原始内容。
- 控制台:执行 JavaScript 代码的交互式终端,调试错误,如
alert("Hello")
。 - 源代码:查看、调试、修改网站前端代码,支持断点调试。
- 网络:查看网页中的请求和响应。
- 应用:查看、管理 Cookie 等。
BurpSuite
下载
- 官网 购买下载
文件介绍
- BurpSuite 核心:BurpSuiteXXX.jar
- jdk22:BurpSuite 运行环境
- BurpSuite.vbs:英文版 BurpSuite 启动文件
- BurpSuite-cn.vbs:中文版 BurpSuite 启动文件
启动
双击 BurpSuite.vbs
或 BurpSuite-cn.vbs
更新
- 从 BurpSuite 官网 下载
.jar
文件 - 将下载好的
.jar
包重命名为burpsuite_pro.jar
,替换文件即可。
模块
模块名称 | 主要功能 |
---|---|
Dashboard | 仪表盘,任务管理界面,集中显示扫描状态和结果 |
Target | 显示目标网站结构,管理作用域(Scope),分析请求/响应 |
Proxy | 拦截/修改HTTP请求和响应(核心功能),支持手动测试 |
Intruder | 自动化攻击工具,支持暴力破解、模糊测试、参数枚举等 |
Repeater | 手动修改并重复发送单个请求,用于测试参数和漏洞验证 |
Decoder | 编码/解码工具(Base64、URL、HTML等) |
Comparer | 对比请求/响应的差异(文本或字节级) |
Collaborator | 检测隐蔽的带外漏洞(如SSRF、DNS外带) |
Extensions | 支持添加插件(BApp Store)扩展功能 |
Learn | BurpSuite 学习资源 |
Dashboard
- BurpSuite 的漏洞扫描器,默认会扫描经过 BurpSuite 的所有网站。
[!caution]
切勿随意扫描任意网站,一定要手动关闭漏洞扫描。
Target
- Dashboard 漏洞扫描关闭后这里是无法使用的
Proxy(最常用模块)
- BurpSuite 的工作原理:中间人劫持。
- 原本的请求和响应都要先经过 BurpSuite,BurpSuite 可以选择修改、丢弃、或者原样放行。
Intercept
- 拦截器默认为关闭状态
- 拦截器中请求等内容可以修改
HTTP history
- 历史记录中的内容只能看,不能修改
Websockets history
- 历史记录
match and replace
- 匹配与替代
proxy settings
- BurpSuite 默认的代理端口为
8080
Intruder
- 用于模糊测试、暴力破解
爆破分类
- sniper:狙击手,单点爆破,爆破的参数只有一个,比如爆破密码。
- battingram:攻城锤,多点爆破,爆破的参数可以有多个,但是所有的爆破点共用一个密码字典。
- pichfork:叉子,多点爆破,爆破的参数可以有多个,每个爆破点都自己对应的字典,一一对应的爆破,爆破的次数是最小的字典大小。
- cluster bomb:集束炸弹,多点爆破:爆破的参数可以有多个,每个爆破点都自己对应的字典,一对多的爆破,爆破的次数是字典个数相乘,即 笛卡尔积。
密码字典
可从 GitHub 中下载
基于字典的爆破
- 首先将 DVWA 的安全等级设置为 Low,随后选择
Burte Force
模块,尝试暴力破解密码。
- 找到对应的请求,并转到 Intruder
- 选择单点爆破,并框选密码字符串部分,点击
Add
,随后导入相应的密码字典,最后点击Start sttack
进行密码爆破。
如何判断密码爆破成功
- 观察响应长度:成功的响应包的响应体长度明显区别于其他响应,例如上图中爆破成功的响应体的长度为
5056
,明显区别于其他响应体的长度5013
。 - 响应具体内容:把错误的特征排除掉(比如排除“用户名或密码错误”的包),剩下的包就是成功登录包,如下图所示。
- 响应状态码:很多网站登录成功,状态码为
302
。
Repeater
- 重放器,重复发送 request 请求
Decoder
- 用于编码、解码
Extensions
- 扩展插件模块
Learn
- BurpSuite 学习资源,内置有免费的资料、免费的视频、免费的靶场(academy)。
设置
- 设置字体大小:Setting —— User interface —— Display —— Appearance —— Font size,设置需要的大小即可。
- 设置报文字体大小:Setting —— User interface —— Message editor —— HTTP message display —— Change font,即可设置需要的字体以及大小。
导出并安装 CA 证书
导出
安装
设置代理
[!note]
在访问国外网站的时候,BurpSuite 不会主动走代理,需要手动设置。
设置完成后,即可抓取国外的包。
- 方式一:设置 TUN 模式
- 方式二:关闭 TUN 模式,设置 BurpSuite 的代理为
127.0.0.1:7897
浏览器插件 SwitchyOmega
下载安装
可以在 github 上下载
将插件导入 Chrome
- 将下载好的文件修改文件后缀:SwitchyOmega_Chromium.crx –> SwitchyOmega_Chromium.zip
- 解压 SwitchyOmega_Chromium.zip
- 在浏览器的扩展程序页面中打开开发者模式,点击加载未打包的扩展程序
- 选择解压 zip 后的 SwitchyOmega_Chromium 文件夹,完成安装
配置 SwitchyOmega
- 新建情景模式
- 选择代理服务器,情景模式名称随意即可,随后点击创建
- 代理协议设置为
HTTP
,代理服务器设置为127.0.0.1
,代理端口设置为8080
- 点击应用选项
- 访问网站时,若开启该代理,即可在 BurpSuite 内 Proxy 下的 HTTP history 看到 HTTP 请求和响应