
URGENT/11 detection tool by Armis

urgent11-detector 是一款用于检测设备是否正在运行 Interpeak IPnet TCP/IP 协议栈,并由此判断其是否面临 URGENT/11 漏洞风险的工具。
鉴于近期的安全发现(参见 https://armis.com/urgent11),我们决定开发一款工具,用于检测设备是否正在使用 Interpeak 的 IPnet TCP/IP 协议栈,无论其底层运行的是何种 RTOS。 IPnet TCP/IP 协议栈自 VxWorks 6.5 版本起便是其原生内置的协议栈,但在过去,它也得到过多种 RTOS 的支持。 检测设备所使用的底层 TCP/IP 协议栈并非易事,而借助本工具,用户可以识别出易受 URGENT/11 漏洞影响的设备。
该工具通过向目标主机发送 TCP 和 ICMP 指纹,实现了 4 种独特的检测方法。 通过计算所有方法得分的总和,我们可以高精度地判断设备是否运行着依赖 IPnet TCP/IP 协议栈的操作系统,以及该操作系统是否为 VxWorks。 此外,我们还会测试主机是否容易受到 CVE-2019-12258 的攻击,该漏洞是 URGENT/11 漏洞之一,影响所有使用 IPnet 的 VxWorks 版本。 如果检测到某设备在 VxWorks 上运行 IPnet,且不易受到该 CVE 的影响,则可以推断该设备已针对 URGENT/11 漏洞进行了修补。
直接使用 pip3 安装该工具:
pip3 install urgent11-detector
然后按如下方式运行:
urgent11-detector IP PORT
或者,你也可以安装依赖项后手动运行:
./urgent11-detector.py IP PORT

假设你已经安装了 python3——唯一的依赖项是 scapy 和 python-iptables。 使用以下命令安装:
pip3 install scapy python-iptables
或参考官方 scapy 安装指南 以及官方 python-iptables 文档。
此外,urgent11-detector 目前仅支持在 Linux 环境下运行。
版权所有 © 2019 Armis。
依据 GNU Affero 通用公共许可证 3.0 版(“许可证”)获得许可; 除非遵守许可证的规定,否则您不得使用此文件。 您可以在以下位置获取许可证副本:
https://www.gnu.org/licenses/agpl-3.0.txt
除非适用法律要求或书面同意,否则按“原样”分发软件,不附带任何明示或暗示的保证或条件。 有关具体的权限和限制,请参阅许可证。