Security.txt

Le fichier security.txt est une norme proposée par le site securitytxt.org pour les informations de sécurité des sites web qui est destinée à permettre aux chercheurs en sécurité de signaler facilement les failles de sécurité.

La norme prescrit un fichier texte appelé security.txt qui est similaire au robots.txt mais destiné à être lu par les personnes souhaitant contacter le propriétaire d'un site web au sujet des problèmes de sécurité.

Lorsque des risques et des failles de sécurité dans des services web sont découverts par des chercheurs en sécurité indépendants, ils n'ont souvent pas les moyens de les divulguer correctement. Par conséquent, les problèmes de sécurité peuvent ne pas être signalés. Le fichier security.txt définit une norme pour aider les organisations à définir le processus permettant aux chercheurs en sécurité de divulguer les vulnérabilités en toute sécurité.

Les fichiers security.txt ont été mis en place par Google, Facebook, GitHub, le gouvernement britannique et de nombreuses autres organisations. De plus, le Ministère de la Justice britannique, la Cybersecurity and Infrastructure Security Agency (États-Unis), le gouvernement français, le gouvernement italien, le gouvernement néerlandais, et l'Australian Cyber Security Centre approuvent l'utilisation des fichiers security.txt.

Comment créer un fichier security.txt

Créez un fichier texte appelé security.txt dans le répertoire .well-known de votre projet. Celui-ci peut contenir les informations suivantes.

Contact (requis) : un lien ou une adresse électronique pour que les personnes puissent vous contacter sur les questions de sécurité. N'oubliez pas d'inclure "https://" pour les URL, et "mailto :" pour les courriels. Consultez la description complète de Contact sur RFC-Editor.org.

Expires (requis, une ligne maximum) : la date et l'heure à partir desquelles le contenu du fichier security.txt doit être considéré comme obsolète (les chercheurs en sécurité ne devraient alors plus s'y fier). Assurez vous de mettre à jour cette valeur périodiquement et de maintenir votre fichier sous surveillance. Consultez la description complète de Expires sur RFC-Editor.org. Le format de date pour Expires doit suivre la norme ISO 8601. Exemple : Expires : 2021-12-31T18:37:07.000Z.

Encryption (optionnel) : un lien vers une clé que les chercheurs en sécurité doivent utiliser pour vous parler en toute sécurité. N'oubliez pas d'inclure "https://". Consultez la description complète de Encryption sur RFC-Editor.org.

Acknowledgments (optionnel) : un lien vers une page web où vous dites merci aux chercheurs en sécurité qui vous ont aidé. N'oubliez pas d'inclure "https://". Consultez la description complète de Acknowledgments sur RFC-Editor.org.

Preferred-Languages (optionnel, une ligne maximum) : une liste de codes de langue, séparés par des virgules, que votre équipe de sécurité parle. Vous pouvez inclure plus d'une langue. Consultez la description complète de Preferred-Languages sur RFC-Editor.org.

Canonical (optionnel) : : les URL pour accéder à votre fichier security.txt. Il est important d'inclure ceci si vous signez numériquement le fichier security.txt, afin que l'emplacement du fichier security.txt puisse également être signé numériquement. Consultez la description complète de Canonical sur RFC-Editor.org.

Policy (optionnel) : un lien vers une politique détaillant ce que les chercheurs en sécurité doivent faire lorsqu'ils recherchent ou signalent des problèmes de sécurité. N'oubliez pas d'inclure "https://". Consultez la description complète de Policy sur RFC-Editor.org.

Hiring (optionnel) : un lien vers toutes les offres d'emploi liées à la sécurité dans votre organisation. N'oubliez pas d'inclure "https://". Consultez la description complète de Hiring sur RFC-Editor.org.

CSAF (optionnel) : un lien vers le fichier provider-metadata.json de votre fournisseur CSAF (Common Security Advisory Framework). N'oubliez pas d'inclure "https://". Consultez la description complète de CSAF sur Oasis-Open.org.

Si vous voulez donner aux chercheurs en sécurité l'assurance que votre fichier security.txt est authentique et qu'il n'a pas été créé par un pirate, pensez à signer numériquement celui-ci avec une signature OpenPGP en clair.

Exemple de fichier security.txt

Exemple de fichier security.txt créé avec le site officiel site officiel securitytxt.org :

Contact: mailto:security@example.com Expires: 2029-12-31T23:00:00.000Z Encryption: https://example.com/pgp-key.txt Acknowledgments: https://example.com/hall-of-fame.html Preferred-Languages: en, es, ru Canonical: https://example.com/.well-known/security.txt Policy: https://example.com/security-policy.html Hiring: https://example.com/jobs.html CSAF: https://example.com/.well-known/csaf/provider-metadata.json

Questions fréquentes sur le fichier security.txt

Quel est l'objectif principal du fichier security.txt ?

L'objectif principal de security.txt est de faciliter la tâche des entreprises et des chercheurs en sécurité lorsqu'ils tentent de sécuriser des plateformes. Grâce au fichier security.txt, les chercheurs en sécurité peuvent facilement entrer en contact avec les entreprises sur les questions de sécurité.

security.txt est-il un RFC ?

Oui ! L'initiative security.txt accueille les contributions du public : https://github.com/securitytxt/security-txt

Où dois-je mettre le fichier security.txt ?

Pour les sites web, le fichier security.txt doit être placé sous le chemin d'accès /.well-known/ (/.well-known/security.txt) [RFC8615]. Il peut également être placé dans le répertoire racine (/security.txt) d'un site web, surtout si le répertoire /.well-known/ ne peut pas être utilisé pour des raisons techniques, ou simplement comme solution de repli. Le fichier peut être placé dans les deux emplacements d'un site web en même temps. Pour les dépôts de code, le fichier doit être placé dans le répertoire racine du dépôt.

Y a-t-il des paramètres que je dois appliquer au fichier ?

Le fichier security.txt doit avoir un type de média Internet de type text/plain et doit être servi via HTTPS.

L'ajout d'une adresse électronique m'exposera-t-il aux robots de spam ?

La valeur de l'adresse électronique est un champ facultatif. Si vous vous inquiétez du spam, vous pouvez définir un URI comme valeur et un lien vers votre politique de sécurité.

En savoir plus sur le fichier security.txt

Pour en savoir plus sur le fichier security.txt, n'hésitez pas à consulter le site officiel securitytxt.org