Bonjour ! J’ai récemment téléchargé l’image Docker officielle de Discourse et l’ai analysée avec Trivy (un scanner de sécurité et de vulnérabilités). Le résultat révèle plusieurs vulnérabilités :
$ trivy image --vuln-type library discourse/base:release
...
Node.js (node-pkg)
Total : 19 (INCONNU : 0, FAIBLE : 1, MOYEN : 1, ÉLEVÉ : 15, CRITIQUE : 2)
┌─────────────────────────────────────┬─────────────────────┬──────────┬───────────────────┬────────────────────────────┬──────────────────────────────────────────────────────────────┐
│ Bibliothèque │ Vulnérabilité │ Sévérité │ Version installée │ Version corrigée │ Titre │
├─────────────────────────────────────┼─────────────────────┼──────────┼───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ ansi-html (package.json) │ CVE-2021-23424 │ ÉLEVÉE │ 0.0.7 │ 0.0.8 │ nodejs-ansi-html : ReDoS via une chaîne personnalisée │
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2021-23424 │
├─────────────────────────────────────┼─────────────────────┤ ├───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ ansi-regex (package.json) │ CVE-2021-3807 │ │ 3.0.0 │ 3.0.1, 4.1.1, 5.0.1, 6.0.1 │ nodejs-ansi-regex : Déni de service par expression régulière │
│ │ │ │ │ │ (ReDoS) lors de la correspondance de codes d'échappement ANSI│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2021-3807 │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ ├───────────────────┤ │ │
│ │ │ │ 4.1.0 │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
│ │ │ │ │ │ │
├─────────────────────────────────────┼─────────────────────┼──────────┼───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ clean-css (package.json) │ GHSA-wxhq-pm8v-cw75 │ FAIBLE │ 3.4.28 │ 4.1.11 │ Déni de service par expression régulière dans clean-css │
│ │ │ │ │ │ https://github.com/advisories/GHSA-wxhq-pm8v-cw75 │
├─────────────────────────────────────┼─────────────────────┼──────────┼───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ engine.io (package.json) │ CVE-2023-31125 │ MOYENNE │ 6.2.1 │ 6.4.2 │ Exception non gérée dans engine.io │
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2023-31125 │
├─────────────────────────────────────┼─────────────────────┼──────────┼───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ http-cache-semantics (package.json) │ CVE-2022-25881 │ ÉLEVÉE │ 4.1.0 │ 4.1.1 │ Vulnérabilité de déni de service par expression régulière (ReDoS)│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2022-25881 │
├─────────────────────────────────────┼─────────────────────┤ ├───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ json5 (package.json) │ CVE-2022-46175 │ │ 0.5.1 │ 1.0.2, 2.2.2 │ json5 : Pollution du prototype dans JSON5 via la méthode Parse│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2022-46175 │
│ │ │ ├───────────────────┤ │ │
│ │ │ │ 1.0.1 │ │ │
│ │ │ │ │ │ │
├─────────────────────────────────────┼─────────────────────┼──────────┼───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ loader-utils (package.json) │ CVE-2022-37601 │ CRITIQUE │ 2.0.2 │ 1.4.1, 2.0.3 │ loader-utils : pollution du prototype dans la fonction parseQuery dans parseQuery.js│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2022-37601 │
│ ├─────────────────────┼──────────┤ ├────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ │ CVE-2022-37599 │ ÉLEVÉE │ │ 3.2.1, 2.0.4, 1.4.2 │ Une faille de déni de service par expression régulière (ReDoS) a été détectée dans Funct...│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2022-37599 │
│ ├─────────────────────┤ │ │ ├──────────────────────────────────────────────────────────────┤
│ │ CVE-2022-37603 │ │ │ │ loader-utils : Déni de service par expression régulière │
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2022-37603 │
├─────────────────────────────────────┼─────────────────────┤ ├───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ minimatch (package.json) │ CVE-2016-10540 │ │ 0.2.14 │ 3.0.2 │ Minimatch est un utilitaire de correspondance minimale qui fonctionne en convertissant glob...│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2016-10540 │
│ ├─────────────────────┤ │ ├────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ │ CVE-2022-3517 │ │ │ 3.0.5 │ ReDoS via la fonction braceExpand │
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2022-3517 │
│ ├─────────────────────┤ │ ├────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ │ NSWG-ECO-118 │ │ │ >=3.0.2 │ Déni de service par expression régulière │
├─────────────────────────────────────┼─────────────────────┤ ├───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ taffydb (package.json) │ CVE-2019-10790 │ │ 2.6.2 │ │ TaffyDB peut permettre l'accès à n'importe quel élément de données dans la BD│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2019-10790 │
│ │ │ ├───────────────────┼────────────────────────────┤ │
│ │ │ │ 2.7.3 │ │ │
│ │ │ │ │ │ │
├─────────────────────────────────────┼─────────────────────┼──────────┼───────────────────┼────────────────────────────┼──────────────────────────────────────────────────────────────┤
│ underscore (package.json) │ CVE-2021-23358 │ CRITIQUE │ 1.3.3 │ 1.12.1 │ nodejs-underscore : Exécution arbitraire de code via la fonction template│
│ │ │ │ │ │ https://avd.aquasec.com/nvd/cve-2021-23358 │
└─────────────────────────────────────┴─────────────────────┴──────────┴───────────────────┴────────────────────────────┴──────────────────────────────────────────────────────────────┘
2023-05-16T18:33:20.715+0200 INFO Le résultat du tableau inclut uniquement les noms de fichiers des packages. Utilisez l'option '--format json' pour obtenir le chemin complet vers le fichier du package.
...
Il s’agit d’un extrait des vulnérabilités signalées, la liste complète incluant plus de 20 éléments :
CVE-2015-9284, CVE-2016-10540, CVE-2019-10790, CVE-2020-26235, CVE-2021-23358, CVE-2021-23424, CVE-2021-32810, CVE-2021-3807, CVE-2022-23639, CVE-2022-24713, CVE-2022-25881, CVE-2022-32149, CVE-2022-3517, CVE-2022-37599, CVE-2022-37601, CVE-2022-37603, CVE-2022-46175, CVE-2023-31125, GHSA-2qv5-7mw5-j3cg, GHSA-f85w-wvc7-crwc, GHSA-mc8h-8q98-g5hr, GHSA-rc23-xxgq-x27g, GHSA-wxhq-pm8v-cw75, NSWG-ECO-118
Quel est l’état d’avancement concernant ces vulnérabilités ? Prévoyez-vous de les corriger dans une prochaine version ?
Merci beaucoup par avance !