A 32-Year-Old Bug Walks into a Telnet Server
a day ago
- 一个32岁的预认证RCE漏洞存在于GNU inetutils Telnetd中(CVE-2026-32746),允许基于BSS的缓冲区溢出约400字节。
- 该漏洞位于LINEMODE选项和SLC(设置行模式字符)函数中,这些函数缺乏边界检查。
- 尽管年代久远,Telnet仍然在生产系统中使用,通常是出于遗留或供应商特定的原因,使得该漏洞的影响范围广泛。
- 由于数据限制(三元组,0x200字节大小)和依赖编译器的内存布局,利用具有挑战性。
- 在32位x86系统上,成功利用可能导致任意释放和潜在的RCE,但在64位系统上,利用难度显著增加。
- 一种检测技术涉及发送溢出数据并检查服务器是否回显异常值,这表示存在漏洞。
- inetutils项目尚未发布官方修复版本;截至撰写时,只有一些Debian发行版(sid/forky)有修复。
- 该漏洞自1994年以来一直悄悄存在,许多代码的分支和副本存在于各种产品中。