FreeBSD:ruby -- 与 Exception#to_s/NameError#to_s 有关的 $SAFE 转义漏洞 (2a093853-2495-11e2-b0c7-000d601460a4)

medium Nessus 插件 ID 62791

简介

远程 FreeBSD 主机缺少一个或多个与安全有关的更新。

描述

官方 Ruby 站点报告:

发现 Exception#to_s、NameError#to_s 和 name_err_mesg_to_s() 的漏洞,这些是 Ruby 解释器内部 API。恶意用户代码可通过利用其中一个安全漏洞来绕过 $SAFE 检查。

Ruby 的 $SAFE 机制使不受信任的用户代码能够在 $SAFE >= 4 模式下运行。这是一种沙盒因此一些操作仅限于在该模式下进行,以保护沙盒外的其他数据。

已发现的问题涉及该机制。Exception#to_s、NameError#to_s 和 name_err_mesg_to_s() interpreter-internal API 没有正确处理 $SAFE 位,因此可利用它们将未受感染的字符串对象破坏性地标记为受感染。利用这一漏洞,沙盒中不受信任的代码可破坏性地修改之前未受感染的字符串。

Ruby 1.8 曾经存在一个类似的安全问题。它修复了 Exception#to_s 和 NameError#to_s,但 name_err_mesg_to_str() 问题幸免于之前的安全补丁

解决方案

更新受影响的程序包。

另见

http://www.nessus.org/u?23ace916

https://access.redhat.com/security/cve/cve-2012-4464

http://www.nessus.org/u?c25aaec4

插件详情

严重性: Medium

ID: 62791

文件名: freebsd_pkg_2a093853249511e2b0c7000d601460a4.nasl

版本: 1.8

类型: local

发布时间: 2012/11/2

最近更新时间: 2021/1/6

支持的传感器: Nessus

风险信息

VPR

风险因素: Low

分数: 3.7

CVSS v2

风险因素: Medium

基本分数: 5

矢量: CVSS2#AV:N/AC:L/Au:N/C:N/I:P/A:N

漏洞信息

CPE: p-cpe:/a:freebsd:freebsd:ruby, cpe:/o:freebsd:freebsd

必需的 KB 项: Host/local_checks_enabled, Host/FreeBSD/release, Host/FreeBSD/pkg_info

补丁发布日期: 2012/11/1

漏洞发布日期: 2012/8/21

参考资料信息

CVE: CVE-2012-4464, CVE-2012-4466