练习文件:

Exercise.zip

收集方法

Network Taps

一个物理机器,可以在电缆直接进行物理窃听,我们可以使用这个方法进行 嗅探和捕获数据包

常见的有两种方法:

  1. 使用硬件窃听线路并在通过时拦截流量
    WireShark - 图2
  2. 使用内联网络分路器,分路器可以在数据包通过时复制数据信息
    WireShark - 图3

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

常见基本过滤

  1. ip.src == ip # 来源地址
  2. ip.src == ip and ip.dst == ip # 来源地址和目标地址
  3. 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名称

WireShark - 图4

协议层级

分解捕获文件中的所有可用协议,并帮助分析人员根据数据包计数器和百分比在树视图中查看协议

WireShark - 图5

对话

对话表示两个特定端点之间的流量。此选项提供五种基本格式的对话列表;以太网、IPv4、IPv6、TCP和 UDP。因此,分析人员可以识别感兴趣事件的所有对话和联系端点

WireShark - 图6

端点

WireShark - 图7

名称解析不仅限于MAC地址。Wireshark 还提供 IP 和端口名称解析选项。但是,默认情况下不启用这些选项

WireShark - 图8

具有名称解析的端点菜单视图:

WireShark - 图9
除了名称解析,Wireshark 还提供 IP 地理定位映射,帮助分析人员识别地图的源地址和目标地址。但此功能默认未激活,需要 GeoIP 数据库等补充数据。目前,Wireshark 支持 MaxMind 数据库,最新版本的 Wireshark 都配置了 MaxMind DB resolver。但是,您仍然需要 MaxMind DB 文件并使用 “编辑 —> 首选项 —> 名称解析 —> MaxMind 数据库目录” 菜单向 Wireshark 提供数据库路径。下载并指定路径后,Wireshark 将自动在 IP 协议详细信息下 为匹配的 IP 地址提供 GeoIP 信息。

WireShark - 图10

端点和 GeoIP 视图:

WireShark - 图11

IPV4/6

WireShark - 图12

DNS

此选项分解捕获文件中的所有DNS数据包,并帮助分析人员根据数据包计数器和 DNS 协议的百分比在树视图中查看结果。因此,分析人员可以查看 DNS 服务的整体使用情况,包括 rcode、操作码、类、查询类型、服务和查询统计信息,并将其用于感兴趣的事件

WireShark - 图13

HTTP

此选项分解捕获文件中的所有HTTP数据包,并帮助分析人员根据数据包计数器和 HTTP 协议的百分比在树视图中查看结果。因此分析人员可以查看 HTTP 服务的整体使用情况,包括请求和响应代码以及原始请求

WireShark - 图14

数据包分析

wireshark 截取到的数据包由 OSI 5 到 7 层组成

工具

凭证收集

bonus.zip

Wireshark 解析器(FTP、HTTP、IMAP、pop 和 SMTP)被编程为从捕获文件中提取明文密码。您可以使用“工具 —> 凭据”菜单查看检测到的凭据 。此功能仅适用于特定版本的 Wireshark(v3.1 及更高版本)。由于该功能仅适用于特定协议,因此建议进行手动检查,而不是完全依赖此功能来确定流量中是否存在明文凭据。

WireShark - 图15

防火墙 ACL

bonus.zip

在某些情况下您需要发现异常、识别来源并采取行动。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)

WireShark - 图16