Close

Sécurité du développement chez Atlassian


Chez Atlassian, la sécurité est intégrée à chaque phase du cycle de vie du développement afin de garantir la protection de nos clients, de nos produits et de notre code. Nous appliquons des pratiques de développement sécurisées à toutes les phases du cycle de vie du développement.

  • Le développement est soutenu par des programmes de formation à la sécurité des applications ainsi que par une base de connaissances sur la sécurité gérée par l'équipe de sécurité.
  • Lors de la phase de design, les pratiques comprennent la modélisation des menaces, la revue de design, ainsi que notre bibliothèque de normes de sécurité régulièrement mise à jour, qui garantit que les exigences de sécurité appropriées sont prises en compte.
  • Lors du développement, nous comptons sur un processus de revue par les pairs obligatoire comme première ligne d'examen de la sécurité. Cette approche est soutenue par des contrôles automatisés d'analyse statique (SAST) et des tests de sécurité manuels (réalisés par des équipes internes et des experts tiers, comme déterminé par notre processus d'évaluation des risques).
  • Des processus formels de préparation opérationnelle et de contrôle des changements garantissent ensuite que seuls les changements approuvés sont déployés en production. Après le déploiement, nous utilisons régulièrement une analyse automatisée des vulnérabilités ainsi que le programme Bug Bounty leader dans le secteur pour garantir l'assurance continue de nos applications. Nous évaluons en permanence les pratiques de sécurité de nos produits au fil du temps à l'aide d'un système de tableaux de bord de la sécurité.
Jersey

Culture

Engagement

Formation

Standards

Liste du presse-papiers

Bonnes pratiques

POINTS DE CONTRÔLE

Examen de la sécurité

Amélioration de la sécurité

Développer une culture de la sécurité

Atlassian développe une culture de la sécurité en responsabilisant ses équipes grâce à son programme Security Champions Program et à une formation robuste à la sécurité.

Security Champions Program

Au sein de nos équipes produit et de service, nous avons nommé des responsables de la sécurité (ou champions de la sécurité) qui sont chargés de présenter les principales initiatives de sécurité à leurs pairs de manière continue et de s'assurer que la communication avec notre équipe de sécurité centrale est aussi ouverte que possible. Ainsi, la sécurité reste au cœur des préoccupations de notre organisation.

Les champions de la sécurité se réunissent régulièrement pour partager leurs outils et leurs connaissances sur les derniers enjeux et défis en matière de sécurité, afin que toutes nos équipes puissent en bénéficier. Le programme sert de tremplin pour intégrer encore davantage la sécurité dans notre culture.

Formation des développeurs à la sécurité

Nous utilisons du contenu développé en interne ainsi que du contenu tiers pour les formations afin que nos équipes de développement disposent des connaissances nécessaires en matière de sécurité pour développer des applications sécurisées. Notre programme de formation est surveillé en continu pour assurer son intégrité et évolue pour répondre aux menaces changeantes.

Phase de design

Lors de la phase de design, nous utilisons la modélisation des menaces, la revue de design ainsi que notre bibliothèque de normes de sécurité pour garantir que les exigences de sécurité appropriées sont prises en compte.

Modélisation des menaces

Nous utilisons la modélisation des menaces pour mieux comprendre les risques de sécurité lorsque les projets sont confrontés à des menaces complexes ou modifient des fonctionnalités critiques pour la sécurité. Cela implique une session de brainstorming entre nos ingénieurs, nos ingénieurs en sécurité, nos architectes et nos responsables produit afin d'identifier et de prioriser les menaces pertinentes. Ces informations servent au processus de conception et assurent l'implémentation de contrôles appropriés. Elles soutiennent également la revue et les tests ciblés dans les phases de développement ultérieures.

Notre modélisation des menaces comprend :

  • l'application d'une approche basée sur les risques pour déterminer la nécessité de modéliser les menaces ;
  • un processus mûr pour modéliser les menaces, y compris les supports et les outils ;
  • des vidéos de formation et des articles pour aider les équipes de développement à modéliser les menaces.

Phase de développement

Tout au long du processus de développement, nous utilisons un certain nombre de processus et de pratiques de sécurité pour garantir la protection de notre code.

Examen de la sécurité

L'équipe de sécurité pilote un processus d'examen de la sécurité afin de fournir une garantie de sécurité pour tous les projets de développement chez Atlassian. Un processus d'évaluation des risques sert à définir les priorités des examens de la sécurité et à déterminer les activités nécessaires pour atténuer les risques liés au projet. Selon le niveau de risque identifié, les activités d'assurance de la sécurité combinent les éléments suivants :

  • Revue de design et modélisation des menaces
  • Revue de code et tests de sécurité
  • Garantie indépendante faisant appel à des chercheurs et des consultants tiers experts

Revue par des pairs

Lors du développement, tout le code est soumis à notre processus de test « Peer Review, Green Build » (Examen par les pairs, build vert ou PRGB). Ce processus nécessite plusieurs développeurs en chef ou expérimentés pour examiner tous les commits avant qu'ils ne soient pushés en production. Cette approche est par ailleurs soutenue par des contrôles automatisés d'analyse statique (SAST) et des tests de sécurité manuels (réalisés par des équipes internes et des experts tiers, comme déterminé par notre processus d'évaluation des risques). Le développement est également appuyé par des programmes de formation à la sécurité des applications ainsi que par une base de connaissances sur la sécurité gérée par l'équipe de sécurité.

Cloisonnement des environnements

Nous maintenons également un cloisonnement logique et physique entre les environnements de production et hors production (développement) pour tous nos services critiques. Notre environnement de staging est séparé logiquement mais pas physiquement. Il est géré par des processus de contrôle des changements et d'accès de niveau production.

Atlassian dispose également de politiques de sécurité qui interdisent l'utilisation de données de production dans des environnements hors production. Nous tenons à jour des lignes directrices expliquant comment rendre neutres ou protéger des données restreintes, y compris des données personnelles, à l'aide de techniques d'anonymisation, de hachage et de tokénisation.

Phase de maintenance

Avant d'être pushé en production, le code doit être validé par nos processus formels de préparation opérationnelle et de contrôle des changements.

Une fois qu'un système est déployé, nous exécutons régulièrement des analyses de vulnérabilité automatisées. Comme nous l'indiquons dans nos pratiques de sécurité, nous avons également mis en place un programme Bug Bounty leader dans le secteur, qui fournit une garantie de sécurité continue avec l'aide d'un groupe crowdsourcé et fiable constitué de chercheurs en sécurité.

Tableaux de bord de la sécurité

Nous avons créé un système de responsabilisation et de surveillance appelé « tableaux de bord de la sécurité des produits ». Ces tableaux sont utilisés pour évaluer la sécurité de tous les produits Atlassian. Nous nous servons d'un large éventail de critères axés sur la sécurité tels que les vulnérabilités actuelles, la couverture de la formation, les incidents de sécurité récents et la couverture des champions de la sécurité afin d'obtenir un score de sécurité global pour chacun de nos produits.

Ce processus d'évaluation donne à chacune de nos équipes produit une vue objective des domaines de sécurité qui nécessitent une attention particulière et identifie les lacunes existantes ainsi que les mesures à prendre pour les combler. Le processus des tableaux de bord de la sécurité permet également à l'équipe Atlassian chargée de la sécurité de suivre facilement tous les produits du point de vue de la sécurité au fil du temps, en particulier à mesure que notre suite de produits continue à s'agrandir.