SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
D´eveloppement d’applications s´ecuris´ees
MP2 Audit et S´ecurit´e Informatique
Salah Triki
Ann´ee 2015-2016
Plan
Introduction `a la s´ecurit´e informatique
S´ecurit´e de bas niveau : langage C et Buffer Overflow
D´efenses contre les attaques de bas niveau
Conception et impl´ementation d’application s´ecuris´ee
Analyse statique de code
Introduction
Qu’est ce que la s´ecurit´e informatique ?
La s´ecurit´e informatique, qu’on appelle aujourd’hui
cybers´ecurit´e, est un attribut d’un syst`eme informatique.
Attribut justesse :
Dans des situations pr´evisibles, une application se comporte
conform´ement `a la sp´ecification.
Exemple de site web bancaire : si un client demande un
transfert 100$ dans compte `a un autre, alors si le montant
existe, le transfert est effectivement effectu´e.
Attribut s´ecurit´e :
Dans des situations vari´ees, une application ne doit pas
pr´esenter des comportements ind´esirables .
Alors que la justesse concerne ce que l’application doit faire,
la s´ecurit´e concerne ce qu’elle ne doit pas faire ; mˆeme
lorsqu’un utilisateur malveillant essaie de contourner les
mesures proactives ´etablit par les d´eveloppeurs.
Introduction
Les types de comportements ind´esirables
Un comportement ind´esirable est la violation d’un ou de
plusieurs propri´et´es de s´ecurit´e.
Violation de confidentialit´e
Vols d’information confidentielles : plans de conception des
produits, code source, num´ero carte de cr´edit ...
Violation d’int´egrit´e
Modification des fonctionnalit´es : installation de logiciels
(spyware, client botnet)
Modification/Suppression/Cr´eation de fichiers : comptes, logs,
plans, ...
Violation de disponibilit´e
Indisponibilit´e du service achat, d’acc`es au compte bancaire
Introduction
Total des vuln´erabilit´es, 2006-2014
Introduction
Qu’est ce que le d´eveloppement d’applications s´ecuris´ees ?
Le d´eveloppement d’applications s´ecuris´ees (s´ecurit´e des
logicielles) est une branche la s´ecurit´e informatique consacr´ee
`a la conception et l’impl´ementation s´ecuris´ees des
applications.
La s´ecurit´e des logicielles se distingue par l’accent mis sur la
s´ecurisation du code, ce qui la rend une approche de type
boˆıte blanche
Les approches de type boˆıte noire ignorent les d´etails internes
du logiciel.
S´ecurit´e du syst`eme d’exploitation, Antivirus, Pare-feu.
Introduction
Pourquoi est-il important de s´ecuriser le code ?
Les d´efauts logiciels sont la cause principale des probl`emes de
s´ecurit´e, et la s´ecurit´e des logicielles vise `a adresser ces
probl`emes directement.
Les autres approches de s´ecurit´e (SE, Antivirus, Pare-feu)
entourent le logiciel de d´efenses tout en ignorant le code.
Lorsque le code contient des d´efauts, ces d´efenses sont
inefficaces et un utilisateur malveillant trouve toujours un
moyen pour les contourner.
Introduction `a la s´ecurit´e informatique
S´ecurit´e de bas niveau : langage C et Buffer Overflow
D´efenses contre les attaques de bas niveau
Conception et impl´ementation d’application s´ecuris´ee
Analyse statique de code
S´ecurit´e de bas niveau
Qu’est ce qu’un Buffer Overflow ?
D´efaut logiciel qui :
Affecte, essentiellement, les programmes ´ecrits en langage C
ou C++.
Provoque le plantage du programme
A des implications significatives sur la s´ecurit´e.
Exploit´e par un utilisateur malveillant pour forcer le
programme `a effectuer des actions ind´esirables tels que :
R´ecup´eration d’information priv´ees
Corruption de donn´ees importantes
Ex´ecution d’un code sp´ecifique.
S´ecurit´e de bas niveau
Pourquoi ´etudier les Buffers Overflows ?
Ils sont toujours d’actualit´e.
C et C++ sont des langages populaires
Ils partagent les mˆemes caract´eristiques d’autres bugs
r´epondus
S´ecurit´e de bas niveau
Les connaissances essentielles
Pour comprendre les buffers overflows, il n´ecessaire de savoir :
Comment le compilateur produit un code ex´ecutable `a partir
d’un code ´ecrit en C
Comment le SE et l’architecture mat´erielle coop`erent pour
ex´ecuter un programme
La connaissance de ces d´etails permet de comprendre :
Comment les programmes utilisent la m´emoire et ainsi les
attaquer.
Comment un utilisateur malveillant peut exploiter les d´efauts
logiciels.
S´ecurit´e de bas niveau
Arrangements des programmes dans la m´emoire
S´ecurit´e de bas niveau
Arrangements des programmes dans la m´emoire (Cont.)
S´ecurit´e de bas niveau
Arrangements des programmes dans la m´emoire (Cont.)
S´ecurit´e de bas niveau
Arrangements des programmes dans la m´emoire (Cont.)
S´ecurit´e de bas niveau
Appel de fonction et pile : r´esum´e
Fonction appelante :
1. Empiler les param`etres dans la pile/positionner les param`etres
dans des registres
2. Empiler l’adresse de l’instruction de retour
3. Faire un saut vers l’adresse de la fonction
Fonction appel´ee :
4. Empiler l’adresse du pointeur de pile (%ebp)
5. (%ebp) ← (%esp)
6. Empiler les variables locales
Retour `a la fonction appelante :
7. R´einitialiser le pointeur de pile et le pointeur de sommet de
pile
8. Faire un saut vers l’instruction de retour

Más contenido relacionado

Destacado

DEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGE
DEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGEDEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGE
DEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGEhpfumtchum
 
Audit Informatique
Audit InformatiqueAudit Informatique
Audit Informatiqueetienne
 
Audit
AuditAudit
Auditzan
 
Présentation MyScienceWork 10 ans de creative commons
Présentation MyScienceWork 10 ans de creative commonsPrésentation MyScienceWork 10 ans de creative commons
Présentation MyScienceWork 10 ans de creative commonsMyScienceWork
 
Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...
Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...
Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...Ahmed Ammar Rebai PhD
 
Transpondeur - Formation théorique pilote LAPL-PPL
Transpondeur - Formation théorique pilote LAPL-PPLTranspondeur - Formation théorique pilote LAPL-PPL
Transpondeur - Formation théorique pilote LAPL-PPLWalter Dubois
 
Comment trouver des jeux pour entraînement clavier
Comment trouver des jeux pour entraînement clavierComment trouver des jeux pour entraînement clavier
Comment trouver des jeux pour entraînement clavierdrrivedroite
 
Pass Repreneur Bpifrance Présentation
Pass Repreneur Bpifrance PrésentationPass Repreneur Bpifrance Présentation
Pass Repreneur Bpifrance PrésentationBecuwe Maëlle
 
Projet Carriere-Karine Thibodeau
Projet Carriere-Karine ThibodeauProjet Carriere-Karine Thibodeau
Projet Carriere-Karine Thibodeaukarthi0169
 
La medecine internationnale-1
La medecine internationnale-1La medecine internationnale-1
La medecine internationnale-1philmaestro
 
Rac fnh-diesel-v6
Rac fnh-diesel-v6Rac fnh-diesel-v6
Rac fnh-diesel-v6RAC-F
 

Destacado (20)

Rapport PFE
Rapport PFERapport PFE
Rapport PFE
 
DEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGE
DEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGEDEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGE
DEMARCHE AUDIT INFORMATIQUE DANS UNE BANQUE - RAPPORT DE STAGE
 
Audit Informatique
Audit InformatiqueAudit Informatique
Audit Informatique
 
Processus Audit SI
Processus Audit SIProcessus Audit SI
Processus Audit SI
 
Audit des systemes d'information
Audit des systemes d'informationAudit des systemes d'information
Audit des systemes d'information
 
Audit
AuditAudit
Audit
 
Présentation MyScienceWork 10 ans de creative commons
Présentation MyScienceWork 10 ans de creative commonsPrésentation MyScienceWork 10 ans de creative commons
Présentation MyScienceWork 10 ans de creative commons
 
Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...
Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...
Étude de l'énergie et du point d'émission radio des rayons cosmiques détectés...
 
Bajoo
BajooBajoo
Bajoo
 
Transpondeur - Formation théorique pilote LAPL-PPL
Transpondeur - Formation théorique pilote LAPL-PPLTranspondeur - Formation théorique pilote LAPL-PPL
Transpondeur - Formation théorique pilote LAPL-PPL
 
Nonsence
NonsenceNonsence
Nonsence
 
Comment trouver des jeux pour entraînement clavier
Comment trouver des jeux pour entraînement clavierComment trouver des jeux pour entraînement clavier
Comment trouver des jeux pour entraînement clavier
 
Rapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - final
Rapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - finalRapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - final
Rapport auto évaluation - ponteix - saskatchewan - 05-11-2013 - final
 
Nylon
NylonNylon
Nylon
 
Pass Repreneur Bpifrance Présentation
Pass Repreneur Bpifrance PrésentationPass Repreneur Bpifrance Présentation
Pass Repreneur Bpifrance Présentation
 
Projet Carriere-Karine Thibodeau
Projet Carriere-Karine ThibodeauProjet Carriere-Karine Thibodeau
Projet Carriere-Karine Thibodeau
 
Programme de 14 Jours
Programme de 14 JoursProgramme de 14 Jours
Programme de 14 Jours
 
La medecine internationnale-1
La medecine internationnale-1La medecine internationnale-1
La medecine internationnale-1
 
Rac fnh-diesel-v6
Rac fnh-diesel-v6Rac fnh-diesel-v6
Rac fnh-diesel-v6
 
Project final-sports
Project final-sportsProject final-sports
Project final-sports
 

Similar a Développement d'applications sécurisées [Partie 1]

unité 2.pptx
unité 2.pptxunité 2.pptx
unité 2.pptxBahaty1
 
Rational France livre blanc - choisir le bon outil pour faire du bon travail
Rational France   livre blanc - choisir le bon outil pour faire du bon travailRational France   livre blanc - choisir le bon outil pour faire du bon travail
Rational France livre blanc - choisir le bon outil pour faire du bon travailRational_France
 
Resume-theorique-M209-V1-version-provisoire-0909_2.pdf
Resume-theorique-M209-V1-version-provisoire-0909_2.pdfResume-theorique-M209-V1-version-provisoire-0909_2.pdf
Resume-theorique-M209-V1-version-provisoire-0909_2.pdfFootballLovers9
 
IBM Security Intelligence Juin-2016
IBM Security Intelligence Juin-2016IBM Security Intelligence Juin-2016
IBM Security Intelligence Juin-2016Serge Richard
 
Sécurisation d'un site internet
Sécurisation d'un site internetSécurisation d'un site internet
Sécurisation d'un site internetwaggaland
 
Reverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le ProfitReverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le ProfitSoufiane Tahiri
 
Sortir des sentiers battus: les TI et l’entreprise s’unissent pour innover
Sortir des sentiers battus: les TI et l’entreprise s’unissent pour innoverSortir des sentiers battus: les TI et l’entreprise s’unissent pour innover
Sortir des sentiers battus: les TI et l’entreprise s’unissent pour innoverPECB
 
Sécurité informatique - 10 erreurs à ne pas commettre
Sécurité informatique - 10 erreurs à ne pas commettreSécurité informatique - 10 erreurs à ne pas commettre
Sécurité informatique - 10 erreurs à ne pas commettreNRC
 
Les firewalls applicatifs HTTP / WAF
Les firewalls applicatifs HTTP / WAFLes firewalls applicatifs HTTP / WAF
Les firewalls applicatifs HTTP / WAFSylvain Maret
 
Copy of PARTIE-1 Introduction à la cyber sécurité.pdf
Copy of PARTIE-1 Introduction à la cyber sécurité.pdfCopy of PARTIE-1 Introduction à la cyber sécurité.pdf
Copy of PARTIE-1 Introduction à la cyber sécurité.pdfsimogamer3
 
Définir un guide de sécurité des systèmes informatiques virtuels
Définir un guide de sécurité des systèmes informatiques virtuelsDéfinir un guide de sécurité des systèmes informatiques virtuels
Définir un guide de sécurité des systèmes informatiques virtuelsRoland Kouakou
 
Cp 2013 security_report_web_fr(1)
Cp 2013 security_report_web_fr(1)Cp 2013 security_report_web_fr(1)
Cp 2013 security_report_web_fr(1)niokho
 
Barcamp presentation Cybersecurite by saphia
Barcamp presentation Cybersecurite by saphiaBarcamp presentation Cybersecurite by saphia
Barcamp presentation Cybersecurite by saphiaBarcampCameroon
 
Deploiement du pare feu checkpoint gaia r77
Deploiement du pare feu checkpoint gaia r77Deploiement du pare feu checkpoint gaia r77
Deploiement du pare feu checkpoint gaia r77Mame Cheikh Ibra Niang
 
Baromètre BlackNoise 2022.pdf
Baromètre BlackNoise 2022.pdfBaromètre BlackNoise 2022.pdf
Baromètre BlackNoise 2022.pdfssuser384b72
 
Développement sécurisé avec Microsoft.Net et HP Fortify
Développement sécurisé avec Microsoft.Net et HP FortifyDéveloppement sécurisé avec Microsoft.Net et HP Fortify
Développement sécurisé avec Microsoft.Net et HP FortifyMicrosoft
 
Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...
Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...
Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...BEIJAFLORE
 
2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique
2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique
2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratiquePatrick Guimonet
 

Similar a Développement d'applications sécurisées [Partie 1] (20)

unité 2.pptx
unité 2.pptxunité 2.pptx
unité 2.pptx
 
Rational France livre blanc - choisir le bon outil pour faire du bon travail
Rational France   livre blanc - choisir le bon outil pour faire du bon travailRational France   livre blanc - choisir le bon outil pour faire du bon travail
Rational France livre blanc - choisir le bon outil pour faire du bon travail
 
Développement sécurisé
Développement sécuriséDéveloppement sécurisé
Développement sécurisé
 
Resume-theorique-M209-V1-version-provisoire-0909_2.pdf
Resume-theorique-M209-V1-version-provisoire-0909_2.pdfResume-theorique-M209-V1-version-provisoire-0909_2.pdf
Resume-theorique-M209-V1-version-provisoire-0909_2.pdf
 
IBM Security Intelligence Juin-2016
IBM Security Intelligence Juin-2016IBM Security Intelligence Juin-2016
IBM Security Intelligence Juin-2016
 
Sécurisation d'un site internet
Sécurisation d'un site internetSécurisation d'un site internet
Sécurisation d'un site internet
 
Reverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le ProfitReverse-Engineering Pour le Fun et le Profit
Reverse-Engineering Pour le Fun et le Profit
 
Sortir des sentiers battus: les TI et l’entreprise s’unissent pour innover
Sortir des sentiers battus: les TI et l’entreprise s’unissent pour innoverSortir des sentiers battus: les TI et l’entreprise s’unissent pour innover
Sortir des sentiers battus: les TI et l’entreprise s’unissent pour innover
 
Sécurité informatique - 10 erreurs à ne pas commettre
Sécurité informatique - 10 erreurs à ne pas commettreSécurité informatique - 10 erreurs à ne pas commettre
Sécurité informatique - 10 erreurs à ne pas commettre
 
Les firewalls applicatifs HTTP / WAF
Les firewalls applicatifs HTTP / WAFLes firewalls applicatifs HTTP / WAF
Les firewalls applicatifs HTTP / WAF
 
Copy of PARTIE-1 Introduction à la cyber sécurité.pdf
Copy of PARTIE-1 Introduction à la cyber sécurité.pdfCopy of PARTIE-1 Introduction à la cyber sécurité.pdf
Copy of PARTIE-1 Introduction à la cyber sécurité.pdf
 
Définir un guide de sécurité des systèmes informatiques virtuels
Définir un guide de sécurité des systèmes informatiques virtuelsDéfinir un guide de sécurité des systèmes informatiques virtuels
Définir un guide de sécurité des systèmes informatiques virtuels
 
Cp 2013 security_report_web_fr(1)
Cp 2013 security_report_web_fr(1)Cp 2013 security_report_web_fr(1)
Cp 2013 security_report_web_fr(1)
 
Barcamp presentation Cybersecurite by saphia
Barcamp presentation Cybersecurite by saphiaBarcamp presentation Cybersecurite by saphia
Barcamp presentation Cybersecurite by saphia
 
La sécurité endpoint : efficace, mais pas efficient
La sécurité endpoint : efficace, mais pas efficientLa sécurité endpoint : efficace, mais pas efficient
La sécurité endpoint : efficace, mais pas efficient
 
Deploiement du pare feu checkpoint gaia r77
Deploiement du pare feu checkpoint gaia r77Deploiement du pare feu checkpoint gaia r77
Deploiement du pare feu checkpoint gaia r77
 
Baromètre BlackNoise 2022.pdf
Baromètre BlackNoise 2022.pdfBaromètre BlackNoise 2022.pdf
Baromètre BlackNoise 2022.pdf
 
Développement sécurisé avec Microsoft.Net et HP Fortify
Développement sécurisé avec Microsoft.Net et HP FortifyDéveloppement sécurisé avec Microsoft.Net et HP Fortify
Développement sécurisé avec Microsoft.Net et HP Fortify
 
Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...
Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...
Cybersécurité en milieu industriel : un constat alarmant, une prise de consci...
 
2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique
2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique
2020-06-06 Power Saturday 2020 - Cyber sécurité Microsoft 365 par la pratique
 

Más de Salah Triki

Système de fichiers simple
Système de fichiers simpleSystème de fichiers simple
Système de fichiers simpleSalah Triki
 
Multiplexage du CPU
Multiplexage du CPUMultiplexage du CPU
Multiplexage du CPUSalah Triki
 
Projet Développement d'applications sécurisées
Projet Développement d'applications sécuriséesProjet Développement d'applications sécurisées
Projet Développement d'applications sécuriséesSalah Triki
 
Développement d'applications sécurisées [Partie 2]
Développement d'applications sécurisées [Partie 2]Développement d'applications sécurisées [Partie 2]
Développement d'applications sécurisées [Partie 2]Salah Triki
 
Arrangement de la mémoire
Arrangement de la mémoireArrangement de la mémoire
Arrangement de la mémoireSalah Triki
 
Principe de fonctionnement de l'ordinateur
Principe de fonctionnement de l'ordinateurPrincipe de fonctionnement de l'ordinateur
Principe de fonctionnement de l'ordinateurSalah Triki
 
Les appels système
Les appels systèmeLes appels système
Les appels systèmeSalah Triki
 
Gestion de la mémoire
Gestion de la mémoireGestion de la mémoire
Gestion de la mémoireSalah Triki
 
Cours systèmes d'exploitation 2
Cours systèmes d'exploitation 2Cours systèmes d'exploitation 2
Cours systèmes d'exploitation 2Salah Triki
 
Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...
Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...
Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...Salah Triki
 
MIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèse
MIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèseMIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèse
MIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèseSalah Triki
 
Vers une approche de sécurisation des entrepôts de données en utilisant les r...
Vers une approche de sécurisation des entrepôts de données en utilisant les r...Vers une approche de sécurisation des entrepôts de données en utilisant les r...
Vers une approche de sécurisation des entrepôts de données en utilisant les r...Salah Triki
 
Sécurisation des entrepôts de données : Etat de l’art et proposition
Sécurisation des entrepôts de données : Etat de l’art et proposition Sécurisation des entrepôts de données : Etat de l’art et proposition
Sécurisation des entrepôts de données : Etat de l’art et proposition Salah Triki
 

Más de Salah Triki (14)

Système de fichiers simple
Système de fichiers simpleSystème de fichiers simple
Système de fichiers simple
 
Multiplexage du CPU
Multiplexage du CPUMultiplexage du CPU
Multiplexage du CPU
 
Projet Développement d'applications sécurisées
Projet Développement d'applications sécuriséesProjet Développement d'applications sécurisées
Projet Développement d'applications sécurisées
 
Développement d'applications sécurisées [Partie 2]
Développement d'applications sécurisées [Partie 2]Développement d'applications sécurisées [Partie 2]
Développement d'applications sécurisées [Partie 2]
 
Arrangement de la mémoire
Arrangement de la mémoireArrangement de la mémoire
Arrangement de la mémoire
 
Principe de fonctionnement de l'ordinateur
Principe de fonctionnement de l'ordinateurPrincipe de fonctionnement de l'ordinateur
Principe de fonctionnement de l'ordinateur
 
Les appels système
Les appels systèmeLes appels système
Les appels système
 
Gestion de la mémoire
Gestion de la mémoireGestion de la mémoire
Gestion de la mémoire
 
DMA
DMADMA
DMA
 
Cours systèmes d'exploitation 2
Cours systèmes d'exploitation 2Cours systèmes d'exploitation 2
Cours systèmes d'exploitation 2
 
Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...
Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...
Securing Data Warehouses: A Semi-automatic Approach for Inference Prevention ...
 
MIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèse
MIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèseMIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèse
MIRADOC 2010 - MIRACL Lab. : Etat d'avancement des travaux de thèse
 
Vers une approche de sécurisation des entrepôts de données en utilisant les r...
Vers une approche de sécurisation des entrepôts de données en utilisant les r...Vers une approche de sécurisation des entrepôts de données en utilisant les r...
Vers une approche de sécurisation des entrepôts de données en utilisant les r...
 
Sécurisation des entrepôts de données : Etat de l’art et proposition
Sécurisation des entrepôts de données : Etat de l’art et proposition Sécurisation des entrepôts de données : Etat de l’art et proposition
Sécurisation des entrepôts de données : Etat de l’art et proposition
 

Développement d'applications sécurisées [Partie 1]

  • 1. D´eveloppement d’applications s´ecuris´ees MP2 Audit et S´ecurit´e Informatique Salah Triki Ann´ee 2015-2016
  • 2. Plan Introduction `a la s´ecurit´e informatique S´ecurit´e de bas niveau : langage C et Buffer Overflow D´efenses contre les attaques de bas niveau Conception et impl´ementation d’application s´ecuris´ee Analyse statique de code
  • 3. Introduction Qu’est ce que la s´ecurit´e informatique ? La s´ecurit´e informatique, qu’on appelle aujourd’hui cybers´ecurit´e, est un attribut d’un syst`eme informatique. Attribut justesse : Dans des situations pr´evisibles, une application se comporte conform´ement `a la sp´ecification. Exemple de site web bancaire : si un client demande un transfert 100$ dans compte `a un autre, alors si le montant existe, le transfert est effectivement effectu´e. Attribut s´ecurit´e : Dans des situations vari´ees, une application ne doit pas pr´esenter des comportements ind´esirables . Alors que la justesse concerne ce que l’application doit faire, la s´ecurit´e concerne ce qu’elle ne doit pas faire ; mˆeme lorsqu’un utilisateur malveillant essaie de contourner les mesures proactives ´etablit par les d´eveloppeurs.
  • 4. Introduction Les types de comportements ind´esirables Un comportement ind´esirable est la violation d’un ou de plusieurs propri´et´es de s´ecurit´e. Violation de confidentialit´e Vols d’information confidentielles : plans de conception des produits, code source, num´ero carte de cr´edit ... Violation d’int´egrit´e Modification des fonctionnalit´es : installation de logiciels (spyware, client botnet) Modification/Suppression/Cr´eation de fichiers : comptes, logs, plans, ... Violation de disponibilit´e Indisponibilit´e du service achat, d’acc`es au compte bancaire
  • 6. Introduction Qu’est ce que le d´eveloppement d’applications s´ecuris´ees ? Le d´eveloppement d’applications s´ecuris´ees (s´ecurit´e des logicielles) est une branche la s´ecurit´e informatique consacr´ee `a la conception et l’impl´ementation s´ecuris´ees des applications. La s´ecurit´e des logicielles se distingue par l’accent mis sur la s´ecurisation du code, ce qui la rend une approche de type boˆıte blanche Les approches de type boˆıte noire ignorent les d´etails internes du logiciel. S´ecurit´e du syst`eme d’exploitation, Antivirus, Pare-feu.
  • 7. Introduction Pourquoi est-il important de s´ecuriser le code ? Les d´efauts logiciels sont la cause principale des probl`emes de s´ecurit´e, et la s´ecurit´e des logicielles vise `a adresser ces probl`emes directement. Les autres approches de s´ecurit´e (SE, Antivirus, Pare-feu) entourent le logiciel de d´efenses tout en ignorant le code. Lorsque le code contient des d´efauts, ces d´efenses sont inefficaces et un utilisateur malveillant trouve toujours un moyen pour les contourner.
  • 8. Introduction `a la s´ecurit´e informatique S´ecurit´e de bas niveau : langage C et Buffer Overflow D´efenses contre les attaques de bas niveau Conception et impl´ementation d’application s´ecuris´ee Analyse statique de code
  • 9. S´ecurit´e de bas niveau Qu’est ce qu’un Buffer Overflow ? D´efaut logiciel qui : Affecte, essentiellement, les programmes ´ecrits en langage C ou C++. Provoque le plantage du programme A des implications significatives sur la s´ecurit´e. Exploit´e par un utilisateur malveillant pour forcer le programme `a effectuer des actions ind´esirables tels que : R´ecup´eration d’information priv´ees Corruption de donn´ees importantes Ex´ecution d’un code sp´ecifique.
  • 10. S´ecurit´e de bas niveau Pourquoi ´etudier les Buffers Overflows ? Ils sont toujours d’actualit´e. C et C++ sont des langages populaires Ils partagent les mˆemes caract´eristiques d’autres bugs r´epondus
  • 11. S´ecurit´e de bas niveau Les connaissances essentielles Pour comprendre les buffers overflows, il n´ecessaire de savoir : Comment le compilateur produit un code ex´ecutable `a partir d’un code ´ecrit en C Comment le SE et l’architecture mat´erielle coop`erent pour ex´ecuter un programme La connaissance de ces d´etails permet de comprendre : Comment les programmes utilisent la m´emoire et ainsi les attaquer. Comment un utilisateur malveillant peut exploiter les d´efauts logiciels.
  • 12. S´ecurit´e de bas niveau Arrangements des programmes dans la m´emoire
  • 13. S´ecurit´e de bas niveau Arrangements des programmes dans la m´emoire (Cont.)
  • 14. S´ecurit´e de bas niveau Arrangements des programmes dans la m´emoire (Cont.)
  • 15. S´ecurit´e de bas niveau Arrangements des programmes dans la m´emoire (Cont.)
  • 16. S´ecurit´e de bas niveau Appel de fonction et pile : r´esum´e Fonction appelante : 1. Empiler les param`etres dans la pile/positionner les param`etres dans des registres 2. Empiler l’adresse de l’instruction de retour 3. Faire un saut vers l’adresse de la fonction Fonction appel´ee : 4. Empiler l’adresse du pointeur de pile (%ebp) 5. (%ebp) ← (%esp) 6. Empiler les variables locales Retour `a la fonction appelante : 7. R´einitialiser le pointeur de pile et le pointeur de sommet de pile 8. Faire un saut vers l’instruction de retour