关键漏洞信息 I. 漏洞概述 漏洞名称: check_dhcp - Nagios Plugins <= 2.0.1 Arbitrary Option File Read 发布日期: 2014年5月15日 发现者: Dawid Golunski 严重程度: 中等 II. 背景 Nagios 是一款开源的计算机系统监控、网络监控和基础设施监控软件应用。它为服务器、交换机、应用程序和服务提供监控和警报服务,并在问题发生时提醒用户,在问题解决后再次提醒用户。 III. 漏洞介绍 check_dhcp 插件是官方 Nagios 插件包的一部分,包含一个漏洞,允许恶意攻击者读取本地系统上属于 root 用户的 INI 配置文件的部分内容。这可能会导致攻击者获取敏感信息,如密码,这些信息本应仅对 root 用户可见。 IV. 漏洞描述 check_dhcp 插件需要程序二进制文件具有 root SUID 权限才能正确运行。默认安装时从源码安装 check_dhcp,安装脚本会自动为文件设置 SUID 位。 插件允许通过 选项从提供的配置文件中读取选项。由于 check_dhcp 以 root 身份运行(得益于 SUID 位权限),并且在访问配置文件时不会放弃 root 权限,也不会检查给定文件是否对执行插件的用户可访问,因此本地系统上的未授权用户可以通过这种方式访问任何 root INI 配置文件。 V. 概念验证 攻击者可以利用这个漏洞读取 配置文件中的内容,获取 mysql root 用户的密码。 VI. 业务影响 具有本地访问权限的恶意用户如果在安装了带有 SUID 的 check_dhcp 插件的系统上,可以利用此漏洞读取任何属于 root 的 INI 格式配置文件,并可能提取一些敏感信息。 VII. 受影响系统 安装了作为 Nagios Plugins 2.0.1 或更早版本的一部分的 check_dhcp SUID 二进制文件的系统是易受攻击的。 VIII. 解决方案 如果不使用插件,请从 check_dhcp 二进制文件中删除 SUID 权限位。 安装供应商发布的更新版插件。 IX. 参考资料 Nagios 插件目录 Nagios Plugins 2.0.1 下载 Nagios Plugins 文档 Setuid Wikipedia 页面 INI 文件 Wikipedia 页面 MySQL 用户安全文档 法律黑客安全公告