微软在 ncurses(new curses 的缩写)编程库中发现了一组内存损坏漏洞,威胁者可利用这些漏洞在易受攻击的 Linux 和 macOS 系统上运行恶意代码。
微软威胁情报研究人员 Jonathan Bar Or、Emanuele Cozzi 和 Michael Pearse 在今天发布的一份技术报告中说:利用环境变量中毒,攻击者可以利用这些漏洞提升权限,在目标程序的上下文中运行代码或执行其他恶意操作。
这些漏洞被统一标记为 CVE-2023-29491(CVSS 得分为 7.8),截至 2023 年 4 月已得到修复。微软表示,它还与苹果公司合作修复了与这些漏洞相关的macOS特定问题我爱线报网。
环境变量是用户定义的值,可被系统中的多个程序使用,并可影响它们在系统中的行为方式。操纵这些变量会导致应用程序执行未经授权的操作。
微软的代码审计和模糊测试发现,ncurses 库会搜索包括 TERMINFO 在内的多个环境变量,这些变量可能会被病毒化,并与已发现的漏洞相结合,从而实现权限升级。Terminfo 是一个数据库,可使程序以独立于设备的方式使用显示终端。
这些漏洞包括堆栈信息泄漏、参数化字符串类型混淆、逐一错误、在 Terminfo 数据库文件解析过程中出现堆越界,以及使用取消的字符串拒绝服务。
研究人员表示,攻击者可以利用发现的漏洞提升权限,并在目标程序的上下文中运行代码。即使如此,攻我爱线报网击者通过利用内存损坏漏洞获得程序的控制权也需要多阶段攻击。
攻击者可能需要将这些漏洞串联起来才能提升权限,例如利用堆栈信息泄漏获得任意读取原语,同时利用堆溢出获得写入原语。
参考链接:
https://thehackernews.com/2023/09/microsoft-uncovers-flaws-in-ncurses.html