网络抓包 wireshark
信息
- 如果未安装 Npcap,您将无法捕获实时网络流量,但仍可打开已保存的捕获文件。
- Adapter for loopback traffic capture 虚拟网卡,捕获内部流量
- (UDP)Transaction ID 一个流整个生命周期的ID号
操作
- 主界面 可以直接选择网卡捕获流量
- 顶层菜单–捕获–选项:可以直接选择网卡捕获流量
- 顶层菜单–分析–追踪流
- 追踪一个协议,完整生命周期的所有数据包。
- 使用后,过滤栏保留一个过滤表达式。协议.stream eq X, X是当前协议流的编号。(使用这个表达式可以直接获取所有相关的数据包)
过滤表达式
协议
- tcp
- http
- request (请求)
- udp
- dhcp
- dns
- TLSv1.2
组合表达式
- and –> && –> 与 –> ip.src==10.0.0.5 and tcp.flags.fin
- or –> || –> 或 –>ip.src==10.0.0.5 or ip.src==192.1.1.1
- xor –> –> 异或 –> tr.dst[0:3] == 0.6.29 xor tr.src[0:3] == 0.6.29
- not –> ! –> 否 –> not llc
- […] –> 子序列
- in –> 成员 –> http.request.method in {“HEAD”, “GET”}
比较
| 别名 | C-like | 描述 | 示例 | |
|---|---|---|---|---|
eq |
any_eq |
== |
相等(任意且多于一) | ip.src == 10.0.0.5 |
ne |
all_ne |
!= |
不相等(如果多于一个) | ip.src != 10.0.0.5 |
all_eq |
=== |
相等(如果多于一则) | ip.src === 10.0.0.5 |
|
any_ne |
!== |
不等(任意若多于一) | ip.src !== 10.0.0.5 |
|
gt |
> |
大于 | frame.len > 10 |
|
lt |
< |
低于 | frame.len < 128 |
|
ge |
>= |
大于或等于 | frame.len ge 0x100 |
|
le |
<= |
小于或等于 | frame.len <= 0x20 |
|
contains |
协议、字段或片包含一个值 | sip.To contains "a1762" |
||
matches |
~ |
协议或文本字段匹配 Perl 兼容的正则表达式 | http.host matches "acme\\.(org\|com\|net)" |
转换字段
| 功能 | 描述 |
|---|---|
upper |
将字符串字段转换为大写。 |
lower |
将字符串字段转换为小写。 |
len |
返回字符串或字节字段的字节数。 |
count |
返回帧中字段出现的次数。 |
string |
将非字符串字段转换为字符串。 |
vals |
如果字段值存在,则将其转换为其字符串形式的值。 |
dec |
将无符号整数字段转换为十进制字符串。 |
hex |
将无符号整数字段转换为十六进制字符串。 |
float |
将字段转换为单精度浮点数。 |
double |
将字段转换为双精度浮点数。 |
max |
返回参数的最大值。 |
min |
返回参数的最小值。 |
abs |
返回参数的绝对值。 |
数据包信息
- Frame 119(物理层/抓包元数据)
- Ethernet II(数据链路层)
- Internet Protocol Version 4(网络层/IP层)
- User Datagram Protocol(传输层/UDP)
- Dynamic Host Configuration Protocol (Release)(应用层/DHCP)
网络抓包 wireshark
https://fu01.github.io/posts/644c82ba/