CVE-2026-31368: Échec d'initialisation de la base de données
Résumé exécutif
Section intitulée « Résumé exécutif »Une défaillance critique de stabilité a été identifiée dans la commande de gestion OpenCVE import_cves. Cette anomalie empêche l’initialisation correcte de la base de données de renseignement sur les menaces lors des installations neuves, rendant la plateforme effectivement inutilisable pour les opérations de sécurité tant qu’elle n’est pas corrigée. La cause racine réside dans une mauvaise gestion des structures de données lors de l’analyse du dépôt OpenCVE KB.
Analyse technique
Section intitulée « Analyse technique »L’analyse indique que la défaillance survient lors du traitement des entrées de données CVE. Le fichier import_cves.py, plus précisément dans la méthode insert_cve, tente d’accéder à des clés imbriquées dans l’objet dictionnaire représentant chaque entrée CVE.
Le code à la ligne 44 de /app/opencve/web/cves/management/commands/import_cves.py exécute :
"created": cve_data["created"]["data"]
Lorsqu’une entrée CVE est dépourvue de la clé “created”, ou que l’entrée “created” est nulle, l’application tente de souscrire un objet NoneType, déclenchant une TypeError. Cette vulnérabilité n’est pas un vecteur d’exécution de code arbitraire, mais plutôt une défaillance de disponibilité empêchant le système de peupler sa base de données principale.
Logique de détection
Section intitulée « Logique de détection »Pour surveiller cet échec dans les environnements de production, les stratégies de détection suivantes doivent être mises en œuvre.
title: Échec d'importation OpenCVE détectélogsource: product: linux service: dockerdetection: selection: Message|contains: - "TypeError: 'NoneType' object is not subscriptable" - "import_cves.py" condition: selectionContainerLogs| where LogMessage contains "TypeError: 'NoneType' object is not subscriptable"| where LogMessage contains "import_cves.py"