CVE-2020-37216Hirschmann HiOS设备在08.1.00和07.1.01之前的版本中存在一个高危的拒绝服务漏洞。该漏洞的根本原因在于EtherNet/IP协议栈未能正确处理数据包长度字段。未经身份验证的远程攻击者可以通过网络发送带有伪造长度值的特制UDP EtherNet/IP数据包,触发设备处理逻辑错误,导致目标设备崩溃、挂起或完全瘫痪,严重影响系统的可用性。
该漏洞是Hirschmann HiOS设备中EtherNet/IP协议栈的一个典型输入验证缺陷。EtherNet/IP是一种工业以太网协议,通常运行在UDP端口44818上。在解析UDP数据包时,设备软件信任数据包头中声明的长度字段,而没有验证该长度是否与实际接收到的数据包大小相匹配。攻击者可以构造一个恶意数据包,其中Length字段的值被设置为大于实际UDP载荷的大小。当设备尝试根据这个伪造的长度值读取数据或进行内存操作时,由于缓冲区边界检查缺失,会导致内存破坏。这将触发异常,使设备进程崩溃,从而造成拒绝服务。