Les dépendances privées sont couvertes
Certains testeurs open source dépendaient de dépôts privés sans le savoir. ORT Server prend en charge les dépôts privés, ces dépendances sont donc analysées elles aussi.
Boîte à outils OCCTET
Ce que la chaîne d'outils OCCTET a trouvé sur l'ensemble des projets de la Fondation Eclipse, sur 96 projets open source populaires dans dix écosystèmes et sur des produits réels de PME, d'après le livrable D3.3.
L’ensemble des projets de la Fondation Eclipse a été analysé avec la boîte à outils OCCTET. L’instance ORT Server d’OCCTET référence chaque projet avec ses dépôts GitHub et GitLab, et consolide les données sur les dépôts, les paquets et les vulnérabilités dans une vue opérationnelle unique de tout le portefeuille. La même chaîne d’outils open source et gratuite qu’une PME peut déployer passe ainsi à l’échelle du portefeuille d’une fondation open source.
Un volume à traiter par priorité
46 211 constats de vulnérabilité restent non résolus sur l’ensemble du portefeuille. Savoir lesquels traiter en premier rend ce volume gérable : c’est le rôle de l’OCCTET Curator et des déclarations VEX.
Une dizaine des dépôts les plus téléchargés et les plus adoptés ont été sélectionnés dans chacun de dix écosystèmes de langages : C/C++, C#, Swift, Rust, Ruby, Python, Go, PHP, JavaScript et la JVM. ORT Server a résolu le graphe complet des dépendances transitives de chaque projet et vérifié chaque paquet dans les bases d’avis de sécurité OSV et VulnerableCode.
Toutes les analyses ont abouti. 74 analyses se sont déroulées sans incident ; 22 ont signalé des problèmes, surtout des sous-projets qui n’ont pas pu être résolus, ce qui révèle souvent des pratiques de build à améliorer dans le projet lui-même.
| Paquet | Trouvé dans | Gravité | Score | Identifiants d'avis | Corrigé dans |
|---|---|---|---|---|---|
axios@1.12.2 | boostorg/boost | Critique | 10,0 | 19 | ≥ 1.13.5 |
bcprov-jdk18on@1.79 | qt/qtbase | Critique | 10,0 | 4 | ≥ 1.84 |
minimist@0.0.8 | mxcl/PromiseKit | Critique | 9,8 | 5 | ≥ 1.2.6 |
flatted@3.3.1 | rails/rails | Critique | 9,8 | 4 | ≥ 3.4.0 |
openssl@0.10.71 (crate Rust) | openssl/openssl | Élevée | 9,3 | 10 | ≥ 0.10.78 |
Comment les constats sont comptés
Chaque constat correspond à un avis de sécurité rapproché d’une version de paquet du graphe de dépendances. Si un avis concerne cinq paquets, il compte cinq fois : les totaux mesurent le volume à trier, pas le nombre d’avis distincts.
Cinq projets renommés hébergés sur GitHub ont été analysés avec ORT Server et comparés au graphe de dépendances de GitHub. ORT Server exécute les gestionnaires de paquets du projet : il voit donc les dépendances telles que le build les résout, y compris les dépendances transitives, sans aucune modification du projet.
| Projet | ORT Server | GitHub | Vulnérabilités (ORT Server) | Ce qui explique l'écart |
|---|---|---|---|---|
| Apache Kafka | 96 | 74 | 51 | ORT Server trouve les dépendances Python déclarées avec ~= (64 contre 25) et les dépendances Maven d’un scope non standard (32 contre 10). GitHub liste en plus 39 GitHub Actions. |
| Apache Tomcat | 40 | 51 | 45 | Les mêmes 40 dépendances Maven ; les 11 entrées supplémentaires sur GitHub sont des GitHub Actions. |
| Eclipse Jetty | 725 | 5 396 | 104 | GitHub compte aussi les plugins Maven et les propres modules du projet comme des paquets ; ORT Server retient ce qui est livré avec le produit. |
| Apache Hadoop | 1 677 | 4 142 | 1 103 | Les dépendances Maven sont comptées différemment. GitHub ne voit ni les dépendances Python transitives (1 contre 21) ni Bower (27) ; ORT Server n’a pas pu analyser les projets NuGet. |
| Eclipse Mosquitto | – | 34 | 0 | Du C/C++ sans gestionnaire de paquets : aucun des deux outils ne peut résoudre les dépendances, et GitHub ne liste que des GitHub Actions. ORT Server accepte des dépendances déclarées à la main, par exemple en SPDX. |
| Graphe de dépendances GitHub | ORT Server | |
|---|---|---|
| Source des avis | La GitHub Advisory Database. | OSV et VulnerableCode, via les plugins advisor d’ORT ; d’autres sources peuvent être ajoutées. |
| Résolution des dépendances | Lit surtout les fichiers manifestes et de verrouillage pris en charge dans le dépôt. | Exécute les gestionnaires de paquets du build et résout le graphe transitif complet, sans modifier le projet. |
| Couverture | Inclut les workflows GitHub Actions. | Un plus large éventail de gestionnaires de paquets ; les GitHub Actions ne sont pas analysées. |
| Périmètre | Un dépôt à la fois. | Organisations, produits et dépôts, avec des tableaux de bord à chaque niveau. |
| Éléments pour le tri | Alertes de sécurité du dépôt. | Identifiants d’avis, gravité, versions concernées, références et versions corrigées minimales par paquet, ainsi que des SBOM SPDX et CycloneDX. |
| Coût et hébergement | Les fonctions d’Advanced Security peuvent nécessiter une offre payante pour les dépôts privés. | Gratuit et open source (Eclipse Apoapsis), auto-hébergé ou sur l’instance OCCTET. |
À l’exception des GitHub Actions, ORT Server donne en général une image plus complète de ce qui est livré avec le produit : il trouve les dépendances transitives et non standard, et distingue les plugins de build des composants distribués.
Une large couverture technologique n’est pas que théorique. Cinq PME testeuses ont mis en place neuf cas d’usage avec leurs produits et modèles de livraison réels : produits logiciels, offres SaaS et objets connectés. Quatre autres testeurs sont en cours d’intégration.
8 pris en charge 1 non pris en charge 89 %
Le cas non pris en charge repose sur des outils de build anciens (Visual Studio Build Tools VC2017 et CMake 3.17.3). La prise en charge d’anciennes versions de systèmes de build sort du périmètre du projet.
Certains testeurs open source dépendaient de dépôts privés sans le savoir. ORT Server prend en charge les dépôts privés, ces dépendances sont donc analysées elles aussi.
La prise en charge de Yocto, utilisé par un testeur, a été introduite en 2026 et continue de s’étendre grâce à ses retours.
Les systèmes de build anciens non pris en charge sont identifiés dès le départ, ce qui facilite la planification de l’adoption.
Pourquoi la surveillance continue compte
Sur ReductStore, une première analyse a trouvé 116 constats de vulnérabilité. Une seconde, sans aucune modification du code, en a trouvé 121 : cinq nouvelles vulnérabilités avaient été publiées entre-temps pour ses dépendances transitives. Des analyses planifiées les détectent sans attendre la prochaine version.
Les constats ne sont qu’un point de départ. L’OCCTET Curator récupère les résultats d’ORT Server via son API et y ajoute revue, enrichissement et export, pour aboutir à une documentation de sécurité auditable.
Le Curator a été validé avec des PME testeuses, sur ReductStore de ReductSoftware et sur Sirius Web d’Obeo, où il a détecté 1 148 composants et 48 vulnérabilités et généré le SBOM. Il a aussi été utilisé sur des projets open source en .NET, Python, Swift, Go, Ruby, JVM et JavaScript, ainsi que sur des projets emblématiques comme Adoptium, l’IDE Eclipse, Eclipse Mosquitto, Apache Tomcat et Apache Kafka.
Les outils sont open source. Utilisez les instances hébergées par OCCTET en tant que testeur, ou déployez-les vous-même.
Vous découvrez la chaîne d'outils ?
Le guide de démarrage vous accompagne pas à pas, de votre premier projet à des preuves vérifiées.