snoop 什么情况需要指定网络接口
答案:1 悬赏:50 手机版
解决时间 2021-03-20 07:07
- 提问者网友:饥饿走向夜
- 2021-03-19 23:25
snoop 什么情况需要指定网络接口
最佳答案
- 五星知识达人网友:傲气稳了全场
- 2021-03-19 23:49
在实际的抓包分析过程中,因为会有大量你不想看到的干扰信息出现,例如额外的网络连接,网络中的广播数据包等,这时要看到自己想要的信息简直就像大海捞针一样,幸好snoop提供了一系列的参数和选项来回避这些无用信息,先看一些常用的选项:
-P 不使用混杂模式,只能获取广播包和到本地主机的数据包
-c [maxCount] 记录最大包数,超过则自动停止
-d [dev] 接受包的设备名(网络接口)
-i [filename] 从文件输入(从一个以前的记录文件而不是网络设备中输入)
-p first[,last] 当从文件输入时,只显示从first指定到last的包
-o [filename] 保存所有数据包输出到文件,格式为RFC 1761-compliant
-q 当记录到文件时,使用安静模式,不回显数据
-N 解析IP地址到主机名(默认使用/etc/hosts作为解析列表)
-r 不解析主机名
-n 指定解析主机名所用的列表文件
-v 冗余模式,显示详细的数据包信息
除了命令选项以外,snoop还允许通过filter expression过滤模式来对数据包进行析取,以进行更精确的数据抓取和分析。snoop中expr的格式与Tcpdump基本兼容。
地址
host [hostname] 指定主机名,snoop将只获取此主机(源和目标)的数据包
from 或 src 指定源地址,后面必须跟host或ipaddr指令,将只获取以此地址为源的数据
to 或 dst 指定目标地址,后面必须跟host或ipaddr指令,将只获取以此地址为目的的数据
ipaddr 指定IP地址,功能同host
atalkaddr 指定appletalk地址,适用于appletalk协议
etheraddr 指定以太网MAC地址,适用于Ethernet协议
net [net] 指定网络地址,将抓取指定目标网络的数据
port [port] 指定TCP|UDP端口号,将只抓取指定端口的数据,适用于TCP|UDP协议
也可以根据/etc/services文件中指定的协议名字使用字符串
gateway [hostname|IP] 指定网关地址,将只抓取发送到指定网关的数据协议
inet 指定抓取IPV4协议
inet6 指定抓取IPV6协议
ethertype 抓取指定的Ethernet协议
ip, ip6, arp, rarp, pppoed, pppoes
udp, tcp, icmp, icmp6, ah, esp
分别指定以上类型的协议
pppoe PPPOE协议
broadcast 广播协议
multicast 多播协议
bootp, dhcp bootp和dhcp协议
apple applenet协议
decnet decnet协议
rpc prog [ , vers [ , proc ] ] 对应类型的RPC协议数据
ldap ldap协议
slp slp协议
sctp sctp协议
ospf ospf协议
类型
nofrag 不抓取分片数据包
此外,ether,ip,udp等协议关键字,都可以通过指定对应标志位的方式进行更详细的控制,例如使用ip[0]指定某一个位的标志。
操作符
在snoop过滤表达式中同样可以使用逻辑表达式来进行控制,对应的功能则与c,perl等语言中的类似。
and 与
or 或 , 或
not or ! 非
例如:
ipaddr 10.1.1.1 and port 23 抓取10.0.0.1:23的数据
host a or host b 抓取主机a和b的数据
not ipaddr 192.168.0.2 不抓取192.168.0.2的数据
指定 网络接口:/dev/pcn0 , 目标主机: Katty, 目标端口: TCP 23
这将只抓取到Katty的Telnet登录请求,以及所执行的命令。
================================
[Tracy@Katty]# snoop -d pcn0 dst host Katty and tcp port 23
Using device /dev/pcn0 (promiscuous mode)
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 e
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 y
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 e
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 y
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 w
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 e
192.168.0.2 -> Katty TELNET C port=1380 x
192.168.0.2 -> Katty TELNET C port=1380 i
192.168.0.2 -> Katty TELNET C port=1380 t
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
===============================
现在可以看到,客户端的输入依次为
elly (Username)
elly (Password)
w (Command1)
exit (Command2)
Tips: 如果要看更详细的数据信息,只要加上-v参数就可以了。
-P 不使用混杂模式,只能获取广播包和到本地主机的数据包
-c [maxCount] 记录最大包数,超过则自动停止
-d [dev] 接受包的设备名(网络接口)
-i [filename] 从文件输入(从一个以前的记录文件而不是网络设备中输入)
-p first[,last] 当从文件输入时,只显示从first指定到last的包
-o [filename] 保存所有数据包输出到文件,格式为RFC 1761-compliant
-q 当记录到文件时,使用安静模式,不回显数据
-N 解析IP地址到主机名(默认使用/etc/hosts作为解析列表)
-r 不解析主机名
-n 指定解析主机名所用的列表文件
-v 冗余模式,显示详细的数据包信息
除了命令选项以外,snoop还允许通过filter expression过滤模式来对数据包进行析取,以进行更精确的数据抓取和分析。snoop中expr的格式与Tcpdump基本兼容。
地址
host [hostname] 指定主机名,snoop将只获取此主机(源和目标)的数据包
from 或 src 指定源地址,后面必须跟host或ipaddr指令,将只获取以此地址为源的数据
to 或 dst 指定目标地址,后面必须跟host或ipaddr指令,将只获取以此地址为目的的数据
ipaddr 指定IP地址,功能同host
atalkaddr 指定appletalk地址,适用于appletalk协议
etheraddr 指定以太网MAC地址,适用于Ethernet协议
net [net] 指定网络地址,将抓取指定目标网络的数据
port [port] 指定TCP|UDP端口号,将只抓取指定端口的数据,适用于TCP|UDP协议
也可以根据/etc/services文件中指定的协议名字使用字符串
gateway [hostname|IP] 指定网关地址,将只抓取发送到指定网关的数据协议
inet 指定抓取IPV4协议
inet6 指定抓取IPV6协议
ethertype 抓取指定的Ethernet协议
ip, ip6, arp, rarp, pppoed, pppoes
udp, tcp, icmp, icmp6, ah, esp
分别指定以上类型的协议
pppoe PPPOE协议
broadcast 广播协议
multicast 多播协议
bootp, dhcp bootp和dhcp协议
apple applenet协议
decnet decnet协议
rpc prog [ , vers [ , proc ] ] 对应类型的RPC协议数据
ldap ldap协议
slp slp协议
sctp sctp协议
ospf ospf协议
类型
nofrag 不抓取分片数据包
此外,ether,ip,udp等协议关键字,都可以通过指定对应标志位的方式进行更详细的控制,例如使用ip[0]指定某一个位的标志。
操作符
在snoop过滤表达式中同样可以使用逻辑表达式来进行控制,对应的功能则与c,perl等语言中的类似。
and 与
or 或 , 或
not or ! 非
例如:
ipaddr 10.1.1.1 and port 23 抓取10.0.0.1:23的数据
host a or host b 抓取主机a和b的数据
not ipaddr 192.168.0.2 不抓取192.168.0.2的数据
指定 网络接口:/dev/pcn0 , 目标主机: Katty, 目标端口: TCP 23
这将只抓取到Katty的Telnet登录请求,以及所执行的命令。
================================
[Tracy@Katty]# snoop -d pcn0 dst host Katty and tcp port 23
Using device /dev/pcn0 (promiscuous mode)
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 e
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 y
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 e
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 l
192.168.0.2 -> Katty TELNET C port=1380 y
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 w
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380 e
192.168.0.2 -> Katty TELNET C port=1380 x
192.168.0.2 -> Katty TELNET C port=1380 i
192.168.0.2 -> Katty TELNET C port=1380 t
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
192.168.0.2 -> Katty TELNET C port=1380
===============================
现在可以看到,客户端的输入依次为
elly (Username)
elly (Password)
w (Command1)
exit (Command2)
Tips: 如果要看更详细的数据信息,只要加上-v参数就可以了。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯