📖 工具简介
tshark 是 Wireshark 的命令行版本,一款开源的网络协议分析器,用于捕获、解析和分析网络流量。
⚙️ 核心功能
|
功能 |
说明 |
|---|---|
|
数据包捕获 |
实时抓取网络流量 |
|
协议解析 |
支持 HTTP、DNS、TCP、UDP、SMTP 等数百种协议 |
|
流量过滤 |
支持 BPF 过滤表达式和显示过滤器 |
|
文件操作 |
抓包结果保存为 pcap/pcapng 格式 |
|
统计分析 |
内置多种流量统计功能 |
🔍 tshark vs Wireshark 对比
|
对比项 |
tshark |
Wireshark |
|---|---|---|
|
界面 |
命令行(无 GUI) |
图形界面(GTK/Qt) |
|
资源消耗 |
轻量,低内存占用 |
较占用资源 |
|
适用场景 |
服务器、远程连接、自动化脚本 |
本地交互式分析 |
|
抓包方式 |
适合长期抓包、后台运行 |
适合临时抓包、即时分析 |
|
数据展示 |
文本输出,适合 grep/awk 处理 |
可视化树状结构展示 |
|
学习成本 |
需要熟悉命令行 |
图形化更容易上手 |
|
性能 |
高性能,适合大流量 |
大流量时可能卡顿 |
|
部署方式 |
可远程 SSH 使用 |
需要本地安装 |
🎯 使用场景
1. 应急响应与安全分析
-
分析可疑流量,定位攻击行为
-
识别恶意通信(Webshell、远控木马)
-
检测异常协议(DNS 隧道、ICMP 隧道)
2. 渗透测试
-
抓包分析 SQL 注入、XSS 等漏洞利用
-
提取攻击者发送的 payload
-
验证漏洞利用是否成功
3. 故障排查
-
分析网络延迟、丢包问题
-
查看 TCP/UDP 连接状态
-
定位服务无法访问的原因
4. CTF 竞赛(MISC 方向)
-
流量分析取证题
-
从 pcap 中提取隐藏数据
-
还原文件传输内容
5. 自动化与批量处理
-
编写脚本批量分析流量
-
与其他工具联动(grep、awk、Python)
-
定时抓包并生成报告
📝 常用命令速查
# 基础抓包
tshark -i eth0 -c 100 # 抓 100 个包
tshark -i eth0 -w out.pcap # 保存到文件
tshark -D # 列出可用网卡
# 过滤表达式
-Y http # HTTP 流量
-Y "ip.addr == 192.168.1.1" # 特定 IP
-Y dns # DNS 查询
-Y "tcp.port == 80" # 80 端口
-Y "http.request.method == POST" # POST 请求
# 读取 pcap 文件
tshark -r out.pcap -Y http # 分析文件
tshark -r out.pcap -q -z http,stat # HTTP 统计
tshark -r out.pcap -q -z ip,stat # IP 统计
tshark -r out.pcap -T fields -e http.request.uri # 提取字段
# 提取关键信息
-T fields -e ip.src -e ip.dst # 提取源/目的 IP
-T fields -e http.host -e http.request.uri # 提取 URL
💡 选型建议
|
场景 |
推荐工具 |
|---|---|
|
本地临时分析、学习网络协议 |
Wireshark |
|
远程服务器抓包、自动化脚本 |
tshark |
|
大流量长期抓包 |
tshark |
|
快速定位问题、过滤数据包 |
Wireshark |
|
批量处理、编写分析脚本 |
tshark |

213

被折叠的 条评论
为什么被折叠?



