slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
微软宣布 MacOS 和 Linux 上使用的“ncurses”有内存损坏漏洞
17611538698
webmaster@21cto.com

微软宣布 MacOS 和 Linux 上使用的“ncurses”有内存损坏漏洞

安全 0 1941 2023-09-19 11:51:23

图片

21CTO导读:ncurses 扩展库存在环境变量提权等漏洞,开发者需留意并修正。

背景

当地时间9月14号,微软发布警报,称 MacOS 和 Linux 中使用的软件“ncurses”存在重大漏洞。

“ncurses”是一个已有 30 年历史的库,它的名字表示是新的 curses,其提供了一组API接口,支持编写文本用户界面(TUI)或具有图形外观的的控制台应用。它正广泛应用于 MacOS 、Linux 和 FreeBSD 等主流操作系统。

此次公布的漏洞是一个可能导致内存损坏的缺陷,其编号为CVE-2023-29491。在 CVSS 得分为“7.8”,重要性级别为“高”。微软正与苹果公司合作修复了CVE-2023-29491相关的macOS特定问题。

微软威胁情报研究人员Jonathan Bar Or、Emanuele Cozzi 和Michael Pearse 在发布的一份技术报告中说:利用环境变量中毒,攻击者可以利用这些漏洞提升许可权,在程序上下文中运行代码或执行其他恶意操作。

ncurses 缺陷允许环境变量中毒

环境变量是使用者自定义的值,可在系统中多个程序使用,并可影响它们在系统中的行为方式。操纵这些变量会导致应用程序执行未经授权的操作。

微软指出,ncurses 库使用独立于终端的终端数据库(不需要提前知道终端的功能)。这表示此库可以访问有关正使用终端的一组关键信息。

微软的代码审核和模糊测试发现,ncurses会搜索包含TERMINFO (终端数据库环境变量)在内的多个环境变量,这些变量可能会被病毒化,指向任意目录,并与已发现的漏洞相结合,从而实现许可权升级。

这些漏洞包括堆栈信息泄漏、参数化字串类型混淆、在Terminfo 数据库解析过程中出现堆栈越界,以及字符串拒绝服务等。

HOME 是 ncurses 使用的另一个环境变量,可以通过类似的技术中毒。

“每个现代操作系统都包含一组可能影响程序行为的环境变量,”微软表示。“攻击者众所周知的技术是操纵这些环境变量,使程序执行有利于其恶意目的的操作,从而‘毒害’它们。”

6.4及更早版本中发现的漏洞

微软表示,漏洞的发现归功于 Gergely Kalman 的贡献,他在 Twitter 上私下协助微软通过多个用例推进了这项安全病毒研究。

微软指出,虽然审核是在最新版本的 ncurses 6.4 上进行的,但该库的早期版本也可能带有一些或所有这些漏洞。

微软表示:“有趣的是,虽然我们检查的 ncurses 版本是 6.4(研究时的最新版本),但 macOS 上的 ncurses 版本是 5.7,但有几个由苹果维护的安全相关补丁。” “尽管如此,我们的所有发现对于所有 ncurses 版本都是正确的,因此对 Linux 和 macOS 系统都有影响。”

微软建议使用 Microsoft Defender 来检测和防止 Linux 和 macOS 上潜在的 TERMINFO 数据库滥用。

微软也针对此漏洞提供了安全更新,强烈建议开发者和用户应用该更新。

微软博客地址:

https://www.microsoft.com/en-us/security/blog/2023/09/14/uncursing-the-ncurses-memory-corruption-vulnerabilities-found-in-library/

作者:场长

评论