解决企业内物联网的身份问题

IoT 2年前 (2023) admin
258 0 0

解决企业内物联网的身份问题

网络安全和资产管理产品必须能够识别组织内当前运行的操作系统。有了这些信息,IT和安全部门就可以更好地监视和控制网络。

如果iot设备安装了软件代理程序,则设备和操作系统信息很容易收集。然而,对于一些操作系统,特别是嵌入式和物联网设备上安装的操作系统,代理程序不是一定会安装。这就是被动 OS 指纹识别的优势所在,因为被动方法不需要在设备上安装软件,并且适用于大多数操作系统。被动 OS 指纹识别涉及匹配主机网络流量中唯一标识模式,并相应地对流量进行分类。可以使用不同网络层的几个协议进行 OS 指纹识别:MAC 地址、TCP/IP 参数、HTTP 用户代理字符串和 DHCP 请求。

开放式系统互联(OSI)模型包含应用层、传输层、网络层和数据链路层的几个协议。一般来说,OSI 栈的低层协议(如 MAC 和 IP)与堆栈上层的协议相比具有更好的可靠性和更低的粒度,反之亦然。让我们从栈的底部开始,逐层向上。

从 MAC 地址开始

从 MAC 地址开始介质访问控制(MAC)协议在制造设备时使用一个唯一的物理标识符。这个12 位十六进制数,即 MAC 地址,通常写成六对用连字符分隔的字符串。左边的六位长字符串代表制造商的唯一标识符,右边的六位代表设备网络接口卡的序列号。例如,MacBook 笔记本电脑的 MAC 地址的最左侧六个数字字符串将是 88:66:5a,这是与苹果公司相关的字符串。

通过查看制造商的唯一标识符,网络管理员可以推断网络中运行的设备类型,有时甚至可以确定操作系统。

TCP/IP 可以告诉你更多

TCP/IP 中的身份识别 TCP/IP 协议栈是一种更细粒度的信息源。大多数操作系统在数据包头中设置唯一的参数值,使得可以通过观察这些值来识别操作系统。在操作系统指纹识别中使用最常见的参数包括初始生存时间(TTL)、窗口大小、”不分段”标志和 TCP 选项(值和顺序)。例如,如果某个设备的出站数据包的 IP 头部带有设置了 “不分段” 标志、TTL 值为 64、窗口大小为 65535 和特定的一组 TCP 选项(02、01、03、01、01、08、04、00),这就足以将其识别为运行 MacOS 的设备。

HTTP 包含大量信息

HTTP 包含大量信息 应用层中的多个协议也有助于识别设备的操作系统类型和确切的版本或发行版。在某些情况下,这些字段可以由用户配置,因此不太可靠。

在操作系统指纹识别中使用最常见的应用层协议是 HTTP,通过头部的 User-Agent 字段来实现。该字段由应用程序(例如 Web 浏览器)添加,包括客户端的应用程序、操作系统和底层设备等信息。例如,向服务器发出的 HTTP 请求可能包含一个 User-Agent 字段,该字段将客户端标识为在 Windows 7 操作系统上运行的 Firefox 浏览器:Mozilla/5.0 (Windows NT 6.1; WOW64; rv:22.0) Gecko/20100101 Firefox/22.0。

User-Agent 字段不是 HTTP 协议中唯一的指标。大多数操作系统都有内置的连通性测试,当设备连接到公共网络时会自动运行。例如,网络连通性状态指示器(NCSI)是 Microsoft Windows 操作系统中的一种互联网连接感知协议,由一系列特定的 DNS 和 HTTP 请求和响应组成,指示主机是否位于被控制的门户或代理服务器后面。

DHCP 识别主机

DHCP 识别主机 用于在网络上进行 IP 分配的 DHCP 协议提供了几个可用于识别主机的指标。DHCP 由 4 个步骤组成:发现、提供、请求和确认(DORA)。例如,在本地网络上广播 DHCP 消息并从 DHCP 服务器接收响应的 Windows 主机将发送一个唯一的供应商类标识符 “MSFT 5.0″,并且参数请求列表将包含一系列 Windows 主机常见的值序列。

结合 DHCP 选项本身的顺序,这些指标足以将主机识别为 Windows 操作系统。

总结

虽然某些协议比其他协议提供更准确的识别,但是对于操作系统识别的任务,没有“万无一失”的方法,不同的选择提供不同类型的信息。与其基于单个协议进行指纹识别,您可能会考虑多协议方法,例如将HTTP用户代理与低级TCP选项相结合。


原文始发于微信公众号(军机故阁):解决企业内物联网的身份问题

版权声明:admin 发表于 2023年4月1日 下午2:03。
转载请注明:解决企业内物联网的身份问题 | CTF导航

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...