34
SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Embed Size (px)

Citation preview

Page 1: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

SDLTrustworthy Computing Security Development Lifecycle

SDLTrustworthy Computing Security Development Lifecycle

Synthèse E. Mittelette, E Vernié Novembre 2005

Page 2: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

SDL: Principes ……Ce processus consiste à ajouter une Ce processus consiste à ajouter une

série d'activités et de tâches relativessérie d'activités et de tâches relatives à la à la sécurité à chacune des phases du sécurité à chacune des phases du processus de développement des logiciels processus de développement des logiciels Microsoft…Microsoft…

l'élaboration de modèles de menace l'élaboration de modèles de menace l'utilisation d'outils d'analyse statique de code l'utilisation d'outils d'analyse statique de code

lors de leur implémentation lors de leur implémentation l'exécution de révisions de code et de tests de l'exécution de révisions de code et de tests de

sécurité pendant une période dédiée à la sécurité pendant une période dédiée à la sécuritésécurité

Avant que les logiciels sujets au SDL puissent Avant que les logiciels sujets au SDL puissent être diffusés, ils doivent subir un examen de être diffusés, ils doivent subir un examen de sécurité final effectué par une équipe sécurité final effectué par une équipe indépendante de son groupe de indépendante de son groupe de développement.développement.

Page 3: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Nécessité de changer

les éditeurs de logiciels doivent les éditeurs de logiciels doivent passer à un processus de passer à un processus de développement de logiciels plus développement de logiciels plus strict, c'est-à-dire centré sur la strict, c'est-à-dire centré sur la sécurité. sécurité. C’est un processus répétitifC’est un processus répétitif Qui inclus la formation des développeursQui inclus la formation des développeurs Qui propose des éléments de mesure et Qui propose des éléments de mesure et

de transparencede transparence

Page 4: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Sécurité et Coût…

l'adoption du SDL par d'autres l'adoption du SDL par d'autres entreprises ne doit pas accroitre entreprises ne doit pas accroitre excessivement les coûts du excessivement les coûts du développement de logiciels.développement de logiciels.

D'après l'expérience de Microsoft, les D'après l'expérience de Microsoft, les avantages procurés par des logiciels avantages procurés par des logiciels mieux sécurisés (par exemple, moins mieux sécurisés (par exemple, moins de correctifs, plus de satisfaction de correctifs, plus de satisfaction client) l'emportent sur ces coûts client) l'emportent sur ces coûts additionnels. additionnels.

Page 5: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

L’approche et la méthode

l'intégration de mesures permettant l'intégration de mesures permettant d'améliorer la sécurité des logicielsd'améliorer la sécurité des logiciels Sans remettre en cause l’organisation Sans remettre en cause l’organisation

actuelleactuelle ajouter des points de contrôle de ajouter des points de contrôle de

sécurité bien définis et des tâches sécurité bien définis et des tâches relatives à la sécuritérelatives à la sécurité

Postulat : il existe une équipe de Postulat : il existe une équipe de sécurité centrale sécurité centrale A prévoir en interne ou en externe…A prévoir en interne ou en externe…

Page 6: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Trustworthy Computing Initiative Trustworthy Computing InitiativeTrustworthy Computing Initiative

Mail de Bill à tous les employés :Mail de Bill à tous les employés : Faire de la sécurité une priorité, la traiter Faire de la sécurité une priorité, la traiter

comme une fonctionnalité de base de comme une fonctionnalité de base de nos produits…nos produits…

Début 2002Début 2002 Depuis publication de Writing Secure CodeDepuis publication de Writing Secure Code Publication et blog de M HowardPublication et blog de M Howard

Page 7: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

««  LeLe conceptconcept dede TrustworthyTrustworthy ComputingComputing reposerepose sursur quatrequatre pilierspiliers  :: FiabilitéFiabilité signifie qu'un système informatique est sûr, signifie qu'un système informatique est sûr, disponible quand on en a besoin, et fonctionne disponible quand on en a besoin, et fonctionne correctement, aux niveaux appropriés.correctement, aux niveaux appropriés. SécuritéSécurité signifie qu'un système résiste aux attaques, et signifie qu'un système résiste aux attaques, et que la confidentialité, l'intégrité et la disponibilité du que la confidentialité, l'intégrité et la disponibilité du système comme des données sont protégées.système comme des données sont protégées. ConfidentialitéConfidentialité signifie que les individus ont la signifie que les individus ont la possibilité possibilité d'avoir un contrôle sur les données informatiques les d'avoir un contrôle sur les données informatiques les concernant concernant et que les organisations qui utilisent ces données et que les organisations qui utilisent ces données observent scrupuleusement des principes de respect des observent scrupuleusement des principes de respect des informations.informations.IntégritéIntégrité signifie que les entreprises de notre secteur signifie que les entreprises de notre secteur sont responsables vis-à-vis de leurs clients et doivent les sont responsables vis-à-vis de leurs clients et doivent les aider aider à trouver des solutions adaptées à leurs problématiques, à trouver des solutions adaptées à leurs problématiques, à résoudre ces problèmes à l'aide de produits et services à résoudre ces problèmes à l'aide de produits et services et et à se montrer ouvertes dans leurs rapports avec leurs à se montrer ouvertes dans leurs rapports avec leurs clients. »clients. »

Trustworthy Computing

- Bill Gates 18 juillet 2002

Page 8: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

En 2005, SDL est documenté

Liens associés :http://www.microsoft.com/france/technet/securite/sdl.mspxhttp://www.microsoft.com/france/securite/default.mspxhttp://www.microsoft.com/france/msdn/securite/default.mspx

Page 9: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de développement Bien que la figure présente cinq étapes et semble Bien que la figure présente cinq étapes et semble

indiquer un processus de développement en « indiquer un processus de développement en « cascade », cascade », il s'agit en fait d'un processus en spiraleil s'agit en fait d'un processus en spirale. .

Les exigences et la conception sont souvent Les exigences et la conception sont souvent reconsidérées lors de l'implémentation, en réponse reconsidérées lors de l'implémentation, en réponse aux besoins variables du marché et aux réalités aux besoins variables du marché et aux réalités apparues lors de l'implémentation du logiciel. apparues lors de l'implémentation du logiciel.

De plus, le processus de développement insiste sur la De plus, le processus de développement insiste sur la nécessité de l'exécution d'un code pratiquement à nécessité de l'exécution d'un code pratiquement à chaque phase. Par conséquent, chaque phase. Par conséquent, chaque étape chaque étape principale est en fait divisée en une série de versions principale est en fait divisée en une série de versions pouvant être constamment testéespouvant être constamment testées et utilisées de et utilisées de manière fonctionnelle (par l'équipe de manière fonctionnelle (par l'équipe de développement).développement).

Page 10: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

SDSD33

Architecture de sécurité SD3

SécuritéSécurité dèsdès lala

conceptionconception

SécuritéSécurité parpar défautdéfaut

SécuritéSécurité dudu déploiementdéploiement

CodeCode etet architecturearchitecture sécuriséssécurisésAnalyse des menacesAnalyse des menacesDiminution des vulnérabilitésDiminution des vulnérabilités

SurfaceSurface d'attaqued'attaque réduiteréduiteFonctionnalités inutilisées Fonctionnalités inutilisées désactivées par défautdésactivées par défautPrivilèges minimum utilisésPrivilèges minimum utilisés

ProtectionProtection  :: Détection,Détection, défense,défense, récupération,récupération, gestiongestionProcessus : Guides pratiques, Processus : Guides pratiques, guides d'architectureguides d'architecturePersonnes : FormationPersonnes : Formation

Page 11: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

SD3+C et SDL

En introduisant les mesures de En introduisant les mesures de sécurité visant à intégrer le sécurité visant à intégrer le paradigme SD3+C dans le processus paradigme SD3+C dans le processus de développement existant, on de développement existant, on obtient :obtient :

Page 12: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Sécurité tout au long du cycle de vie d'un projet

PlansPlans dede testtestterminésterminés

ConceptionsConceptionsterminéesterminées

ConceptConcept CodeCodeterminéterminé

DiffusionDiffusion Post-diffusionPost-diffusion

Accent surla sécurité

Questions sur lasécurité au cours

des entretiens

Déterminer lescritères de validation

de sécurité

Révision externe

Analyser les menaces

Apprendreet affiner

Révisionde la sécuritépar l'équipe

Formerl'équipe

Tests sur la mutation des données et les

privilèges minimaux

Revoir les anciens défauts, intégrerles instructions vérifiées sur le codage

sécurisé, utiliser les outils

=continu

Page 13: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Le processus SDL

Phase de définition des exigencesPhase de définition des exigences , la phase de définition des exigences et de , la phase de définition des exigences et de

planification initiale d'une nouvelle version offre planification initiale d'une nouvelle version offre l'occasion idéale d'élaborer un logiciel sécurisé. l'occasion idéale d'élaborer un logiciel sécurisé.

Phase de conception Phase de conception Définir la structure générale du logiciel du point Définir la structure générale du logiciel du point

de vue de la sécurité et identifier les de vue de la sécurité et identifier les composants dont le fonctionnement correct est composants dont le fonctionnement correct est essentiel à la sécurité (la « base informatique essentiel à la sécurité (la « base informatique fiable »).fiable »).

Répertorier les éléments présents dans la Répertorier les éléments présents dans la surface d'attaque du logicielsurface d'attaque du logiciel

Effectuer une modélisation des menacesEffectuer une modélisation des menaces

Page 14: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Le processus SDL

Phase d'implémentationPhase d'implémentation Les développeurs prêtent une attention Les développeurs prêtent une attention

toute particulière à l'exactitude du code toute particulière à l'exactitude du code permettant de limiter les menaces à permettant de limiter les menaces à haute priorité et les testeurs vérifient haute priorité et les testeurs vérifient que de telles menaces sont que de telles menaces sont effectivement bloquées ou limitéeseffectivement bloquées ou limitées

Appliquer les normes de codage et de Appliquer les normes de codage et de test. test.

Appliquer des outils de test de la Appliquer des outils de test de la sécuritésécurité

Appliquer des outils d'analyse statique Appliquer des outils d'analyse statique de codede code

Effectuer des révues de codeEffectuer des révues de code

Page 15: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Le processus SDL

Phase de vérificationPhase de vérification Au cours de cette phase, pendant que le Au cours de cette phase, pendant que le

logiciel est soumis à des tests bêtas, logiciel est soumis à des tests bêtas, l'équipe produit effectue une « l'équipe produit effectue une « campagne de sécurité » comprenant des campagne de sécurité » comprenant des revues de code de sécurité plus revues de code de sécurité plus poussées que celles réalisées à la phase poussées que celles réalisées à la phase d'implémentation, ainsi que des tests de d'implémentation, ainsi que des tests de sécurité ciblés. sécurité ciblés.

Mener une campagne de sécurité Mener une campagne de sécurité pendant la phase de vérification garantit pendant la phase de vérification garantit que la revue de code et les tests sont que la revue de code et les tests sont effectués sur la version finale effectués sur la version finale

Page 16: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Le processus SDL

Phase de vérificationPhase de vérification doit subir une revue de sécurité finale, doit subir une revue de sécurité finale,

ou FSRou FSR « Du point de vue de la sécurité, ce logiciel « Du point de vue de la sécurité, ce logiciel

est-il prêt à être livré à des clients ? »est-il prêt à être livré à des clients ? » La FSR est une revue du logiciel La FSR est une revue du logiciel

indépendanteindépendante Toute FSR exige une révision des bogues Toute FSR exige une révision des bogues

initialement identifiés comme des bogues de initialement identifiés comme des bogues de sécuritésécurité

Une FSR comprend également une revue de Une FSR comprend également une revue de la capacité du logiciel à résister à des la capacité du logiciel à résister à des vulnérabilités récemment signalées affectant vulnérabilités récemment signalées affectant des logiciels similairesdes logiciels similaires

Tests de pénétration Tests de pénétration

Page 17: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Le processus SDL

Phase de support et de maintenancePhase de support et de maintenance Malgré l'application du SDL au cours du Malgré l'application du SDL au cours du

développement, les pratiques de développement, les pratiques de développement de pointe ne développement de pointe ne garantissent pas encore l'envoi de garantissent pas encore l'envoi de logiciels totalement invulnérables et il y logiciels totalement invulnérables et il y a de bonnes raisons de croire que cela a de bonnes raisons de croire que cela n'arrivera jamais.n'arrivera jamais.

Page 18: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

A qui s’applique SDL

Obligation d'application du SDLObligation d'application du SDL Susceptibles d'être utilisés pour traiter Susceptibles d'être utilisés pour traiter

des informations personnelles et des informations personnelles et sensiblessensibles

Susceptibles d'être utilisés dans une Susceptibles d'être utilisés dans une entreprise ou par toute autre entreprise ou par toute autre organisation (par exemple, une organisation (par exemple, une université, un gouvernement ou une université, un gouvernement ou une association).association).

Susceptibles d'être connectés à Internet Susceptibles d'être connectés à Internet ou bien utilisés dans un environnement ou bien utilisés dans un environnement réseau.réseau.

Page 19: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Une équipe « dédiée » sécurité L'équipe de sécurité centraleL'équipe de sécurité centrale : SWI - : SWI - Secure Windows Secure Windows

InitiativeInitiative Développement, maintenance et amélioration du SDL, y Développement, maintenance et amélioration du SDL, y

compris la définition des aspects obligatoires du processus.compris la définition des aspects obligatoires du processus. Développement, amélioration et dispense d'une formation aux Développement, amélioration et dispense d'une formation aux

techniciens.techniciens. Attribution/mise à disposition de « conseillers en sécurité » qui Attribution/mise à disposition de « conseillers en sécurité » qui

assistent les équipes produit tout au long du processus, assistent les équipes produit tout au long du processus, effectuent des révisions pour elles et s'assurent que les effectuent des révisions pour elles et s'assurent que les questions de l'équipe produit reçoivent des réponses précises, questions de l'équipe produit reçoivent des réponses précises, bien documentées et dans les meilleurs délais.bien documentées et dans les meilleurs délais.

Faire office d'experts dans une large gamme de sujets relatifs à Faire office d'experts dans une large gamme de sujets relatifs à la sécurité, en s'assurant que les questions adressées aux la sécurité, en s'assurant que les questions adressées aux conseillers en sécurité reçoivent des réponses précises dans les conseillers en sécurité reçoivent des réponses précises dans les meilleurs délais.meilleurs délais.

Exécution des FSR avant le lancement du logiciel.Exécution des FSR avant le lancement du logiciel. Investigation technique des vulnérabilités signalées dans les Investigation technique des vulnérabilités signalées dans les

logiciels envoyés aux clients afin de s'assurer que les causes logiciels envoyés aux clients afin de s'assurer que les causes premières sont comprises et que le niveau de réponse premières sont comprises et que le niveau de réponse approprié est mis en œuvre.approprié est mis en œuvre.

Page 20: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Efficacité et outils

Efficacité des éléments du SDLEfficacité des éléments du SDL L'équipe SWI est d'accord sur le fait que L'équipe SWI est d'accord sur le fait que

la la modélisation des menacesmodélisation des menaces est le est le composant le plus important du SDLcomposant le plus important du SDL

les tests de pénétration ne constituent les tests de pénétration ne constituent pas la meilleure façon de parvenir à un pas la meilleure façon de parvenir à un niveau de sécurité satisfaisantniveau de sécurité satisfaisant centrées sur la modélisation des menaces, centrées sur la modélisation des menaces,

les révisions de code et l'utilisation d'outils les révisions de code et l'utilisation d'outils automatisés, ainsi que des tests de automatisés, ainsi que des tests de robustesse plutôt que sur des tests de robustesse plutôt que sur des tests de pénétration. pénétration.

L'expérience de Microsoft montre que L'expérience de Microsoft montre que le SDL est efficace pour réduire le le SDL est efficace pour réduire le nombre de vulnérabilités en matière nombre de vulnérabilités en matière de sécuritéde sécurité

Page 21: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

AnnexeAnnexe

Evaluation des menaces

Page 22: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Types d'attaques courants

Échec de la connexion

Attaquesd'entreprise

Données confidentielles

Violations accidentellesde la sécurité

Attaquesautomatisées

Pirates

Virus, chevaux de Troie et vers

Déni de service (DoS)

DoS

Page 23: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Qu'est-ce que la modélisation des menaces ?

LaLa modélisationmodélisation desdes menacesmenaces estest uneune analyseanalyse baséebasée sursur lala sécuritésécurité dontdont lesles objectifsobjectifs sontsont lesles suivantssuivants  :: Aider l'équipe produit à identifier les vulnérabilités Aider l'équipe produit à identifier les vulnérabilités

du produitdu produit Évaluer les menaces relatives à une applicationÉvaluer les menaces relatives à une application Réduire les risques globaux à l'égard de la sécuritéRéduire les risques globaux à l'égard de la sécurité Identifier les ressourcesIdentifier les ressources Découvrir les vulnérabilitésDécouvrir les vulnérabilités Identifier les menacesIdentifier les menaces Permettre d'établir la base des spécifications Permettre d'établir la base des spécifications

de conception en matière de sécuritéde conception en matière de sécurité

Page 24: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Avantages de la modélisation des menaces

PermetPermet dede mieuxmieux comprendrecomprendre votrevotre applicationapplication Permet de rechercher Permet de rechercher

les erreursles erreurs Permet d'identifier les Permet d'identifier les

erreurs de conception erreurs de conception complexescomplexes

Permet d'intégrer de Permet d'intégrer de nouveaux membres à l'équipenouveaux membres à l'équipe

Permet d'établir des programmes Permet d'établir des programmes de test de sécurité bien conçusde test de sécurité bien conçus

Risque

Vulnérabilité

Ressource

Page 25: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces

Identifier les ressources1

Créer une vue d'ensemble de l'architecture2

Décomposer l'application3

Identifier les menaces4

Documenter les menaces5

Évaluer les menaces6

Processus de modélisation des menaces

Page 26: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces Étape 1 : Identifier les ressources

ÉtablissezÉtablissez lala listeliste desdes ressourcesressources devantdevant être protégéesêtre protégées  :: Données confidentielles, telles que les Données confidentielles, telles que les

bases de données des clientsbases de données des clients Pages WebPages Web Disponibilité systèmeDisponibilité système Tous les autres éléments qui, s'ils étaient Tous les autres éléments qui, s'ils étaient

endommagés, pourraient empêcher le bon endommagés, pourraient empêcher le bon fonctionnement de votre applicationfonctionnement de votre application

Page 27: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces Étape 2 : Créer une vue d'ensemble de l'architecture IdentifierIdentifier cece queque faitfait l'applicationl'application Créer un diagramme de l'architectureCréer un diagramme de l'architecture

Identifier les technologiesIdentifier les technologies

Autorisations NTFS(authentification)

Autorisation de fichierAutorisation d'URL

Rôles .NET(authentification)

Rôle défini par l'utilisateur(authentification)

SSL(Confidentialité/

Intégrité)

Frontière sécurisée

Alice MirwaultLaura BartoliVictor Nahas

IISIIS

Authentificationanonyme

Authentificationpar formulaires

IPSec(Privé/Intégrité)

Frontière sécurisée

ASPNET(identité du processus)Microsoft

ASP.NETMicrosoft ASP.NET

Authentification de Microsoft® Windows

MicrosoftSQL Server

Page 28: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces Étape 3 : Décomposer l'application

DécomposezDécomposez l'applicationl'application

Créez un profil de Créez un profil de sécurité basé sur les sécurité basé sur les domaines de domaines de vulnérabilité classiquesvulnérabilité classiques

Examinez les Examinez les interactions entre les interactions entre les différents sous-systèmesdifférents sous-systèmes

Utilisez les diagrammes Utilisez les diagrammes UML ou de flux de UML ou de flux de donnéesdonnées

IdentifierIdentifier lesles frontièresfrontières sécuriséessécurisées

IdentifierIdentifier lele fluxflux dede donnéesdonnées

IdentifierIdentifier lesles pointspoints d'entréed'entrée

IdentifierIdentifier lele codecode privilégiéprivilégié

DocumenterDocumenter lele profilprofil dede sécuritésécurité

Page 29: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces Étape 4 : Identifier les menaces

ConstituezConstituez uneune équipeéquipe Identifiez les menacesIdentifiez les menaces

Menaces liées au réseauMenaces liées au réseau Menaces liées aux hôtesMenaces liées aux hôtes Menaces liées à l'applicationMenaces liées à l'application

Page 30: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Types de menaces Exemples

USurpation Falsification de messages électroniques Rediffusion de paquets d'authentification

FalsificaTion Modification des données lors d'une transmission Changement des données dans des fichiers

Répudiation Suppression d'un fichier important et déni de l'action Achat d'un produit et déni de l'action

Divulgation

d'Informations

Exposition d'informations dans des messages d'erreur Exposition de code sur des sites Web

Deni de serviceSubmersion d'un réseau avec des paquets SYNSubmersion d'un réseau avec des paquets ICMP falsifiés

Elévation de privilèges

Exploitation du débordement de mémoire tampon pour obtenir des privilèges systèmeObtention illégale des privilèges d'administrateur

Processus de modélisation des menaces Identifier les menaces à l'aide de STRIDE

Page 31: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Menace n°1 (I)Voir les informations relatives aux salaires

1.1Le trafic n'est pas protégé

1.2L'intrus voitle trafic

1.2.1Espionner le trafic avec un analyseur de protocole

1.2.2Écouter le traficdu routeur

1.2.2.1Routeur non équipé d'un correctif

1.2.2.2Endommager le routeur

1.2.2.3Deviner le mot de passe du routeur

1.0 Voir les informations relatives aux salaires (I) 1.1 Le trafic n'est pas protégé (ET) 1.2 L'intrus voit le trafic 1.2.1 Espionner le trafic avec un analyseur de protocole 1.2.2 Écouter le trafic du routeur 1.2.2.1 Routeur non équipé d'un correctif (ET) 1.2.2.2 Endommager le routeur 1.2.2.3 Deviner le mot de passe du routeur

Processus de modélisation des menaces Identifier les menaces à l'aide d'organigrammes des menaces

Page 32: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces Étape 5 : Documenter les menaces

DocumenterDocumenter lesles menacesmenaces àà l'aidel'aide d'und'un modèlemodèle  ::

Ne pas renseigner le champ Risque Ne pas renseigner le champ Risque (pour l'instant)(pour l'instant)

Description de la menace

Injection de commandes SQL

Cible de la menace Composant de l'accès aux données

RisqueTechniques d'attaque L'intrus ajoute des commandes

SQL au nom d'utilisateur utilisé pour former une requête SQL

Contre-mesures Utiliser une expression régulière pour valider le nom d'utilisateur et une procédure stockée avec des paramètres pour accéder à la base de données

Page 33: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menaces Étape 6 : Évaluer les menaces

UtilisezUtilisez lala formuleformule suivantesuivante  :: Risque = Probabilité * Dommage potentielRisque = Probabilité * Dommage potentiel

Utilisez le modèle DREAD pour noter Utilisez le modèle DREAD pour noter les menacesles menaces Dommage potentielDommage potentiel   ReproductibilitéReproductibilité   ExploitationExploitation      Utilisateurs AffectésAffectés   DécouverteDécouverte  

Page 34: SDL Trustworthy Computing Security Development Lifecycle Synthèse E. Mittelette, E Vernié Novembre 2005

Processus de modélisation des menacesExemple : Évaluer les menaces

Menace n°1 (I)Voir les informations relatives aux salaires

1.1Le trafic n'est pas protégé

1.2L'intrus voitle trafic

1.2.1Espionner le trafic avec un analyseur de protocole

1.2.2Écouter le traficdu routeur

1.2.2.1Routeur non équipé d'un correctif

1.2.2.2Endommager le routeur

1.2.2.3Deviner le mot de passe du routeur

•Dommage potentiel•Utilisateurs affectésOu•Dommage

•Reproductibilité•Exploitation•DécouverteOu•Probabilité