tshark存储数据到mysql_网络分析利器wireshark命令版(2):tshark使用示例
tshark是wireshark网络分析工具下的一个分支,主要用于命令行环境进行抓包、分析,尤其对协议深层解析时,tcpdump难以胜任的场景中。本系列文章将整理介绍tshark相关内容。
基本用法
常用命令
查看tshark版本
tshark -v
列出当前存在的网络接口
tshark -D
网卡描述依据OS有不同的编号方式,在不了解网络设备及编号情况下,一般先用“tshark -D”查看网络接口的编号以供-i参数使用。
注: linux可以结合ifconfig命令查看
tshark对指定网卡监听,抓包
sudo tshark -i
抓取网卡eth0的流量并写入capture123.pcap
tshark -i eth0 -w capture123.pcap
读取之前的文件capture123.pcap
tshark -i eth0 -r capture123.pcap
抓取网卡eth0的流量10分钟
tshark -i eth0 -a duration:600
注: 默认时间单位为秒
抓取网卡eth0的10000个数据包
tshark -c 10000 -i eth0
抓取网卡eth0涉及192.168.1.1的流量报文
tshark -i eth0 -f “host 192.168.1.1”
注: 与wireshark、tcpdump一致,均使用BPF过滤表达式
抓取网卡eth0指定协议的流量报文
tshark -i eth0 -f “”
协议名可以为: tcp, udp, dns, icmp, http等
案例
实时打印当前mysql查询语句
tshark -s 512 -i eth1 -n -f 'tcp dst port 3306' -R 'mysql.query' -T fields -e mysql.query
说明:
-s 512 :只抓取前512个字节数据
-i eth0 :监听eth0网卡
-n :禁止域名解析
-f ‘tcp dst port 3306’ :只捕捉协议为tcp,目的端口为3306的数据包
-R ‘mysql.query’ :过滤出mysql.query查询语句的报文
-T fields -e mysql.query :打印mysql查询语句
实时打印当前http请求的url(包括域名)
tshark -s 512 -i eth1 -n -f 'tcp dst port 8000' -R 'http.host and http.request.uri' -T fields -e http.host -e http.request.uri -l | tr -d 't'
说明:
-s 512 :只抓取前512个字节数据
-i eth1 :监听eth1网卡
-n :禁止网络对象名称解析
-f ‘tcp dst port 8000’ :只捕捉协议为tcp,目的端口为8000的数据包
-R ‘http.host and http.request.uri’ :过滤出http.host和http.request.uri
-T fields -e http.host -e http.request.uri :打印http.host和http.request.uri
-l :输出到标准输出
读取之前抓包文件进行报文数据分析
需要从抓包的文件evidence04.pcap中提取出报文相关数据信息,如时间、源IP、目的IP、协议名、源Port、標Port、包大小等信息,最后输出到csv文件。
tshark -r evidence.pcap -T fields -e frame.time_relative -e ip.src -e ip.dst -e ip.proto -e tcp.srcport -e tcp.dstport -e frame.len -E header=n -E separator=, -E quote=n -E occurrence=f > output.csv
说明:
-r evidence.pcap 需要分析的报文记录文件(pcap格式)
-T fields 输出格式,选fields按字段,也可以选json等其他格式,需结合-e 及 -E使用
-e frame.time_relative 取出封包的相对时间
-e ip.src 提取源IP
-e ip.dst 提取目的IP
-e ip.proto 提取协议名
-e tcp.srcport 提取源Port
-e tcp.dstport 提取目的Port
-e frame.len 提取数据帧大小
-E header=n 是否输出字段名称(cvs的第1行)
-E separator=, 指定分割符,/t是tab,/s是一格空格
-E quote=n 指定是否对字段用引号,d是双引号,s是单引号,n是不用
-E occurrence=f 多值时是否保留,f是第一个值,l是最后一个值,a是所有值都列出,默认全部
output.csv 输出文件路径及名称
DNS报文过滤
使用tshark过滤dns cap包中源ip、目的ip、request请求
tshark -r test.cap -T fields -e frame.time -e ip.src -e ip.dst -e dns.qry.name -R 'udp.dstport==53 || dns'
说明:
-r test.pcap 需要分析的报文记录文件(pcap格式)
-T fields 输出格式,选fields按字段,也可以选json等其他格式,需结合-e 及 -E使用
-e frame.time 提取数据帧时间
-e ip.src 提取源IP
-e ip.dst 提取目的IP
-e dns.qry.name 提取dns查询的域名信息
-R 'udp.dstport==53 || dns' 显示过滤,仅对udp目标端口为53或者dns协议的报文进行处理
默认直接显示在终端上,不记录文件。
常见问题
tshark: Only read filters, not capture filters, can be specified when reading a capture file.
tshark -r 20190409.pcap -f 'udp' -w udp-20190409.pcap
读取文件时只能使用显示过滤,也就是只能使用-Y或-2 -R过滤
tshark: -R without -2 is deprecated. For single-pass filtering use -Y.
tshark -r 20190409.pcap -R 'udp' -w udp-20190409.pcap
显示过滤-R参数需要和-2一起使用,或使用-Y
参考:
系列文章:
tshark存储数据到mysql_网络分析利器wireshark命令版(2):tshark使用示例相关推荐
- Wireshark命令行工具tshark使用小记
1.目的 写这篇博客的目的主要是为了方便查阅,使用wireshark可以分析数据包,可以通过编辑过滤表达式来达到对数据的分析:但我的需求是,怎么样把Data部分导出来,因为后续的工作主要针对数据包的D ...
- 命令行工具tshark使用小记
1.目的 写这篇博客的目的主要是为了方便查阅,使用wireshark可以分析数据包,可以通过编辑过滤表达式来达到对数据的分析:但我的需求是,怎么样把Data部分导出来,因为后续的工作主要针对数据包的D ...
- 怎么把数据存到MySQL_怎样将Arduino数据直接存储到MySQL
刻录以下内容 voidsetup() { Serial.begin(9600); } voidloop() { inti=0,j=0; i=analogRead(A0); j=analogRead(A ...
- android studio数据库存储数据,如何使用API 23在android studio中的数据库中存储数据?...
大多数时候我不会发布任何内容,因为我可以在其他帖子中找到我需要的所有内容,但是现在我已经有几天了,您如何在数据库中存储任何内容?这是我的Java代码如何使用API 23在android studi ...
- Wireshark数据抓包教程之Wireshark捕获数据
Wireshark数据抓包教程之Wireshark捕获数据 Wireshark抓包方法 在使用Wireshark捕获以太网数据,可以捕获分析到自己的数据包,也可以去捕获同一局域网内,在知道对方IP地址 ...
- Wireshark 命令行捕获数据
在 Wireshark 程序目录中,包含两个命令行捕获工具.这两个工具分别是 Dumpcap 和 Tshark.当不能以图形界面方式捕获数据时,可以在命令行使用 dumpcap 或 tshark 程序 ...
- 网站分析实战--如何以数据驱动决策,提升网站价值(大数据时代的分析利器)...
<网站分析实战--如何以数据驱动决策,提升网站价值>(大数据时代的分析利器) 基本信息 作者: 王彦平 吴盛峰 出版社:电子工业出版社 ISBN:9787121193125 上架时间:20 ...
- 2021年大数据HBase(十三):HBase读取和存储数据的流程
全网最详细的大数据HBase文章系列,强烈建议收藏加关注! 新文章都已经列出历史文章目录,帮助大家回顾前面的知识重点. 目录 系列历史文章 HBase读取和存储数据的流程 一.HBase读取数据的流程 ...
- .pgr照片文件解析,C++与Java存储数据差别大小端模式
一..pgr是什么? .pgr文件是二进制的图像文件,可以用普通的文本文件打开,或者查看十六进制的文本信息: 读取需要了解~~~非常重要 !!! 基本数据类型的大小端存储模式 表头Header 详细信 ...
最新文章
- 关于SysinternalsSuite全部工具【详解】
- 调用cmd不显示黑框的方法
- 【Protocol Buffer】Protocol Buffer入门教程(七):导入定义
- 微信小程序把玩(三)tabBar底部导航
- 每日一笑 | 一些关于学编程的领悟
- [js] js操作节点的方法有哪些?
- 从电子电路到嵌入式系统(开篇)
- 国土部明确地面光伏、分布式光伏用地政策
- Web常用对象(2)
- 码农面试智力题及答案
- android开源人脸识别插件,face-android-demo
- AForge.Video.FFMPEG桌面录屏
- Linux 4G模块pppd拨号上网脚本解析
- [转]短信验证码如何防止不恶意点击被刷!
- HTML5基础与Meta http-equiv属性详解
- 加油站会员管理系统用什么好
- Baklib分享|知识管理是企业发展的风向标
- sql 求和并且将求和条件作为查询条件
- 使用基于ggplot2的包ggalluvial绘制桑基图(冲积图)
- 移动、联通、电信物联卡该如何使用
热门文章
- 算法提高 高精度乘法(java)
- JAVA比较文件是否相同
- 百度车牌识别API-Python版
- scrapy初始化selenium,防止网站反爬虫策略监测自动化控件
- python pandas判断是否为空
- python装饰器记录每一个函数的执行时间
- 采集浏览器访问某网站时产生的流量,并保存为pcap文件
- 反转dataframe
- 什么都不懂的学java难不难_零基础转行学java到底难不难
- dedecms php5.4 无法退出后台,DedeCMS 织梦在 Windows 的 PHP5.4 环境下登录后台空白的解决办法...