练习文件:
收集方法
Network Taps
一个物理机器,可以在电缆直接进行物理窃听,我们可以使用这个方法进行 嗅探和捕获数据包
常见的有两种方法:
- 使用硬件窃听线路并在通过时拦截流量
- 使用内联网络分路器,分路器可以在数据包通过时复制数据信息
MAC Floods
不断的向交换机施加压力以填满其 CAM 数据表,一旦 CAM 数据表填满,交换机就不在接受新的 MAC 地址,为了保证网络获取,交换机将先所有端口发送数据包
ARP 中毒
通过 ARP 中毒可以将流量从主机重定向到正在监听的主机
过滤捕获
语法
- Scope (范围) : host、net、port、portrange、addr
- Direction (方向) : src、dst
- protocol (协议) : ether、wlan、ip、ip6、arp、rarp、tcp、udp
比较运算符
English | 描述 | Example |
---|---|---|
eq | == | Equal |
ne | != | Not equal |
gt | > | 大于 |
lt | < | 小于 |
ge | >= | Greater than or equal to |
le | <= | Less than or equal to |
逻辑操作
- and
- or
- eq
常见基本过滤
ip.src == ip # 来源地址
ip.src == ip and ip.dst == ip # 来源地址和目标地址
tcp.port eq 123 # 端口
Filter: contains
Filter | contains |
---|---|
Type | 比较运算符 |
Description | 在数据包 中搜索一个值,区分大小写 |
Example | Find all “Apache” servers. |
Workflow | 找出所有数据包的 server 字段包含 apache 的HTTP 数据包 |
Usage | http.server contains "Apache" |
Filter: matches
Filter | matches | |
---|---|---|
Type | 比较运算符 | |
Description | 按照正则表达式 匹配,不区分大小 |
|
Example | Find all .php and .html pages. | |
Workflow | 找出所有数据包的 host 字段匹配关键字 .php 或者 .html | |
Usage | `http.host matches “.(php | html)”` |
Filter: in
Filter | in |
---|---|
Type | 标志位寻找 |
Description | 搜索特定范围的值或字段 |
Example | 查找所有的 80, 443 or 8080. |
Workflow | 找出所有数据报端口为 80、443、8080 |
Usage | tcp.port in {80,443,8080} |
Filter: upper
Filter | upper |
---|---|
Type | Function |
Description | 将字符串转换为大写 |
Example | Find all “APACHE” servers. |
Workflow | 查找所有 HTTP 数据报的 server HTTP 头部字段中包含 APACHE 关键字的数据包 |
Usage | upper(http.server) contains "APACHE" |
Filter: lower
Filter | lower |
---|---|
Type | Function |
Description | 将字符串转换为小写 |
Example | Find all “apache” servers. |
Workflow | 查找所有 HTTP 数据包中 server HTTP 头部字段中包含 apache 关键字的数据包 |
Usage | lower(http.server) contains "apache" |
Filter: string
Filter | string |
---|---|
Type | Function |
Description | 将非字符串转换为字符串 |
Example | 找出所有奇数帧 |
Workflow | 将所有帧编号字段转换为字符串值,并列出以奇数结尾的帧 |
Usage | string(frame.number) matches "[13579]$" |
统计
解析地址
供已解析地址及其主机名的列表,帮助分析人员识别捕获文件中可用的IP 地址和DNS名称
协议层级
分解捕获文件中的所有可用协议,并帮助分析人员根据数据包计数器和百分比在树视图中查看协议
对话
对话表示两个特定端点之间的流量。此选项提供五种基本格式的对话列表;以太网、IPv4、IPv6、TCP和 UDP。因此,分析人员可以识别感兴趣事件的所有对话和联系端点
端点
除了名称解析,Wireshark 还提供 IP 地理定位映射,帮助分析人员识别地图的源地址和目标地址。但此功能默认未激活,需要 GeoIP 数据库等补充数据。目前,Wireshark 支持 MaxMind 数据库,最新版本的 Wireshark 都配置了 MaxMind DB resolver。但是,您仍然需要 MaxMind DB 文件并使用 “编辑 —> 首选项 —> 名称解析 —> MaxMind 数据库目录” 菜单向 Wireshark 提供数据库路径。下载并指定路径后,Wireshark 将自动在 IP 协议详细信息下 为匹配的 IP 地址提供 GeoIP 信息。
IPV4/6
DNS
此选项分解捕获文件中的所有DNS数据包,并帮助分析人员根据数据包计数器和 DNS 协议的百分比在树视图中查看结果。因此,分析人员可以查看 DNS 服务的整体使用情况,包括 rcode、操作码、类、查询类型、服务和查询统计信息,并将其用于感兴趣的事件
HTTP
此选项分解捕获文件中的所有HTTP数据包,并帮助分析人员根据数据包计数器和 HTTP 协议的百分比在树视图中查看结果。因此分析人员可以查看 HTTP 服务的整体使用情况,包括请求和响应代码以及原始请求
数据包分析
wireshark 截取到的数据包由
OSI 5 到 7 层
组成
工具
凭证收集
Wireshark 解析器(FTP、HTTP、IMAP、pop 和 SMTP)被编程为从捕获文件中提取明文密码。您可以使用“工具 —> 凭据”菜单查看检测到的凭据 。此功能仅适用于特定版本的 Wireshark(v3.1 及更高版本)。由于该功能仅适用于特定协议,因此建议进行手动检查,而不是完全依赖此功能来确定流量中是否存在明文凭据。防火墙 ACL
在某些情况下您需要发现异常、识别来源并采取行动。Wireshark 不仅仅涉及数据包详细信息;它可以帮助您创建防火墙规则,只需单击几下即可实施。您可以使用 “工具 —> 防火墙**ACL**规则” 菜单创建防火墙规则。使用此功能后,它将打开一个新窗口并提供用于不同目的的规则组合(基于 IP、端口和MAC地址)。请注意,这些规则是为在外部防火墙接口上实施而生成的。 目前,Wireshark 可以为以下内容创建规则:- Netfilter (iptables)
- Cisco IOS (standard/extended)
- IP Filter (ipfilter)
- IPFirewall (ipfw)
- Packet filter (pf)
- Windows Firewall (netsh new/old format)