IP 标准 RFC 791( 互联网协议)指定了一组用于提供特殊路由控制、诊断工具和安全性的选项。
RFC 791 指出,这些选项“对于最常见的通信是不必要的”,实际上,它们很少出现在 IP 数据包标头中。这些选项显示在 IP 数据包标头中目标地址之后,如图 1 所示。当它们确实出现时,它们经常被非法使用。
本主题包含以下部分:
IP 数据包头选项的用途
表 1 列出了 IP 选项及其附带属性。
类型 |
类 |
数量 |
长度 |
预期用途 |
恶意使用 |
---|---|---|---|---|---|
选项结束 |
0* |
0 |
0 |
指示一个或多个 IP 选项的结束。 |
没有。 |
无选项 |
0 |
1 |
0 |
指示标头中没有 IP 选项。 |
没有。 ![]() |
安全 |
0 |
2 |
11 位 |
为主机提供一种发送与国防部 (DoD) 要求兼容的安全、TCC(封闭用户组)参数和处理限制代码的方法。(RFC 791“ 互联网协议 ”和 RFC 1038“ 修订的 IP 安全选项 ”中指定的此选项已过时。 目前,此屏幕选项仅适用于 IPv4。 |
未知。但是,由于它已过时,因此它在 IP 标头中的存在是可疑的。 |
松散源路由 |
0 |
3 |
不同 |
指定数据包在从源到目标的旅程中要执行的部分路由列表。数据包必须按指定的地址顺序继续前进,但允许在指定的地址之间通过其他设备。 |
规避。攻击者可以使用指定的路由来隐藏数据包的真正来源或访问受保护的网络。 |
记录路由 |
0 |
7 |
不同 |
记录 IP 数据包传输路径沿网络设备的 IP 地址。然后,目标计算机可以提取和处理路由信息。(由于选项和存储空间的大小限制为 40 字节,因此最多只能记录 9 个 IP 地址。 目前,此屏幕选项仅适用于 IPv4。 |
侦察。如果目标主机是攻击者控制下的受感染计算机,他或她可以收集有关数据包通过的网络的拓扑和寻址方案的信息。 |
流 ID |
0 |
8 |
4 位 |
(已过时)提供了一种通过不支持流概念的网络传输 16 位 SATNET 流标识符的方法。 目前,此屏幕选项仅适用于 IPv4。 |
未知。但是,由于它已过时,因此它在 IP 标头中的存在是可疑的。 |
严格源路由 |
0 |
9 |
不同 |
指定数据包在从源到目标的旅程中要执行的完整路由列表。列表中的最后一个地址将替换目标字段中的地址。 目前,此屏幕选项仅适用于 IPv4。 |
规避。攻击者可以使用指定的路由来隐藏数据包的真正来源或获取对受保护网络的访问权限。 |
时间 戳 |
2** |
4 |
|
记录每个网络设备在从起点到目的地的行程中接收数据包的时间(采用协调世界时 [UTC]***)。网络设备由 IP 地址标识。 此选项会生成数据包路径上的设备 IP 地址列表以及每个设备之间的传输持续时间。 目前,此屏幕选项仅适用于 IPv4。 |
侦察。如果目标主机是攻击者控制下的受感染计算机,则他或她可以收集有关数据包所通过的网络的拓扑和寻址方案的信息。 |
* 标识为 0 的选项类旨在提供额外的数据包或网络控制。 ** 标识为 2 的选项类设计用于诊断、调试和测量。 时间戳使用自 UTC 午夜以来的毫秒数。UTC也被称为格林威治标准时间(GMT),它是国际时间标准的基础。 |
用于检测用于侦测的 IP 选项的屏幕选项
以下屏幕选项检测攻击者可用于侦察或用于某些未知但可疑目的的 IP 选项:
记录路由 — Junos OS 检测 IP 选项为 7 的数据包(记录路由),并将事件记录在入口接口的屏幕计数器列表中。目前,此屏幕选项仅适用于 IPv4。
时间戳 — Junos OS 检测 IP 选项列表包含选项 4(互联网时间戳)的数据包,并将事件记录在入口接口的屏幕计数器列表中。目前,此屏幕选项仅适用于 IPv4。
安全性 — Junos OS 检测 IP 选项为 2(安全)的数据包,并将事件记录在入口接口的屏幕计数器列表中。目前,此屏幕选项仅适用于 IPv4。
流 ID — Junos OS 检测 IP 选项为 8(流 ID)的数据包,并将事件记录在入口接口的屏幕计数器列表中。目前,此屏幕选项仅适用于 IPv4。
如果收到具有上述任何 IP 选项的数据包,Junos OS 会将其标记为网络侦测攻击,并记录入口接口的事件。