2022
我们一起努力

linux系统下使用tcpdump进行抓包方法

我先看下实例代码:

1.常见参数

tcpdump -i eth0 -nn -s0 -v port 80

-i 选择监控的网卡

-nn 不解析主机名和端口号,捕获大量数据,名称解析会降低解析速度

-s0 捕获长度无限制

-v 增加输出中显示的详细信息量

port 80 端口过滤器,只捕获80端口的流量,通常是HTTP

2.

tcpdump -A -s0 port 80

-A 输出ASCII数据

-X 输出十六进制数据和ASCII数据

3.

tcpdump -i eth0 udp

udp 过滤器,只捕获udp数据

proto 17 协议17等效于udp

proto 6 等效于tcp

4.

tcpdump -i eth0 host 10.10.1.1

host 过滤器,基于IP地址过滤

5.

tcpdump -i eth0 dst 10.105.38.204

dst 过滤器,根据目的IP过滤

src 过滤器,根据来源IP过滤

6.

tcpdump -i eth0 -s0 -w test.pcap

-w 写入一个文件,可以在Wireshark中分析

7.

tcpdump -i eth0 -s0 -l port 80 | grep 'Server:'

-l 配合一些管道命令的时候例如grep

8.

组合过滤

and or &&

or or ||

not or !

9.

快速提取HTTP UA

tcpdump -nn -A -s1500 -l | grep "User-Agent:"

使用egrep 匹配 UA和Host

tcpdump -nn -A -s1500 -l | egrep -i 'User-Agent:|Host:'

10.

匹配GET的数据包

tcpdump -s 0 -A -vv 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'

匹配POST包,POST的数据可能不在包里

tcpdump -s 0 -A -vv 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354'

11.

匹配HTTP请求头

tcpdump -s 0 -v -n -l | egrep -i "POST /|GET /|Host:"

匹配一些POST的数据

tcpdump -s 0 -A -n -l | egrep -i "POST /|pwd=|passwd=|password=|Host:"

匹配一些cookie信息

tcpdump -nn -A -s0 -l | egrep -i 'Set-Cookie|Host:|Cookie:'

12.

捕获DNS请求和响应

tcpdump -i eth0 -s0 port 53

13.

使用tcpdump捕获并在Wireshark中查看

使用ssh远程连接服务器执行tcpdump命令,并在本地的wireshark分析

ssh root@remotesystem 'tcpdump -s0 -c 1000 -nn -w - not port 22' | wireshark -k -i -

ssh ubuntu@115.159.28.111 'sudo tcpdump -s0 -c 1000 -nn -w - not port 22' | wireshark -k -i -

14.

配合shell获取最高的IP数

tcpdump -nnn -t -c 200 | cut -f 1,2,3,4 -d '.' | sort | uniq -c | sort -nr | head -n 20

15.捕获DHCP的请求和响应

tcpdump -v -n port 67 or 68

<
/p>
<
p>

本文从互联网转载,来源地址:www.downzz.com/fuwuqi/188560.html,原作者保留一切权利,若侵权或引用不当,请联系茶猫云(cmy.cn)删除。【茶猫云,优质云服务器提供商】

赞(0)
文章名称:《linux系统下使用tcpdump进行抓包方法》
文章链接:https://www.fzvps.com/34173.html
本站文章来源于互联网,如有侵权,请联系管理删除,本站资源仅供个人学习交流,请于下载后24小时内删除,不允许用于商业用途,否则法律问题自行承担。
图片版权归属各自创作者所有,图片水印出于防止被无耻之徒盗取劳动成果的目的。

评论 抢沙发

评论前必须登录!