0% ont trouvé ce document utile (0 vote)
31 vues5 pages

Bonne Pratique

Good practice for security of application

Transféré par

Charles Andréa
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
31 vues5 pages

Bonne Pratique

Good practice for security of application

Transféré par

Charles Andréa
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Fiche de lecture : Bonnes pratiques de développement

sécurisé

Rakotoarimalala Tsinjo Tony

Juillet 2025

Objectif
Cette che synthétise les pratiques essentielles pour écrire du code sécurisé dans le cadre du
développement d'applications web ou logicielles. Elle complète les notions théoriques vues en
cours, et fournit une base applicable dans les projets réels.
1 Validation et ltrage des entrées
 Ne jamais faire conance aux entrées utilisateur.
 Valider les types, formats et longueurs attendues (emails, dates, entiers...).
 Préférer les listes blanches (valeurs autorisées) plutôt que listes noires.
 Valider côté client pour l'expérience, mais toujours côté serveur pour la sécurité.
2 Gestion des sorties
 Toujours encoder les données avant achage dans une page HTML, JavaScript ou SQL.
1. SQL Encode

2. HTML Encode

1
3. Javascript Encode

4. URL Encode

 Utiliser les fonctions d'échappement spéciques au contexte : HTML, URL, SQL, JSON,
etc.
 Contre les attaques XSS : encoder les sorties, activer une Content Security Policy
(CSP).

2
3 Requêtes et accès aux bases de données
 Utiliser des requêtes préparées (prepared statements) ou ORM.
 Ne jamais concaténer directement des entrées dans des requêtes SQL.
 Séparer les droits en base de données (lecture seule, écriture, admin...).
4 Authentication et gestion des sessions
 Ne jamais stocker les mots de passe en clair : utiliser bcrypt, Argon2, etc.
 Implémenter une expiration de session et un renouvellement de token sécurisé (via JWT,..).
 Utiliser les attributs HttpOnly, Secure, SameSite pour les cookies.

3
 Limiter le nombre de tentatives de connexion (anti-brute-force).
5 Gestion des erreurs et des logs
 Ne jamais acher d'information technique à l'utilisateur (ex : stacktrace).
 Enregistrer les erreurs en interne (logs), mais sans données sensibles.
 Protéger les chiers de logs (accès restreint).
6 Utilisation des dépendances
 Ne jamais faire aveuglément conance aux librairies tierces.
 Maintenir les dépendances à jour (npm audit, pip-audit, etc.).
 Utiliser des outils d'analyse de vulnérabilités (SCA).
7 Déploiement sécurisé
 Ne pas exposer les chiers de conguration contenant des secrets.
 Ne jamais versionner les mots de passe ou clés API.
 Séparer les environnements (développement, test, production).
8 Sécurisation des APIs
Authentication et autorisation
 Utiliser OAuth2 ou JWT pour les utilisateurs.
 Protéger les endpoints avec des rôles (admin, user...).
 Ne pas exposer les API sans contrôle d'accès.
4
Validation des données
 Contrôler le type, le format et la taille des données reçues.
 Utiliser des schémas de validation (Pydantic, Marshmallow...).
Rate limiting et sécurité réseau
 Limiter le nombre de requêtes par IP.
 Protéger par rewall ou reverse proxy.
 Forcer l'utilisation de HTTPS.
Exposition minimale des données
 Ne jamais renvoyer de données internes ou de messages sensibles.
 Protéger les logs et désactiver les messages de debug en production.
Recommandation Consulter le OWASP API Security Top 10 pour suivre les menaces les plus
courantes.

Rappels clés
ˆ Moins de code = moins de surface d'attaque.
ˆ Appliquer le principe du moindre privilège.
ˆ Penser sécurité dès la conception (Security by Design).
ˆ Utiliser des outils d'analyse de code (linting, SAST).

Pour aller plus loin


 OWASP Top 10 : https://owasp.org/www-project-top-ten/
 Cheat Sheets OWASP : https://cheatsheetseries.owasp.org/
 The Secure Developer Podcast : https://www.devseccon.com/the-secure-developer

Un bon développeur pense fonctionnalité, un excellent pense sécurité.

Vous aimerez peut-être aussi