Upgrade to Pro — share decks privately, control downloads, hide ads and more …

La résilience : c'est l'affaire de tous, donc c...

Avatar for Willy Malvault Willy Malvault
July 03, 2024
130

La résilience : c'est l'affaire de tous, donc c'est l'affaire de personneS

Résilience, le mot est lâché ! Bullshit word ou concept mal compris ? En tant que product manager IT et architecte sécurité, quand on nous a demandé d'attaquer le sujet de la cyber-résilience, nous avons tout de suite senti qu'il allait falloir, une nouvelle fois, essayer de faire la lumière sur le sujet.

D'ailleurs pourquoi parler de cyber-résilience ? Au final, toutes les actions de résilience ne viendraient-elles pas renforcer globalement notre sécurité ?

Et le sujet dépasse le cadre de l'IT car la résilience est un concept universel et omniprésent, qui est l'affaire de tous !

"Tous" ça veut dire qui ? Dev et Ops, c'est évident ! Mais PM ? Archi sécu ? Directeur ? RH ? Community Manager ? Oui ! La résilience c'est l'affaire de TOUTES CES personneS.

Nous avons la chance chez Bpifrance de pouvoir pratiquer le Chaos Engineering, discipline de l'expérimentation en production. Malheureusement, rare sont ceux qui ont le droit de "casser" la prod intentionnellement. Au travers de nos lectures et de nos expériences, nous avons pu identifier d'autres voies, accessibles à chacun, pour améliorer la résilience... d'un service, d'un système ou d'une organisation.

C'est pourquoi nous vous proposons un panorama de mesures accessibles métier par métier, fonction par fonction, rôle par rôle. Nous parlerons, entre autres : architecture logicielle, revue de code, modèle mental, loi de Conway, expérimentations, incidentologie communautaire et même diversité :)

La résilience : c'est l'affaire de tous, donc c'est l'affaire de personneS !

Avatar for Willy Malvault

Willy Malvault

July 03, 2024
Tweet

Transcript

  1. La résilience, c’est l’affaire de tous, donc l’affaire de personneS

    ! Un voyage de l’infiniment petit à l’infiniment grand Benjamin Gakic - Product Manager IT Willy Malvault - Architecte cybersécurité
  2. Est-il nécessaire de redonner la définition de la résilience ?

    Capacité d’un système à continuer de fonctionner, malgré des perturbations
  3. La vraie question, c'est comment se met en place cette

    résilience et pourquoi Un système dont l'équilibre a été perturbé ne revient jamais tout à fait à son état initial. Quel que soit le mécanisme de résilience en place.
  4. Construisons ensemble des systèmes résilient ! A quels niveaux s'applique

    la résilience ? C’est parti pour un voyage en 3 dimensions, de l’infiniment petit à l’infiniment grand ! Existe-t-il une méthode magique pour y arriver ? Quelles stratégies, pour la résolution des incidents ? Une ou plusieurs solution et pattern ?
  5. Faute C’est un événement imprévu qui peut avoir un impact

    Erreur C’est un état faux. Il peut entrainer des perturbations Défaillance C’est l’indisponibilité de la fonctionnalité. Ce qu’on veut éviter à tout prix Dimension #1 – Gestion des incidents 503 Parer la faute Résister à l’erreur Eviter la défaillance
  6. Mon processeur : gestion des incidents Particule Cosmique détectée !

    Collision imminente Protéger le processeur des rayons cosmiques Mécanisme interne de correction Contournement, mode dégradé Parer la faute Résister à l’erreur Eviter la défaillance
  7. Mon processeur : après la gestion d’incidents Particule Cosmique détectée

    ! Collision imminente Bouclier magnétique Parer la faute Résister à l’erreur Eviter la défaillance Bouclier physique
  8. Mon processeur : après la gestion d’incidents Particule Cosmique détectée

    ! Collision imminente Bouclier magnétique ECC (Error Correction Code) Parer la faute Résister à l’erreur Eviter la défaillance Code Bouclier physique
  9. Mon processeur : après la gestion d’incidents Particule Cosmique détectée

    ! Collision imminente Bouclier magnétique ECC (Error Correction Code) Redondance de processeurs Parer la faute Résister à l’erreur Eviter la défaillance Code Bouclier physique Redondance
  10. Dimension #2 – Les solutions et designs patterns Infinité de

    solutions Il n’y a parfois qu’une solution, parfois une multitude, chacune avec ses avantages et ses inconvénients. Design Patterns vs anti-patterns Choisir une solution trop rapidement, sans peser tous les impacts peut se révéler être un anti- pattern Observabilité Code Contournement Bouclier physique Redondance
  11. Solutions possibles dans mon code Alerting à 80% de remplissage

    No Space Left on Device Parer la faute Résister à l’erreur Eviter la défaillance Observabilité
  12. Solutions possibles dans mon code Alerting à 80% de remplissage

    Try / Catch (autoclean) / Retry No Space Left on Device Parer la faute Résister à l’erreur Eviter la défaillance Observabilité Code
  13. Solutions possibles dans mon code Alerting à 80% de remplissage

    Try / Catch (autoclean) / Retry Proposer une écriture sur un autre support (Drive, etc…) No Space Left on Device Parer la faute Résister à l’erreur Eviter la défaillance Observabilité Code Contournement
  14. Quand il n'y a plus de solutions dans mon code

    Allocation dynamique sur les ressources infinies du Cloud No Space Left on Device Injection de cash Eviter la défaillance Allocation cloud
  15. Quand il n'y a plus de solutions dans mon code

    Allocation dynamique sur les ressources infinies du Cloud « Jean-Michel ! Va faire de la place sur le disque STP ! » No Space Left on Device Injection de cash Intervention humaine Eviter la défaillance Allocation cloud
  16. Dimension # 3 – Systémique progressive Infrastructure Opérateur externe Organisation

    Humain / équipe Instructions Code / Algo Processus / Service Nœud / Machine Choisir le bon niveau S’il n’y a apparemment pas de solution, basculer sur le niveau juste au- dessus offre de nouvelles perspectives. Intervention humaine Collaboration Incidentologie Expertise externe Injection de cash
  17. Systémique progressive dans mon infra Re-déploiement (IAC, gitops...) Le service

    d’authentification est down Résister à l’erreur Code Intervention humaine
  18. Systémique progressive dans mon infra Re-déploiement (IAC, gitops...) Gestion d'incident

    du support de production Le service d’authentification est down Résister à l’erreur Eviter la défaillance Code A la mano Intervention humaine
  19. Systémique progressive dans mon infra Re-déploiement (IAC, gitops...) Gestion d'incident

    du support de production PCA : bascule automatique site de secours Le service d’authentification est down Résister à l’erreur Eviter la défaillance Code Redondance A la mano Intervention humaine
  20. Systémique progressive dans mon organisation Surveillance active (SOC) Allo Houston

    ! On a plus de SI #ransomware Intervention humaine Observabilité
  21. Systémique progressive dans mon organisation Surveillance active (SOC) Endpoint Detection

    & Response Allo Houston ! On a plus de SI #ransomware Intervention humaine Observabilité Outil
  22. Systémique progressive dans mon organisation Surveillance active (SOC) Endpoint Detection

    & Response Audit Red Team Allo Houston ! On a plus de SI #ransomware Intervention humaine Expertise externe Observabilité Outil
  23. Systémique progressive dans mon organisation Surveillance active (SOC) Endpoint Detection

    & Response Audit Red Team PRA : reconstruction d’une partie du SI Allo Houston ! On a plus de SI #ransomware Intervention humaine Collaboration Expertise externe Observabilité Code Outil
  24. Résilience spécifique Problème / solution élémentaire Capacité d'adresser des problèmes

    élémentaires, déterministes La réponse se trouve au même niveau que le problème Problème souvent de faible impact Problème / solution déterministe donc automatisable
  25. Résilience systémique – résilience Chaotique Association de capacités permettant d’adresser

    des problèmes complexes et le plus souvent inconnus Problèmes / solutions non déterministe Problèmes / solutions complexe Problèmes souvent d’impact fort La réponse se trouve au(x) niveau(x) du dessus
  26. Incidentologie communautaire Base de données d'incidents Mise en commun d’expérience,

    de connaissance ou de moyen Collaboration https://www.thevoid.community/database https://incidentdatabase.ai/
  27. Incidentologie communautaire Base de données d'incidents Correction d’incident sur projet

    Open source Mise en commun d’expérience, de connaissance ou de moyen Collaboration https://www.thevoid.community/database https://incidentdatabase.ai/
  28. Incidentologie communautaire Base de données d'incidents Correction d’incident sur projet

    Open source Communauté de pratique (ex: CIGREF, CESIN, Meetup) Mise en commun d’expérience, de connaissance ou de moyen Collaboration Expertise externe https://www.thevoid.community/database https://incidentdatabase.ai/
  29. La diversité en tant que source de résilience The role

    of diversity in organizational resilience: a theoretical framework Stephanie Duchek, Sebastian Rautze, Ianima Scheuch. Business Research 2020. Anticipation Qualification du problème Capacité de réaction et de résolution La diversité peut être culturelle, de types de personnalités, de parcours, de formations, pléthore !
  30. Conclusion Incidentologie communautaire Diversité Code Cloud Expertise technique Résilience systémique

    Résilience spécifique Gestion des incidents Solutions et design patterns Systémique progressive