tcpdump总结
1、抓包和终止
抓包命令,在终端输入:
sudo tcpdump -i eth0
终止抓包命令:
ctrl+C
2、数据内容
如下一行数据:
00:55:41.874914 IP6 kali > ip6-allrouters: ICMP6, router solicitation, length 8
^C
第一列:时间
第二列:协议
第三列:发送方ip地址和端口号,此处kali是主机号
第四列:箭头>表示数据流向
第五列:接收方的ip地址和端口号
第六列:数据包内容,包含Flags标识符、seq号、ack号、win窗口、数据长度length、更多在TCP协议的标示位。
3、TCP协议
4、TCPdump的过滤规则
1、基于ip地址进行过滤:host
一、截获特定主机收发的所有数据包
ping www.baidu.com #查看域名对应的ip地址
sudo tcpdump host 182.61.200.110 #抓包
会有收报文和发报文两个方向的数据。
二、获取特定目的地址的报文
src是源,dst是目的
sudo tcpdump dst 182.61.200.110
sudo tcpdump src 182.61.200.110
2、基于网段进行过滤:net
截获特定网段的主机收发的数据包
ping 100.100.30.26 #举例,不要ctrl c
sudo tcpdump net 100.100.30.0/24
也可以加入src, dst限制条件,如:
sudo tcpdump dst net 100.100.30.0/24
3、基于端口过滤:port
sudo tcpdump tcp port 80
sudo tcpdump dst port 80
sudo tcpdump port 80 or port 22
sudo tcpdump portrange 8000-8080
sudo tcpdump tcp port http
#例子:域名解析
sudo tcpdump port 53
4、基于协议过滤:protocal
sudo tcpdump icmp
sudo tcpdump ip
5、逻辑运算
6、高级过滤
5、TCPdump的常用参数
#查看所有参数 h即help
tcpdump -h
man tcpdump #看所有参数解释
ifconfig
ifconfig命令可以查看所有网络接口
- i、-w、-r
sudo tcpdump #listening on eth0
sudo tcpdump -i any#listening on any
sudo tcpdump -w test.pcap #捕获并保存
ll #查看具体内容
sudo tcpdump -r test.pcap #读文件
-n、-N
sudo tcpdump -n
sudo tcpdump -nn
sudo tcpdump -N
-t、-tt、-ttt、-tttt
-v、-vv
sudo tcpdump -v
-c、-C、-W
sudo tcpdump -c 5 -w tt.pcap
sudo apt upgrade #用来产生一些流量
- C - W 我的终端无法运行???
-Q、-q
sudo tcpdump -Q out
sudo tcpdump --direction out #与上面效果一样
sudo tcpdump -q
sudo tcpdump -D
sudo tcpdump -L
-s
sudo tcpdump tcp port 53#snapshot length 262144 bytes
sudo tcpdump -s 50
-A、-X、-e
sudo tcpdump -A -r tt.pcap
sudo tcpdump -A|grep baidu #过滤出与百度有关的
sudo tcpdump -X -r tt.pcap
sudo tcpdump -X |grep baidu
sudo tcpdump -e -r tt.pcap
-F、-l
touch file1 #创建文件
vi file1 #编辑文件
i #进入编辑模式
tcp port 80 #举例
esc
:wq #退出保存
cat file1 #查看文件内容
sudo tcpdump -F file1
sudo tcpdump -F file1 icmp #后面的icmp会被忽略
sudo tcpdump -l|tee dat
sudo tcpdump -l > dat1 & tail -f dat1
[1] 53779
[sudo] kali 的密码:
[1] + suspended (tty input) sudo tcpdump -l > dat1
无法执行???