Sécurité dans Qt
La sécurité de Qt repose sur l'infrastructure créée et maintenue par le Qt Group et le Qt Project. Cette infrastructure englobe les environnements de développement, de test et de compilation. Elle comprend notamment un processus de révision du code bien établi, un processus de test utilisant des analyseurs statiques et des outils de fuzzing, des tests des composants tiers, ainsi que des tests antivirus supplémentaires pour chaque version. Qt dispose également d’un processus bien établi pour la gestion des failles de sécurité.
La sécurité d’une application ou d’un appareil utilisant Qt relève d’une responsabilité partagée entre les développeurs d’applications, le Qt Group et le Qt Project en tant que fournisseurs du framework Qt, ainsi que les opérateurs ou les fabricants d’appareils. Pour un aperçu des obligations et des limites respectives, consultez le modèle de sécurité partagée de Qt.
Politique de sécurité du Qt Project
Le Qt Project définit sa politique de sécurité dans le document QUIP 15. Voici un résumé de cette politique :
- Qt Core dispose d’une équipe de sécurité centrale chargée de faire respecter la politique de sécurité et de traiter les problèmes.
- Mesures proactives visant à prévenir les problèmes de sécurité : revues de code, analyse de code, tests de fuzz, etc.
- Signalement des problèmes de sécurité : l’équipe de sécurité principale surveille les problèmes de sécurité concernant les modules Qt et les composants tiers affectés.
- Traitement des problèmes de sécurité : les responsables de maintenance, l’équipe de sécurité principale, le responsable en chef de la maintenance et le groupe Qt se concertent pour traiter les problèmes de sécurité.
- Divulgation des problèmes de sécurité confirmés dans la base de données Common Vulnerabilities and Exposures et annonce publique sur la liste de diffusion «announce@qt-project.org» de Qt.
Vous pouvez vous abonner à la liste de diffusion en vous rendant sur la page d’informations sur les listes de diffusion du projet Qt.
Signalement des problèmes de sécurité
Signalez les vulnérabilités du logiciel libre Qt à l’adresse security@qt-project.org. Pour les produits commerciaux du Groupe Qt, vous pouvez également contacter psirt@qt.io.
La politique de divulgation coordonnée des vulnérabilités du Qt Group décrit les canaux de signalement disponibles, les engagements pris par le Qt Group et le Qt Project envers les chercheurs qui signalent les failles de manière responsable, ainsi que les délais de réponse et de divulgation.
Qt ne dispose pas actuellement d’un programme de prime aux bogues.
Vulnérabilités de Qt
Lorsqu’un expert technique confirme un problème de sécurité dans l’un des produits Qt, une entrée « Common Vulnerabilities and Exposures » (CVE) est créée. Un CVE se compose d’un identifiant et d’une description. D’autres métadonnées sont ajoutées au fil du temps.
Pour les produits Qt, The Qt Company gère le processus de création des CVE en tant qu’autorité de numérotation CVE (CNA) responsable. Elle répertorie les nouveaux CVE dans la « Liste des vulnérabilités connues dans les produits Qt », mais contribue également à la base de données centrale des CVE.
Afin d’identifier de manière unique les produits affectés par une vulnérabilité, les CVE contiennent des entrées au format CPE ( Common Platform Enumeration ). Pour les problèmes liés au framework Qt, les parties « fournisseur » et « produit » d’un tel CPE sont qt:qt. Par exemple, un CVE hypothétique affectant Qt 6.12.0 aura le CPE suivant :
cpe:2.3:a:qt:qt:6.12.0:*:*:*:*:*:*:*Liste des composants logiciels (SBOM)
À partir de Qt 6.8, l’installation de Qt inclut des documents de nomenclature logicielle (SBOM), contenant des informations sur les modules Qt, les paquets et les composants tiers installés, au format SPDX. Depuis Qt 6.11, les documents SBOM sont également disponibles au format CycloneDX. Utilisez les documents dans l’un ou l’autre de ces formats pour assurer le suivi des paquets Qt installés à des fins de gestion des vulnérabilités et de conformité aux licences.
- Liste des composants logiciels
- Présentation du format SPDX
- Présentation de la spécification CycloneDX
Données non fiables
Plusieurs modules Qt traitent des données telles que les entrées utilisateur et les ressources exécutables. Qt attend des développeurs d’applications qu’ils gèrent les données non fiables de manière appropriée. Si une API Qt récupère et traite des données non fiables avant que l’application ne puisse effectuer ce traitement, Qt considère alors cette API comme critique pour la sécurité. Les API critiques pour la sécurité font l’objet d’un examen et de tests supplémentaires pendant le développement.
En général, évitez si possible les données non traitées provenant de sources inconnues et appliquez des procédures de sécurité lors de la gestion des données. Qt fournit plusieurs mécanismes de traitement des données, tels que des validateurs pour les entrées utilisateur.
Pour plus d’informations, consultez la section « Gestion des données non fiables ».
Outils de développement
Le framework Qt est fourni avec des outils de développement qui s’exécutent sur votre machine de compilation lors de la compilation d’une application Qt, tels que le générateur de modèles de code (Meta-Object Compiler, moc), le générateur de classes de contrôle de configuration (Resource Compiler, rcc) et les divers générateurs de code et de ressources. Ces outils traitent le projet qu’ils traitent comme une entrée de confiance et ne constituent pas une barrière de sécurité. La compilation d’un projet auquel vous ne faites pas confiance peut donc entraîner l’exécution de code sur votre machine de compilation.
Pour plus d’informations, consultez la section « Utilisation sécurisée des outils de développement Qt ».
Autorisations
Qt 6.5 introduit une API multiplateforme de gestion des autorisations. Cette API concerne les données privées liées à l’utilisateur et le matériel, tels que les listes de contacts, le calendrier, l’appareil photo et le microphone.
Pour plus d’informations, consultez la section « Autorisations des applications ».
Maintenance de sécurité étendue
Nous sommes conscients que le cycle de vie de votre produit peut être plus long que notre période de support habituelle pour une version donnée de Qt. Nous proposons désormais des services de maintenance aux clients disposant d’une version de Qt en fin de support (EoS).
Le service d’abonnement à la maintenance de sécurité étendue (ESM) vous donne accès aux correctifs de maintenance relatifs aux vulnérabilités critiques et à la sécurité (CVS) concernant les bibliothèques Qt pour certaines versions à support à long terme (LTS) après la fin de support (EoS).
Le service ESM est disponible pour les versions suivantes :
| Version | ESM depuis |
|---|---|
| Qt 5.15 LTS | 26/05/2025 |
| Qt 6.5 LTS | 30 mars 2026 |
Pour plus d'informations, consultez la page Assistance Qt.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.