priess 发表于 2021-9-17 11:32:46

在kali下用tcpdump抓包

> `Tcpdump`网络数据包截获分析工具。支持针对网络层、协议、主机、网络或端口的过滤。

### 不指定任何参数

监听第一块网卡上经过的数据包。主机上可能有不止一块网卡,所以经常需要指定网卡。

```
tcpdump
```

### 监听特定网卡

```
tcpdump -i wlan0
```

### 监听特定主机

例子:监听本机跟主机 `192.168.123.33` 之间往来的通信包。

备注:出、入的包都会被监听。

```
tcpdump host 182.254.38.55
```

### 特定来源、目标地址的通信

特定来源

```
tcpdump src host hostname
```

特定目标地址

```
tcpdump dst host hostname
```

如果不指定 `src` 跟 `dst`,那么来源 或者目标 是 hostname 的通信都会被监听

```
tcpdump host hostname
```

### 特定端口

```
tcpdump port 3000

```

### 监听 TCP/UDP

服务器上不同服务分别用了 TCP、UDP 作为传输层,假如只想监听 TCP 的数据包

```
tcpdump tcp
```

### 来源主机 + 端口 +TCP

监听来自主机 `192.168.123.1` 在端口 `22` 上的 TCP 数据包

```
tcpdump tcp port 22 and src host 123.207.116.169 22 and src host 123.207.116.169
```

### 监听特定主机之间的通信

```
tcpdump ip host 210.27.48.1 and 210.27.48.2
ip host 210.27.48.1 and 210.27.48.2
```
`210.27.48.1` 除了和 `210.27.48.2` 之外的主机之间的通信

### 稍微详细点的例子

```
tcpdump tcp -i eth1 -t -s 0 -c 100 and dst port ! 22 and src net 192.168.1.0/24 -w ./target.cap
```
(1)`tcp`: ip icmp arp rarp 和 tcp、udp、icmp 这些选项等都要放到第一个参数的位置,用来过滤数据报的类型
(2)`-i eth1` : 只抓经过接口 eth1 的包
(3)`-t` : 不显示时间戳
(4)`-s 0` : 抓取数据包时默认抓取长度为 68 字节。加上-S 0 后可以抓到完整的数据包
(5)`-c 100` : 只抓取 100 个数据包
(6)`dst port ! 22 `: 不抓取目标端口是 22 的数据包
(7)`src net 192.168.1.0/24 `: 数据包的源网络地址为 192.168.1.0/24
(8)`-w ./target.cap `: 保存成 cap 文件,方便用 ethereal(即 wireshark)分析

页: [1]
查看完整版本: 在kali下用tcpdump抓包