Sécurité des applications Retour d'expérience



Documents pareils
Les risques HERVE SCHAUER HSC

Sécurité des systèmes informatiques Introduction

Sécurité des Postes Clients

OWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI

Sécurité du cloud computing

Introduction sur les risques avec l'informatique «industrielle»

Sécurité de la Voix sur IP

«ASSISTANT SECURITE RESEAU ET HELP DESK»

Menaces et sécurité préventive

NOMADES ET SMARTPHONES EN ENTREPRISE EN TOUTE SÉCURITÉ PAR BERTRAND THOMAS ET JULIEN COULET

DÉVELOPPER DES APPLICATIONS WEB SÉCURISÉES

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet JSSI INSA

Attaques applicatives

Extraction de données authentifiantes de la mémoire Windows

laposte.net) Ministère de l'éducation nationale Atelier sécurité Rabat RALL 2007

Laboratoire de Haute Sécurité. Télescope réseau et sécurité des réseaux

Single Sign On. Nicolas Dewaele. Single Sign On. Page 1. et Web SSO

Tech-Evenings Sécurité des applications Web Sébastien LEBRETON


Principales failles de sécurité des applications Web Principes, parades et bonnes pratiques de développement

Consulter notre site : Network Telecom Security Solutions. en partenariat technique avec

Rapport de Stage Christopher Chedeau 2 au 26 Juin 2009

Travaux soutenus par l ANR. Jean-François CAPURON (DGA) Bruno LEGEARD (Smartesting)

Gestion des identités

Gestion des incidents

Failles XSS : Principes, Catégories Démonstrations, Contre mesures

La sécurité applicative

Découvrez Kaspersky. Small Office Security TPE PME GUIDE DE LA SÉCURITÉ INFORMATIQUE

Analyse statique de code dans un cycle de développement Web Retour d'expérience

Virtualisation et Sécurité

L'écoute des conversations VoIP

DÉPARTEMENT FORMATIONS 2015 FORMATION-RECRUTEMENT CATALOGUE. CONTACTS (+226)

Découverte de réseaux IPv6

Implémentation libre de Liberty Alliance. Frédéric Péters

Présentation du Programme Régional de Formations Qualifiantes

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet.

M Études et développement informatique

Table des matières. Avant-propos... Préface... XIII. Remerciements...

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

Etude du cas ASSURAL. Mise en conformité du système d'information avec la norme ISO 17799

La haute disponibilité de la CHAINE DE

Groupe Eyrolles, 2006, ISBN : X

LICENCE : INFORMATIQUE GENERALE

Mobilité, quand tout ordinateur peut devenir cheval de Troie

Programme «Analyste Programmeur» Diplôme d état : «Développeur Informatique» Homologué au niveau III (Bac+2) (JO N 176 du 1 août 2003) (34 semaines)

Les rootkits navigateurs

Méthode de Test. Pour WIKIROUTE. Rapport concernant les méthodes de tests à mettre en place pour assurer la fiabilité de notre projet annuel.

Sécurité des bases de données Nicolas Jombart Alain Thivillon

Cours de Java. Sciences-U Lyon. Java - Introduction Java - Fondamentaux Java Avancé.

État Réalisé En cours Planifié

PySQLi. Framework d'injection de code SQL

Catalogue des Formations Techniques

Mobilité et sécurité

SECURIDAY 2013 Cyber War

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

Authentification avec CAS sous PRONOTE.net Version du lundi 19 septembre 2011

Spécifications de l'offre Surveillance d'infrastructure à distance

Sécurité des réseaux Les attaques

Le protocole SSH (Secure Shell)

Mini-Rapport d Audit basé sur la méthode d analyse MEHARI

SQL MAP. Etude d un logiciel SQL Injection

Gestion des utilisateurs et Entreprise Etendue

College Du Chinchon. Torniké Sidamonidzé 3C. M. Brulé

Aspects juridiques des tests d'intrusion

UE 8 Systèmes d information de gestion Le programme

EA D S INNOVA TION W ORKS. Pass The Hash. Nicolas RUFF EADS-IW SE/CS nicolas.ruff (à) eads.net

Sécurité des sites Web Pas un cours un recueil du net. INF340 Jean-François Berdjugin

Qu est ce que Visual Guard. Authentification Vérifier l identité d un utilisateur

Le Centre canadien de réponse aux incidents cybernétiques (CCRIC)

M Études et développement informatique

Cours 14. Crypto. 2004, Marc-André Léger

Charte d installation des réseaux sans-fils à l INSA de Lyon

Le principe du moindre privilège appliqué aux systèmes Windows

Détection d'intrusions et analyse forensique

Comité sectoriel de la sécurité sociale et de la santé Section «Sécurité sociale»

Menaces et vulnérabilités sur les réseaux et les postes de travail

Formation en Logiciels Libres. Fiche d inscription

Le top 10 des menaces de sécurité des bases de données. Comment limiter les principales vulnérabilités des bases de données?

Sage CRM. 7.2 Guide de Portail Client

LES REGLES ELEMENTAIRES DE SECURITE LE POSTE DE TRAVAIL. CNRS RSSIC version du 11 mai 2012

Politique de Référencement Intersectorielle de Sécurité (PRIS)

Vulnérabilités et sécurisation des applications Web

Vulnérabilités et solutions de sécurisation des applications Web

Adresse directe fichier : Adresse url spécifique sur laquelle le lien hypertext du Client doit être

Sécurité des Systèmes d Information Une politique simple pour parler à la Direction Générale De la théorie à la pratique

Bases de données documentaires et distribuées Cours NFE04

SANS SEC 504 : Techniques de hacking, exploitation de failles et gestion des incidents

Faille dans Internet Explorer 7

Les clauses «sécurité» d'un contrat SaaS

Messagerie & Groupeware. augmentez l expertise de votre capital humain

COMPÉTENCES TECHNIQUES

Cabinet d Expertise en Sécurité des Systèmes d Information

FORMATION PROFESSIONNELLE AU HACKING

Homologation ARJEL : Retour d expérience

B2i. LE B2i Brevet Informatique et Internet. Niveau : tous. 1 S'approprier un environnement informatique de travail. b2ico1.odt.

Chapitre 7. Sécurité des réseaux. Services, attaques et mécanismes cryptographiques. Hdhili M.H. Cours Administration et sécurité des réseaux

DÉVELOPPER DES APPLICATIONS WEB SÉCURISÉES

Transcription:

HERVÉ SCHAUER CONSULTANTS Cabinet de Consultants en Sécurité Informatique depuis 1989 Spécialisé sur Unix, Windows, TCP/IP et Internet Netfocus Sécurité des applications Retour d'expérience Nicolas Collignon <Nicolas.Collignon@hsc.fr>

Plan Introduction Sensibilisation Modélisation et conception Tests Conclusion 2/25

La sécurité d'aujourd'hui... Vulnérabilités réseau à la baisse pour les attaques externes Les applications sont de plus en plus exposées sur le réseau Tendance à la «web-isation» des applications Diffusion des bulletins de sécurité et des codes d'exploitation de plus en plus rapide 3/25

Les applications Contraintes métier Évolution constante «Il faut ajouter les fonctionnalités X, Y et Z» Le temps «L'application doit être prête pour demain» Ressources limitées «Il faut développer, débugger, tester et faire le support technique» Principaux problèmes Les développeurs manquent de temps Les développeurs sont généralement mal sensibilisés à la sécurité Absence de tests externes 4/25

Comment gérer la sécurité Intervention après (trop tard..) Modélisation Conception Tests Sécurité Coûts potentiellement élevés Intervention avant Sécurité Modélisation Conception Tests Sécurité intégrée au SDLC 2 heures de perdues en phase de conception 1 semaine de gagnée en phase de correction des bugs 5/25

Développeurs vs. Pirates Développeurs Objectif «Comment faire marcher la fonctionnalité XYZ pour demain?» Caractéristique Potentiellement pas ou mal sensibilisés à la sécurité Pirates / Auditeurs Objectifs «Comment casser l'application?» «Comment passer administrateur sur le serveur?» Caractéristique Bien sensibilisés à la sécurité 6/25

Sensibilisation 7/25

Sensibilisation à la sécurité Sensibiliser les personnes impliquées dans le projet Développeurs, chefs de projet, RSSI, etc.. Former les développeurs aux problèmes de sécurité liés au langage de programmation choisi Les bonnes pratiques de programmation sont disponibles sur Internet Le panel du type de vulnérabilités évolue avec le temps 8/25

Cas «MSSQL va mal» 1/2 Site Web d'un service client automobile Application ASP Test d'intrusion Compromission de la base de données et du système Mauvaise validation des données utilisateurs Une requête SQL intègre une donnée potentiellement malveillante Injection SQL Utilisation du compte MSSQL «sa» Élévation de privilèges en tant que SYSTEM sur le serveur Windows 9/25

Cas «MSSQL va mal» 2/2 Correction de la majorité des interactions avec la base de données Manque de sensibilisation Sécurité Je vais utiliser le compte «sa», Sinon j'ai des erreurs. Vulnérabilités... 10/25

Cas «crypto maison» 1/2 Partage d'informations vidéo P2P Application propriétaire (C++) Analyse boîte-noire (reverse-engineering) Contournement de l'authentification Mauvaise implémentation cryptographique lors de l'authentification La transformation du mot de passe génère de nombreuses collisions Le mot de passe n'est pas suffisamment utilisé dans le calcul clé RC4 Attaque «plain-text» sur RC4 en 256 itérations Authentification sans connaître le mot de passe 11/25

Cas «crypto maison» 2/2 Obligation de gérer deux versions du protocole car tous les clients ne peuvent pas être mis à jour Manque de sensibilisation Sécurité Je vais inventer un algorithme super sécurisé! Vulnérabilités... 12/25

Modélisation et conception 13/25

Modélisation et conception La sécurité doit être prise en compte dès la modélisation Évite les lourdes corrections après découverte de failles Schématiser les interactions dans l'application entre les blocs de confiance et les blocs sensibles Permet de mieux comprendre le code qui est sensible Suivre les bonnes pratiques de sécurité 14/25

Cas «je vois ton compte client» 1/2 Application Web Java / Affacturage Application de gestion de comptes clients Test d'intrusion externe Usurpation d'identité Absence de contrôle sur l'identité qui accède à un compte Le client indique au serveur quelle identité utiliser Le serveur ne vérifie pas l'information Injection de l'identité dans les cookies 15/25

Cas «je vois ton compte client» 2/2 Conséquences Ré-implémentation de la gestion des sessions utilisateurs Impact sur le code serveur et le code client Contraintes de temps + Manque de sensibilisation C'est beaucoup plus simple quand je stocke l'identifiant dans les cookies. Sécurité Vulnérabilités... J'afficherai uniquement les comptes de l'utilisateur pour pas qu'il accède aux autres comptes 16/25

Tests 17/25

La phase de tests 2 types de tests Tests «classiques» Tests de sécurité Procéder aux tests de sécurité pendant les tests unitaires La phase de test / debug est plus longue que la conception Tester est souvent aussi compliqué que développer 18/25

Qui teste? Relecture en interne Nécessite des ressources et du temps Relecture par des développeurs autres que ceux qui ont développé Relecture assistée par un logiciel De gratuit à très cher, d'inutile à très rentable Ne permet pas de détecter les problèmes de logique métier Tests externes Audits de code Tests d'intrusion 19/25

Et après? L'application vit Modification du code source Modification de la configuration Modification de la configuration système Modification de la configuration réseau Intégrer la sécurité dans le cycle de vie de l'application Prier... 20/25

Cas «je peux changer les cotes» 1/2 Portail de paris sportifs Serveur d'application Web + application Web Audit de code source (~280 000 lignes de C et TCL) Développeurs fortement sensibilisés à la sécurité Compromission du serveur, possibilité de changer les cotes des paris Modification récente du code non revue en interne Fonctionnalité non utilisée mais présente dans le code Manque de vérification des données utilisateurs Exécution de code TCL arbitraire 21/25

Cas «je peux changer les cotes» 2/2 Fonctionnalité inutile supprimée Correction rapide Forte expertise en sécurité + Mauvais processus de relecture du code Sécurité «presque très bien» Je vais tester sur la production, ça sera plus marrant! Vulnérabilités... 22/25

Conclusion 23/25

En bref Impliquer la sécurité en amont des projets Sensibiliser les acteurs des projets à la sécurité Intégrer la sécurité au SDLC La sécurité ne se résume pas au code source Configuration de l'application Configuration système Configuration réseau 24/25

Questions? 25/25