主要观点:
- 本文主要讲述了仅影响 iTerm2 3.5.0 和 3.5.1 的新漏洞,因回归导致窗口标题报告功能出现问题,可导致任意代码执行。
- 介绍了 Ps 2 转义序列可设置窗口标题,CSI Ps 21 t 可检索并将其放入
stdin
,导致利用容易。 - 指出 iTerm2 原生 tmux 集成存在弱点,使问题更严重。
- 提供了可自行尝试的 PoC 示例,包含恶意 payload 可设置并执行窗口标题中的代码。
- 报告后两天内发布了修复版本 iTerm2 3.5.2,建议谨慎开启“Terminal may report window title”设置。
关键信息:
- 漏洞影响 iTerm2 3.5.0 和 3.5.1,之前版本窗口标题报告功能已禁用。
- Ps 2 转义序列用于设置窗口标题,CSI Ps 21 t 用于检索并放入
stdin
。 - 原生 tmux 集成存在弱点,可 sneaking 报告的标题并发送换行。
- PoC 示例为
docker run --rm vin01/escape-seq-test:cve-2024-38396
或cat poc-iterm2-rce.txt
,其中包含恶意 payload。 - 修复版本为 iTerm2 3.5.2,可从[https://iterm2.com/downloads....]下载。
重要细节:
- David Leadbeater 独立发现该回归并报告[https://www.openwall.com/list...]。
- 禁用标题报告的补丁为f1e89f78。
- 改善 tmux 集成的补丁为fc60236a。
- 恶意 payload 为
\033]2;s&open -aCalculator&\a\033[21t \x1bP1000p%session-changed s
。 - 源代码位于[https://github.com/vin01/poc-...]。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。