SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
La Sécurité Applicative
Mise en œuvre chez GDF SUEZ
Club Qualimétrie du 23/09/2008
Marina Retbi
Plan
Contexte et
Problématique
Détails et positionnement
de l’offre GDF SUEZ
Processus de réalisation
Documentation disponible
Livrables
Délais et charges
L’outil utilisé : AppScan
Exemple réel
- 2 -
Sécurité Applicative
- 3 -
La Cellule de Qualification Logicielle
CQL
Qualité du
code
Performance
Sécurité
applicative
• Respect de l’état de l’art en terme de sécurité
• Non-vulnérabilité aux principales attaques
• Respect des normes de développement
• Aide au pilotage de prestation par la
qualité
• Conformité des temps de réponse avec
les exigences formulées dans le CdC
• Évaluation de la robustesse à la charge
Juil-07
Opérationnel
Avr-07
Industrialisation
Statut
Étude en cours
Fin-08 Fin-08
Sécurité Applicative
- 4 -
La sécurité applicative : dangers et impacts
Les dangers
• Vol et manipulation
Des sessions des utilisateurs
Des logins et mots de passe
associés
D’informations confidentielles
• Possibilité de provoquer des
erreurs internes de l’application
Lenteurs
Arrêts complets
• Modification de contenu du site
(« défacement »)
• Intrusion sur le réseau interne
Les impacts
• Atteinte potentielle à
l’entreprise et son image
• Nuisible au bon
fonctionnement du SI
• Utilisation du SI à des fins
malveillantes
• Espionnage industriel
• I.C.S
Sécurité Applicative
- 5 -
Sécurité applicative : les couches visées
Couche
applicative
Infrastructure
Sécurité Applicative
- 6 -
La sécurité applicative en chiffres
Quelques chiffres…
• « 75 percent of successful attacks take place at the application
layer »
Gartner
• 85% des sites vulnérables au Cross-Site Scripting
31 000 sites testés
étude WhiteHat
Les 2 principales
menaces rencontrées
• Cross-Site Scripting
• Injection SQL
L’étude 2007 du WASC montre une augmentation des failles type
« fuites d’information »
• http://www.webappsec.org/projects/statistics/
Sécurité Applicative
- 7 -
Le Cross-Site Scripting ou XSS
Exécution de script malicieux sur le poste client
• N’attaque pas directement l’application mais l’utilisateur
Exploite la confiance de l’utilisateur
Peut nuire aux deux parties
• Vol de session / usurpation d’identité
• Prise de contrôle du poste client
• Récupération d’informations personnelles
• etc.
Sécurité Applicative
- 8 -
Le Cross-Site Scripting ou XSS - Exemple XSS volatile
Sécurité Applicative
- 9 -
L’injection SQL
Manipulation des paramètres de formulaires ou d’URL
• Modification des requêtes SQL de l’application
Exécution de ces requêtes sur la base de donnée de l’application
• Récupération de données sensibles
Login & mot de passe
Numéros de cartes bancaires
Données extérieures à l’application accessibles avec les mêmes droits
applicatifs
etc.
• Modification, corruption, effacement
• Élévation de privilèges
• Trojan
• Prise de contrôle du système SELECT * FROM SQL
Sécurité Applicative
- 10 -
L’injection SQL - Exemple
1. Requête SQL d’origine pour l’authentification
2. Manipulation des paramètres
• username
• password
3. La requête devient
SELECT * FROM Users
WHERE (username = ‘$username’)
AND (pwd = ‘$password’);
Paramètres HTTP POST
SELECT * FROM Users
WHERE (username = ‘’ OR 1=1 )
AND (pwd = ‘’ OR 1=1 );
Sécurité Applicative
- 11 -
Références en sécurité applicative
OWASP (Open Web Application Security Project)
• Style Wikipedia, communauté très active
• Nombreux projets, tutoriaux, explications, etc.
à surveiller et à utiliser comme source d’info.
• http://www.owasp.org
WASC
• WASC TC (Threat Classification)
Classification des failles de sécurité
Standard industriel
• http://www.webappsec.org/
Sécurité Applicative
- 12 -
La sécurité applicative chez Gaz de France
Une démarche Groupe de sécurité applicative
• Passage d’un fonctionnement projet par projet à une politique globale
• Charte de Sécurité opérationnelle
• Niveau de sécurité minimum garanti
Uniquement pour les projets web
Audit obligatoire pour tout nouveau projet web
• La mise en production dépend du résultat de l’audit
Audit recommandé pour les applications web existantes
Audit recommandé après toute évolution majeure
Sécurité Applicative
Impact fort sur les projets
Résultats de l’audits requis pour le
Comité de Validation Technique final
• Pour tous les nouveaux projets web
• Attribution du drapeau « Niveau minimum de sécurité
applicative »
Impact sur la décision de la mise en production
• Bloquant si présence de failles majeures
Mécanisme de dérogation
• Etude d’impact requise
• Passage en Comité d’architecture SSI
1 audit par an si évolutions majeures au cours de l’année passée
- 13 -
Sécurité Applicative
STOP
Positionnement de l’offre dans le cycle de vie projet
Intégration des exigences
techniques dans le CCTP
Réalisation d’audits
- 14 -
Offre sécurité
applicative
Offre sécurité
applicative
Offre sécurité
applicative
Offre sécurité
applicative
Sécurité Applicative
arbitrage
STOP
- 15 -
L’offre
Sécurité
Applicative
Déroulement de l’offre de sécurité applicative
Intégration
des
exigences
techniques
dans le CCTP
de l’A.O.
Évaluation*
de la
maturité des
intégrateurs
Définition +
planification
stratégie
d’audit
Réalisation
audit
sécurité
applicative
Remise
rapport +
élaboration
et suivi du
plan
d’action
Sensibilisation
des équipes
de
l’intégrateur**
Récupératio
n du dossier
d’audit
rempli par
l’intégrateur
Au lancement d’un
AO
Pour tout audit
Sécurité Applicative
* Questionnaire
soumis lors de l’AO
** Documentation +
réunion de lancement
Livrables
Rapport synthétique
• contenant
Les types de failles et leur répartition
Les risques encourus
• Transmis au Comité de Validation Technique final
Impact potentiel sur la mise en production
Rapport détaillé (à destination de l’équipe projet) contenant
• Le détail de toutes failles rencontrées par l’outil
• Les préconisations génériques pour les corrections
Présentation synthétique des résultats
• Inclus des Préconisations / Plan d’actions génériques
- 16 -
Sécurité Applicative
Documents disponibles pour l’offre de sécurité applicative
(1/2)
Charte de sécurité applicative
Questionnaire de sécurité applicative
Guide du développement d’applications
web sécurisées
Modèle de dossier de sécurité applicative
Description de l’offre de sécurité
applicative
- 17 -
Sécurité Applicative
?
- 18 -
Charges de réalisation d’un audit sécurité applicative
Durée du
projet
Durée moyenne
constatée de l’audit
Nb audits intermédiaires
recommandés
< 2 mois 5 jours n/a
< 4 mois 5 jours 1
< 6 mois 7 jours 1
< 1 an 10 jours 3
< 2 ans 20 jours 7
Sécurité Applicative
Outil d’audit automatique utilisé : AppScan
Fonctionnalités
• Exploration
Manuelle
Automatique
• Tests de sécurité
• Base de connaissance
Recensement des
failles
Types de faille
Gravité
Préconisations pour
les corrections
Généralités
J2EE, PHP, .NET
• Génération de
rapports d’audit
Personnalisables
Multiples formats
PDF,
Word,
HTML
- 19 -
Sécurité Applicative
AppScan : la découverte de l’application (« crawling »)
Exploration manuelle
• AppScan enregistre la navigation
Exploration Automatique ( ~ spider google)
• Découverte de liens
Exploration en profondeur ou en largeur
Supporte le javascript et le flash
Enregistrement de l’exploration
• les requêtes HTTP
• Les URL
Les pages
Les paramètres
- 20 -
Sécurité Applicative
- 21 -
AppScan : la découverte de l’application (« crawling »)
Contraintes et limitations
• Paramétrage de l’exploration automatique peut être délicat
et prendre du temps
Phases de login
Détection du logout
etc.
• Exploration manuelle parfois obligatoire et fastidieuse
AJAX
Workflows
etc.
Sécurité Applicative
- 22 -
AppScan : Tests / Analyse
Lancement des tests de sécurité en manipulant les
paramètres
• Comparaison des réponses de l’application par rapport
fonctionnement normal
• Reconnaissance de « patterns » pour les failles
• Regroupement des failles découvertes
Contraintes
• Explosion combinatoire : tests parfois très longs
Peut atteindre 24 à 48h, voire plus
• Peut planter différentes couches de l’application
Serveur
Base de donnée
etc.
Sécurité Applicative
AppScan : Contraintes de l’audit
Tests non transparents pour l’application
• Potentiellement intrusifs
• Modification des données en base
Audit potentiellement long fonction du scénario
Impact sur les performances
• Baisse du niveau de service
• Ralentissement / bloquage de l’application
• Attention aux serveurs mutualisés
Impact sur les autres applications hébergés
Tests doivent être réalisés sur une version la plus proche de la
production
pré-production / recette / formation / etc.
- 23 -
Sécurité Applicative
- 24 -
AppSan : Capture d’écran
Sécurité Applicative
Exemple : Le contexte applicatif et de l’audit
Fonctionnel
• Application de gestion des
risques au niveau local et
global
Technique
• Application Java/Oracle
• Framework Struts
Emplacement de l’analyse
• Serveur de recette de
l’application
Déroulement de l’audit
• Prévu
7 jours
2 profils différents avec
escalade de privilège
6 scénarios
• Réalisé
7.5 jours
1 profil testé
1 scénario
608 URL visitées
187 210 tests effectués
- 25 -
Sécurité Applicative
Exemple : Synthèse des résultats analysés (1/2)
Remontée d’un nombre très
important de failles
• 24 types de failles
différentes remontés par
l’outil
• 760++ points de
vulnérabilité au total
Types de faille
• Blind SQL injection
• Cross-Site Scripting (XSS)
• Injection de liens
• Erreurs applicatives
• etc.
Étude des failles les plus
critiques
• temps limité
• Vérifier leur pertinence
• Analyser leur sévérité en
fonction du contexte
- 26 -
8
3
0
critique
moyenne
recommandation
Synthèse des résultats analysés (2/2)
Aperçu des possibles risques encourus
• Voir, modifier, détruire la base de données
• Voler et manipuler des sessions d’utilisateurs
• Provoquer des erreurs internes de l’application lenteurs,
arrêts
• Voir le contenu de certains fichiers
Nombre important de failles ne reflète pas le nombre de
corrections à apporter
• Méthodologie de correction identique : filtrage
centralisé de toutes les données utilisateur
• Traiter les corrections de façon unifiée
Exemple réel : Cross Site Scripting
- 28 -
Sécurité Applicative
Apparition d’une pop-up
alerte,
initialement non
programmée dans
l’application
Exemple réel : Modification d’interface
- 29 -
Sécurité Applicative
Exemple réel : Poison Null Byte Files Retrieval
- 30 -
Sécurité Applicative
Récupération du fichier système boot.ini
https://www.mon-domaine.com/[…]/Action.do?crud=callHelp&pageId=/../../../../../../../../boot.ini%00.html
Exemples réels : Erreurs Applicatives et injection de lien
Insertion d’un lien, initialement non
programmé dans l’application
Données parlantes pour un attaquant
sur la structure de l’application
- 31 -
Sécurité Applicative
Exemple : Plan d’action Correctif (1/2)
Contrôler tous les paramètres d’entrée côté serveur
• Ne pas faire confiance aux données extérieures
• Contrôles
Sur le format attendu
Sur la longueur
Aux limites
Etc.
Filtrer tous les paramètres
• Requêtes SQL (notamment depuis la page de recherche)
• Données de script
• Etc.
Un conseil : mutualiser le filtrage des paramètres
• dans des objets spécifiques. ex: package Validator de Struts
• Via un « reverse proxy »
Exemple : Plan d’action MOE (2/2)
Envoyer les informations sensibles via la méthode POST plutôt que
GET
Re-générer l’ID de session une fois l’utilisateur identifié
Valider le chemin d’accès aux fichiers
• Doivent rester dans le contexte de l’application
• Limiter les extensions utilisables
• Retirer tout caractère spécial (cf. filtrage de données)
Faire une page d’erreur générique
• Sans information technique
• Que des pages de type HTTP 404 (ressource inexistante)
Annexe
- 34 -
Sécurité Applicative
Extrait des en-têtes de règles de la Charte Sécurité
Applicative (1/3)
RSEC-CONC-1 Globalement, la démarche consiste à tout interdire et n’autoriser que
certains éléments (au lieu de tout autoriser sauf certains éléments).
RSEC-CONC-5 Placer les filtres et expressions régulières en amont des traitements
de sorte à centraliser la politique de sécurité.
RSEC-CONC-8 Afficher à l’utilisateur uniquement les informations nécessaires.
RSEC-CONC-11 Employer des requêtes paramétrées (PreparedStatement) qui
échappent automatiquement les données lors de la valorisation de la requête pour
limiter l’injection SQL
RSEC-DEV-4 Ne pas mettre de données sensibles en paramètres d’URL.
RSEC-DEV-10 Contrôler TOUTES les données provenant du navigateur client : en-
tête, cookies, formulaires, champs cachés, paramètres d’URL, ainsi que les données
provenant de la base de données, d’applications ou de services extérieurs, avant leur
traitement applicatif. Toutes ces données sont appelées des données étrangères.
Extrait des en-têtes de règles de la Charte Sécurité
Applicative (2/3)
RSEC-DEV-11 Refaire TOUS les contrôles côté serveur, même s'ils sont aussi réalisés côté client
pour des questions d’efficacité et d’ergonomie.
RSEC-DEV-14 Utiliser une charte de nommage pour différencier les variables filtrées et non
filtrées, afin de s’assurer que l’on utilise la variable filtrée lors des traitements.
RSEC-DEV-17 Tester pour toute chaîne de caractères destinée à être un nom de fichier la non-
présence du caractère nul (0) ou d’une de ses représentations encodées (%00 au format URL).
RSEC-DEV-19 Échapper les données qui permettent de valoriser une requête SQL lorsqu’elles
sont fournies par l’utilisateur, par une application ou un service externe, ou même par des fonctions
internes à l’application qui potentiellement manipulent des données initialement fournies par un
utilisateur.
RSEC-DEV-20 Échapper les caractères spéciaux et encoder au format URL les données provenant
initialement d’un utilisateur ou des valeurs obtenues à partir du système d’information, avant de les
envoyer à l’utilisateur final.
RSEC-DEV-23 Limiter, lorsque c’est possible, la longueur des chaînes de caractères issues de
données étrangères (champ de saisie libre dans un formulaire, valeur d’un paramètre transmis
dans une URL…).
Extrait des en-têtes de règles de la Charte Sécurité
Applicative (3/3)
RSEC-DEV-26 Ne pas afficher les messages d’erreurs « internes » à
l’application dans le navigateur client.
RSEC-DEV-31 Ne pas afficher d’informations critiques inutilement.
RSEC-DEV-33 Toujours demander à l’utilisateur de se ré-authentifier avant
une action critique.
RSEC-DEV-34 Régénérer l’identifiant de session après authentification afin
de se protéger de la fixation de session.
RSEC-DEV-36 Vérifier que l’utilisateur a le droit d’accéder à une page ou à
une ressource (ex : fichier à downloader) avant de lui fournir la ressource
RSEC-ENV-1 Installer régulièrement les derniers patchs de sécurité sur les
logiciels qui appartiennent à l’environnement d’exécution.

Más contenido relacionado

La actualidad más candente

White paper - La sécurisation des web services
White paper - La sécurisation des web servicesWhite paper - La sécurisation des web services
White paper - La sécurisation des web servicesBee_Ware
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securiteBorni Dhifi
 
Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)Aymeric Lagier
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseAntonio Fontes
 
Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012Valdes Nzalli
 

La actualidad más candente (8)

Sécurité des applications web
Sécurité des applications webSécurité des applications web
Sécurité des applications web
 
Développement sécurisé
Développement sécuriséDéveloppement sécurisé
Développement sécurisé
 
White paper - La sécurisation des web services
White paper - La sécurisation des web servicesWhite paper - La sécurisation des web services
White paper - La sécurisation des web services
 
Presentation des failles_de_securite
Presentation des failles_de_securitePresentation des failles_de_securite
Presentation des failles_de_securite
 
Failles de sécurité
Failles de sécuritéFailles de sécurité
Failles de sécurité
 
Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)Secure Software Development Life Cycle (SSDLC)
Secure Software Development Life Cycle (SSDLC)
 
Sécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défenseSécurité des applications web: attaque et défense
Sécurité des applications web: attaque et défense
 
Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012Valdes securite des application - barcamp2012
Valdes securite des application - barcamp2012
 

Similar a 20080923 02 - Securité applicative (GDF-Suez)

2014 09-25-club-27001 iso 27034-presentation-v2.2
2014 09-25-club-27001 iso 27034-presentation-v2.22014 09-25-club-27001 iso 27034-presentation-v2.2
2014 09-25-club-27001 iso 27034-presentation-v2.2Sébastien GIORIA
 
Pourquoi implémenter la security by design _ BAKA Diop.(Squad)
Pourquoi implémenter la security by design _ BAKA Diop.(Squad)Pourquoi implémenter la security by design _ BAKA Diop.(Squad)
Pourquoi implémenter la security by design _ BAKA Diop.(Squad)TelecomValley
 
[Agile Testing Day] Tests de charge
[Agile Testing Day] Tests de charge [Agile Testing Day] Tests de charge
[Agile Testing Day] Tests de charge Cellenza
 
Load test & performance profiling
Load test & performance profilingLoad test & performance profiling
Load test & performance profilingMSDEVMTL
 
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private CloudLe Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private CloudMicrosoft Technet France
 
2015-04-28 Bruno Guay Sécurité des projets informatiques
2015-04-28 Bruno Guay Sécurité des projets informatiques2015-04-28 Bruno Guay Sécurité des projets informatiques
2015-04-28 Bruno Guay Sécurité des projets informatiquesPMI Lévis-Québec
 
CIEM, tiens une nouvelle catégorie de produits identité?
CIEM, tiens une nouvelle catégorie de produits identité?CIEM, tiens une nouvelle catégorie de produits identité?
CIEM, tiens une nouvelle catégorie de produits identité?Identity Days
 
Presentation test de_charge_jmeter
Presentation test de_charge_jmeterPresentation test de_charge_jmeter
Presentation test de_charge_jmetersyloemontpellier
 
Université de la performance - Devoxx France
Université de la performance - Devoxx FranceUniversité de la performance - Devoxx France
Université de la performance - Devoxx FranceMarc Bojoly
 
Session #2 du workshop sur la performance en environnement de production
Session #2 du workshop sur la performance en environnement de productionSession #2 du workshop sur la performance en environnement de production
Session #2 du workshop sur la performance en environnement de productionDEFO KUATE Landry
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureJason De Oliveira
 
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihmTelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihmMarc Hage Chahine
 
Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2
Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2
Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2☁️Seyfallah Tagrerout☁ [MVP]
 
Design applicatif avec symfony - Zoom sur la clean architecture - Symfony Live
Design applicatif avec symfony - Zoom sur la clean architecture - Symfony LiveDesign applicatif avec symfony - Zoom sur la clean architecture - Symfony Live
Design applicatif avec symfony - Zoom sur la clean architecture - Symfony LiveRomainKuzniak
 
Génie Logiciel.pptx
Génie Logiciel.pptxGénie Logiciel.pptx
Génie Logiciel.pptxLatifaBen6
 

Similar a 20080923 02 - Securité applicative (GDF-Suez) (20)

2014 09-25-club-27001 iso 27034-presentation-v2.2
2014 09-25-club-27001 iso 27034-presentation-v2.22014 09-25-club-27001 iso 27034-presentation-v2.2
2014 09-25-club-27001 iso 27034-presentation-v2.2
 
Pourquoi implémenter la security by design _ BAKA Diop.(Squad)
Pourquoi implémenter la security by design _ BAKA Diop.(Squad)Pourquoi implémenter la security by design _ BAKA Diop.(Squad)
Pourquoi implémenter la security by design _ BAKA Diop.(Squad)
 
Methodologie projet
Methodologie projet Methodologie projet
Methodologie projet
 
Les tests de securite devops
Les tests de securite devopsLes tests de securite devops
Les tests de securite devops
 
[Agile Testing Day] Tests de charge
[Agile Testing Day] Tests de charge [Agile Testing Day] Tests de charge
[Agile Testing Day] Tests de charge
 
Cloud migration
Cloud migrationCloud migration
Cloud migration
 
Load test & performance profiling
Load test & performance profilingLoad test & performance profiling
Load test & performance profiling
 
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private CloudLe Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
Le Cloud Privé, de la théorie à la réalité avec Microsoft Private Cloud
 
2015-04-28 Bruno Guay Sécurité des projets informatiques
2015-04-28 Bruno Guay Sécurité des projets informatiques2015-04-28 Bruno Guay Sécurité des projets informatiques
2015-04-28 Bruno Guay Sécurité des projets informatiques
 
Perf university
Perf universityPerf university
Perf university
 
CIEM, tiens une nouvelle catégorie de produits identité?
CIEM, tiens une nouvelle catégorie de produits identité?CIEM, tiens une nouvelle catégorie de produits identité?
CIEM, tiens une nouvelle catégorie de produits identité?
 
Presentation test de_charge_jmeter
Presentation test de_charge_jmeterPresentation test de_charge_jmeter
Presentation test de_charge_jmeter
 
Université de la performance - Devoxx France
Université de la performance - Devoxx FranceUniversité de la performance - Devoxx France
Université de la performance - Devoxx France
 
Session #2 du workshop sur la performance en environnement de production
Session #2 du workshop sur la performance en environnement de productionSession #2 du workshop sur la performance en environnement de production
Session #2 du workshop sur la performance en environnement de production
 
TechDays 2012 - Windows Azure
TechDays 2012 - Windows AzureTechDays 2012 - Windows Azure
TechDays 2012 - Windows Azure
 
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihmTelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
TelecomValley 2017 05-18-ARMAGNACQ_automatisation+test_ihm
 
Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2
Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2
Comment sécuriser son environnement avec Microsoft Threat Protection – Part 2
 
Les Outils de la CSA (Cloud Security Alliance)
Les Outils de la CSA (Cloud Security Alliance)Les Outils de la CSA (Cloud Security Alliance)
Les Outils de la CSA (Cloud Security Alliance)
 
Design applicatif avec symfony - Zoom sur la clean architecture - Symfony Live
Design applicatif avec symfony - Zoom sur la clean architecture - Symfony LiveDesign applicatif avec symfony - Zoom sur la clean architecture - Symfony Live
Design applicatif avec symfony - Zoom sur la clean architecture - Symfony Live
 
Génie Logiciel.pptx
Génie Logiciel.pptxGénie Logiciel.pptx
Génie Logiciel.pptx
 

Más de LeClubQualiteLogicielle

20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOpsLeClubQualiteLogicielle
 
20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certificationsLeClubQualiteLogicielle
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez EngieLeClubQualiteLogicielle
 
20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practicesLeClubQualiteLogicielle
 
20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle LeClubQualiteLogicielle
 
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...LeClubQualiteLogicielle
 
20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven developmentLeClubQualiteLogicielle
 
20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?LeClubQualiteLogicielle
 
20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle 20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle LeClubQualiteLogicielle
 
20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continueLeClubQualiteLogicielle
 
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impactLeClubQualiteLogicielle
 
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologieLeClubQualiteLogicielle
 
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...LeClubQualiteLogicielle
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de testLeClubQualiteLogicielle
 
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...LeClubQualiteLogicielle
 
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...LeClubQualiteLogicielle
 
20130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 201320130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 2013LeClubQualiteLogicielle
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBMLeClubQualiteLogicielle
 
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...LeClubQualiteLogicielle
 

Más de LeClubQualiteLogicielle (20)

20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps20171122 03 - Les tests de performance en environnement DevOps
20171122 03 - Les tests de performance en environnement DevOps
 
20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications20171122 04 - Automatisation - formation et certifications
20171122 04 - Automatisation - formation et certifications
 
20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie20171122 01 - REX : Intégration et déploiement continu chez Engie
20171122 01 - REX : Intégration et déploiement continu chez Engie
 
20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices20171122 02 - Engage developers to use better coding practices
20171122 02 - Engage developers to use better coding practices
 
20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle 20171122 - Accueil Club Qualité Logicielle
20171122 - Accueil Club Qualité Logicielle
 
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
20151013 - Crédit Mutuel ARKEA : mise en place d'une traçabilité outillée des...
 
20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development20151013 - Agirc arrco : Behavior driven development
20151013 - Agirc arrco : Behavior driven development
 
20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?20151013 - Réduire les coûts des tests de performance ?
20151013 - Réduire les coûts des tests de performance ?
 
20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle 20151013 - Accueil Club Qualité Logicielle
20151013 - Accueil Club Qualité Logicielle
 
20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue20151013 - DevOps et qualification continue
20151013 - DevOps et qualification continue
 
20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact20140410 - Cartographie applicative multi-technologies et analyse d'impact
20140410 - Cartographie applicative multi-technologies et analyse d'impact
 
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
20140410 - Implémentation de squash TM-TA - Architecture et méthodologie
 
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
20140410 - Gestion des identités, traçabilité des accés - Analogie avec la qu...
 
20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test20140410 - Choisir et implanter un outil de test
20140410 - Choisir et implanter un outil de test
 
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
20130113 02 - TMMI, un modèle pour rentabiliser une organisation de test et a...
 
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
20130113 06 - Travaux de recherche sur la corrélation entre qualité du code e...
 
20130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 201320130113 05 - Inspection continue et roadmap 2013
20130113 05 - Inspection continue et roadmap 2013
 
20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM20130113 04 - Tests d'integration et virtualisation - La vision IBM
20130113 04 - Tests d'integration et virtualisation - La vision IBM
 
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...20130523 06 - The mathematics the way algorithms think / the mathematics the ...
20130523 06 - The mathematics the way algorithms think / the mathematics the ...
 
20130523 05 - Cyclomatic complexity
20130523 05 - Cyclomatic complexity20130523 05 - Cyclomatic complexity
20130523 05 - Cyclomatic complexity
 

20080923 02 - Securité applicative (GDF-Suez)

  • 1. La Sécurité Applicative Mise en œuvre chez GDF SUEZ Club Qualimétrie du 23/09/2008 Marina Retbi
  • 2. Plan Contexte et Problématique Détails et positionnement de l’offre GDF SUEZ Processus de réalisation Documentation disponible Livrables Délais et charges L’outil utilisé : AppScan Exemple réel - 2 - Sécurité Applicative
  • 3. - 3 - La Cellule de Qualification Logicielle CQL Qualité du code Performance Sécurité applicative • Respect de l’état de l’art en terme de sécurité • Non-vulnérabilité aux principales attaques • Respect des normes de développement • Aide au pilotage de prestation par la qualité • Conformité des temps de réponse avec les exigences formulées dans le CdC • Évaluation de la robustesse à la charge Juil-07 Opérationnel Avr-07 Industrialisation Statut Étude en cours Fin-08 Fin-08 Sécurité Applicative
  • 4. - 4 - La sécurité applicative : dangers et impacts Les dangers • Vol et manipulation Des sessions des utilisateurs Des logins et mots de passe associés D’informations confidentielles • Possibilité de provoquer des erreurs internes de l’application Lenteurs Arrêts complets • Modification de contenu du site (« défacement ») • Intrusion sur le réseau interne Les impacts • Atteinte potentielle à l’entreprise et son image • Nuisible au bon fonctionnement du SI • Utilisation du SI à des fins malveillantes • Espionnage industriel • I.C.S Sécurité Applicative
  • 5. - 5 - Sécurité applicative : les couches visées Couche applicative Infrastructure Sécurité Applicative
  • 6. - 6 - La sécurité applicative en chiffres Quelques chiffres… • « 75 percent of successful attacks take place at the application layer » Gartner • 85% des sites vulnérables au Cross-Site Scripting 31 000 sites testés étude WhiteHat Les 2 principales menaces rencontrées • Cross-Site Scripting • Injection SQL L’étude 2007 du WASC montre une augmentation des failles type « fuites d’information » • http://www.webappsec.org/projects/statistics/ Sécurité Applicative
  • 7. - 7 - Le Cross-Site Scripting ou XSS Exécution de script malicieux sur le poste client • N’attaque pas directement l’application mais l’utilisateur Exploite la confiance de l’utilisateur Peut nuire aux deux parties • Vol de session / usurpation d’identité • Prise de contrôle du poste client • Récupération d’informations personnelles • etc. Sécurité Applicative
  • 8. - 8 - Le Cross-Site Scripting ou XSS - Exemple XSS volatile Sécurité Applicative
  • 9. - 9 - L’injection SQL Manipulation des paramètres de formulaires ou d’URL • Modification des requêtes SQL de l’application Exécution de ces requêtes sur la base de donnée de l’application • Récupération de données sensibles Login & mot de passe Numéros de cartes bancaires Données extérieures à l’application accessibles avec les mêmes droits applicatifs etc. • Modification, corruption, effacement • Élévation de privilèges • Trojan • Prise de contrôle du système SELECT * FROM SQL Sécurité Applicative
  • 10. - 10 - L’injection SQL - Exemple 1. Requête SQL d’origine pour l’authentification 2. Manipulation des paramètres • username • password 3. La requête devient SELECT * FROM Users WHERE (username = ‘$username’) AND (pwd = ‘$password’); Paramètres HTTP POST SELECT * FROM Users WHERE (username = ‘’ OR 1=1 ) AND (pwd = ‘’ OR 1=1 ); Sécurité Applicative
  • 11. - 11 - Références en sécurité applicative OWASP (Open Web Application Security Project) • Style Wikipedia, communauté très active • Nombreux projets, tutoriaux, explications, etc. à surveiller et à utiliser comme source d’info. • http://www.owasp.org WASC • WASC TC (Threat Classification) Classification des failles de sécurité Standard industriel • http://www.webappsec.org/ Sécurité Applicative
  • 12. - 12 - La sécurité applicative chez Gaz de France Une démarche Groupe de sécurité applicative • Passage d’un fonctionnement projet par projet à une politique globale • Charte de Sécurité opérationnelle • Niveau de sécurité minimum garanti Uniquement pour les projets web Audit obligatoire pour tout nouveau projet web • La mise en production dépend du résultat de l’audit Audit recommandé pour les applications web existantes Audit recommandé après toute évolution majeure Sécurité Applicative
  • 13. Impact fort sur les projets Résultats de l’audits requis pour le Comité de Validation Technique final • Pour tous les nouveaux projets web • Attribution du drapeau « Niveau minimum de sécurité applicative » Impact sur la décision de la mise en production • Bloquant si présence de failles majeures Mécanisme de dérogation • Etude d’impact requise • Passage en Comité d’architecture SSI 1 audit par an si évolutions majeures au cours de l’année passée - 13 - Sécurité Applicative STOP
  • 14. Positionnement de l’offre dans le cycle de vie projet Intégration des exigences techniques dans le CCTP Réalisation d’audits - 14 - Offre sécurité applicative Offre sécurité applicative Offre sécurité applicative Offre sécurité applicative Sécurité Applicative arbitrage STOP
  • 15. - 15 - L’offre Sécurité Applicative Déroulement de l’offre de sécurité applicative Intégration des exigences techniques dans le CCTP de l’A.O. Évaluation* de la maturité des intégrateurs Définition + planification stratégie d’audit Réalisation audit sécurité applicative Remise rapport + élaboration et suivi du plan d’action Sensibilisation des équipes de l’intégrateur** Récupératio n du dossier d’audit rempli par l’intégrateur Au lancement d’un AO Pour tout audit Sécurité Applicative * Questionnaire soumis lors de l’AO ** Documentation + réunion de lancement
  • 16. Livrables Rapport synthétique • contenant Les types de failles et leur répartition Les risques encourus • Transmis au Comité de Validation Technique final Impact potentiel sur la mise en production Rapport détaillé (à destination de l’équipe projet) contenant • Le détail de toutes failles rencontrées par l’outil • Les préconisations génériques pour les corrections Présentation synthétique des résultats • Inclus des Préconisations / Plan d’actions génériques - 16 - Sécurité Applicative
  • 17. Documents disponibles pour l’offre de sécurité applicative (1/2) Charte de sécurité applicative Questionnaire de sécurité applicative Guide du développement d’applications web sécurisées Modèle de dossier de sécurité applicative Description de l’offre de sécurité applicative - 17 - Sécurité Applicative ?
  • 18. - 18 - Charges de réalisation d’un audit sécurité applicative Durée du projet Durée moyenne constatée de l’audit Nb audits intermédiaires recommandés < 2 mois 5 jours n/a < 4 mois 5 jours 1 < 6 mois 7 jours 1 < 1 an 10 jours 3 < 2 ans 20 jours 7 Sécurité Applicative
  • 19. Outil d’audit automatique utilisé : AppScan Fonctionnalités • Exploration Manuelle Automatique • Tests de sécurité • Base de connaissance Recensement des failles Types de faille Gravité Préconisations pour les corrections Généralités J2EE, PHP, .NET • Génération de rapports d’audit Personnalisables Multiples formats PDF, Word, HTML - 19 - Sécurité Applicative
  • 20. AppScan : la découverte de l’application (« crawling ») Exploration manuelle • AppScan enregistre la navigation Exploration Automatique ( ~ spider google) • Découverte de liens Exploration en profondeur ou en largeur Supporte le javascript et le flash Enregistrement de l’exploration • les requêtes HTTP • Les URL Les pages Les paramètres - 20 - Sécurité Applicative
  • 21. - 21 - AppScan : la découverte de l’application (« crawling ») Contraintes et limitations • Paramétrage de l’exploration automatique peut être délicat et prendre du temps Phases de login Détection du logout etc. • Exploration manuelle parfois obligatoire et fastidieuse AJAX Workflows etc. Sécurité Applicative
  • 22. - 22 - AppScan : Tests / Analyse Lancement des tests de sécurité en manipulant les paramètres • Comparaison des réponses de l’application par rapport fonctionnement normal • Reconnaissance de « patterns » pour les failles • Regroupement des failles découvertes Contraintes • Explosion combinatoire : tests parfois très longs Peut atteindre 24 à 48h, voire plus • Peut planter différentes couches de l’application Serveur Base de donnée etc. Sécurité Applicative
  • 23. AppScan : Contraintes de l’audit Tests non transparents pour l’application • Potentiellement intrusifs • Modification des données en base Audit potentiellement long fonction du scénario Impact sur les performances • Baisse du niveau de service • Ralentissement / bloquage de l’application • Attention aux serveurs mutualisés Impact sur les autres applications hébergés Tests doivent être réalisés sur une version la plus proche de la production pré-production / recette / formation / etc. - 23 - Sécurité Applicative
  • 24. - 24 - AppSan : Capture d’écran Sécurité Applicative
  • 25. Exemple : Le contexte applicatif et de l’audit Fonctionnel • Application de gestion des risques au niveau local et global Technique • Application Java/Oracle • Framework Struts Emplacement de l’analyse • Serveur de recette de l’application Déroulement de l’audit • Prévu 7 jours 2 profils différents avec escalade de privilège 6 scénarios • Réalisé 7.5 jours 1 profil testé 1 scénario 608 URL visitées 187 210 tests effectués - 25 - Sécurité Applicative
  • 26. Exemple : Synthèse des résultats analysés (1/2) Remontée d’un nombre très important de failles • 24 types de failles différentes remontés par l’outil • 760++ points de vulnérabilité au total Types de faille • Blind SQL injection • Cross-Site Scripting (XSS) • Injection de liens • Erreurs applicatives • etc. Étude des failles les plus critiques • temps limité • Vérifier leur pertinence • Analyser leur sévérité en fonction du contexte - 26 - 8 3 0 critique moyenne recommandation
  • 27. Synthèse des résultats analysés (2/2) Aperçu des possibles risques encourus • Voir, modifier, détruire la base de données • Voler et manipuler des sessions d’utilisateurs • Provoquer des erreurs internes de l’application lenteurs, arrêts • Voir le contenu de certains fichiers Nombre important de failles ne reflète pas le nombre de corrections à apporter • Méthodologie de correction identique : filtrage centralisé de toutes les données utilisateur • Traiter les corrections de façon unifiée
  • 28. Exemple réel : Cross Site Scripting - 28 - Sécurité Applicative Apparition d’une pop-up alerte, initialement non programmée dans l’application
  • 29. Exemple réel : Modification d’interface - 29 - Sécurité Applicative
  • 30. Exemple réel : Poison Null Byte Files Retrieval - 30 - Sécurité Applicative Récupération du fichier système boot.ini https://www.mon-domaine.com/[…]/Action.do?crud=callHelp&pageId=/../../../../../../../../boot.ini%00.html
  • 31. Exemples réels : Erreurs Applicatives et injection de lien Insertion d’un lien, initialement non programmé dans l’application Données parlantes pour un attaquant sur la structure de l’application - 31 - Sécurité Applicative
  • 32. Exemple : Plan d’action Correctif (1/2) Contrôler tous les paramètres d’entrée côté serveur • Ne pas faire confiance aux données extérieures • Contrôles Sur le format attendu Sur la longueur Aux limites Etc. Filtrer tous les paramètres • Requêtes SQL (notamment depuis la page de recherche) • Données de script • Etc. Un conseil : mutualiser le filtrage des paramètres • dans des objets spécifiques. ex: package Validator de Struts • Via un « reverse proxy »
  • 33. Exemple : Plan d’action MOE (2/2) Envoyer les informations sensibles via la méthode POST plutôt que GET Re-générer l’ID de session une fois l’utilisateur identifié Valider le chemin d’accès aux fichiers • Doivent rester dans le contexte de l’application • Limiter les extensions utilisables • Retirer tout caractère spécial (cf. filtrage de données) Faire une page d’erreur générique • Sans information technique • Que des pages de type HTTP 404 (ressource inexistante)
  • 35. Extrait des en-têtes de règles de la Charte Sécurité Applicative (1/3) RSEC-CONC-1 Globalement, la démarche consiste à tout interdire et n’autoriser que certains éléments (au lieu de tout autoriser sauf certains éléments). RSEC-CONC-5 Placer les filtres et expressions régulières en amont des traitements de sorte à centraliser la politique de sécurité. RSEC-CONC-8 Afficher à l’utilisateur uniquement les informations nécessaires. RSEC-CONC-11 Employer des requêtes paramétrées (PreparedStatement) qui échappent automatiquement les données lors de la valorisation de la requête pour limiter l’injection SQL RSEC-DEV-4 Ne pas mettre de données sensibles en paramètres d’URL. RSEC-DEV-10 Contrôler TOUTES les données provenant du navigateur client : en- tête, cookies, formulaires, champs cachés, paramètres d’URL, ainsi que les données provenant de la base de données, d’applications ou de services extérieurs, avant leur traitement applicatif. Toutes ces données sont appelées des données étrangères.
  • 36. Extrait des en-têtes de règles de la Charte Sécurité Applicative (2/3) RSEC-DEV-11 Refaire TOUS les contrôles côté serveur, même s'ils sont aussi réalisés côté client pour des questions d’efficacité et d’ergonomie. RSEC-DEV-14 Utiliser une charte de nommage pour différencier les variables filtrées et non filtrées, afin de s’assurer que l’on utilise la variable filtrée lors des traitements. RSEC-DEV-17 Tester pour toute chaîne de caractères destinée à être un nom de fichier la non- présence du caractère nul (0) ou d’une de ses représentations encodées (%00 au format URL). RSEC-DEV-19 Échapper les données qui permettent de valoriser une requête SQL lorsqu’elles sont fournies par l’utilisateur, par une application ou un service externe, ou même par des fonctions internes à l’application qui potentiellement manipulent des données initialement fournies par un utilisateur. RSEC-DEV-20 Échapper les caractères spéciaux et encoder au format URL les données provenant initialement d’un utilisateur ou des valeurs obtenues à partir du système d’information, avant de les envoyer à l’utilisateur final. RSEC-DEV-23 Limiter, lorsque c’est possible, la longueur des chaînes de caractères issues de données étrangères (champ de saisie libre dans un formulaire, valeur d’un paramètre transmis dans une URL…).
  • 37. Extrait des en-têtes de règles de la Charte Sécurité Applicative (3/3) RSEC-DEV-26 Ne pas afficher les messages d’erreurs « internes » à l’application dans le navigateur client. RSEC-DEV-31 Ne pas afficher d’informations critiques inutilement. RSEC-DEV-33 Toujours demander à l’utilisateur de se ré-authentifier avant une action critique. RSEC-DEV-34 Régénérer l’identifiant de session après authentification afin de se protéger de la fixation de session. RSEC-DEV-36 Vérifier que l’utilisateur a le droit d’accéder à une page ou à une ressource (ex : fichier à downloader) avant de lui fournir la ressource RSEC-ENV-1 Installer régulièrement les derniers patchs de sécurité sur les logiciels qui appartiennent à l’environnement d’exécution.