首页 -> 安全研究

安全研究

安全漏洞
BSD eeprom格式串漏洞

发布日期:2000-10-06
更新日期:2000-10-06

受影响系统:

NetBSD NetBSD 1.4.2
NetBSD NetBSD 1.4.1
NetBSD NetBSD 1.4
OpenBSD OpenBSD 2.7
OpenBSD OpenBSD 2.6
OpenBSD OpenBSD 2.5
OpenBSD OpenBSD 2.4
OpenBSD OpenBSD 2.3
不受影响系统:
OpenBSD OpenBSD 2.8
描述:

eeprom是个实用程序,用来显示和修改sparc系统中的硬件EEPROM。由于它需要读写内核内存中的结构,所以eeprom被安装成具有sgid kmem属性。随sparc版本的NetBSD和OpenBSD一起发行的eeprom程序(OpenBSD中的eeprom程序是从NetBSD中的eeprom衍生而来的)容易受到一个可本地利用的格式串漏洞的攻击。
问题发生在读或写eeprom域失败后显示错误信息时。此时一个字符串被传递给*printf( )函数,该字符串有一部分是由用户的输入构成的(用户的输入是“field name”参数,通过命令行提供给eeprom程序)。结果,用户可以在格式域中插入格式说明符以写入堆栈的任意位置。如果堆栈中的数据可被普通用户覆盖,执行流程就可以被更改,以便运行用户提供的机器码。
通过利用这个漏洞,攻击者可能获得kmem组的权限。当获得kmem组的权限后,作出进一步的危害(比如得到完全的roo权限)是轻而易举的事情。

<* 来源:K2 (ktwo@ktwo.ca) *>



测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!


暂无。

建议:
临时解决办法:

    NSFOCUS建议您在不需要使用eeprom程序时去掉其setgid kmem属性。

厂商补丁:

    对于OpenBSD,升级到OpenBSD 2.8。
    对于NetBSD,可以通过匿名CVS获得修正过的eeprom版本

浏览次数:5571
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障