Alors que la communauté de développement d’applications se concentre sur la création d’applications plus sécurisées contre les cyberrisques courants menaçant les organisations , les parties prenantes de la sécurité des applications doivent trouver les ressources qui les aideront à apprendre les bases, à acquérir certaines meilleures pratiques ou à valider les connaissances existantes en matière de développement de la sécurité des applications.
Dans cet article de blog, nous présenterons les principales ressources de sécurité des applications que les développeurs et divers acteurs de la sécurité logicielle peuvent utiliser pour les aider à développer des applications plus sécurisées pour les organisations.
Bases de la sécurité des applications
Que devrait savoir chaque programmeur sur la sécurité ?
Les réponses à cette question publiées sur Stack Overflow vous donneront une bonne liste des principes de sécurité clés, dont certains incluent des liens pour plus de détails. Parmi ces principes de sécurité figurent « ne jamais faire confiance à aucune entrée », « échouer en toute sécurité », « utiliser la défense en profondeur » et « adhérer au principe du moindre privilège ».
Sécurité et identité – Google Developers
Cet article sur le site Web Fundamentals de Google Developers vous apprend à mettre en œuvre HTTPS et une politique de sécurité du contenu (CSP). Vous découvrirez également comment détecter les attaques sur votre site Web et comment les atténuer.
Les bases de la sécurité des applications Web
Les bases de la sécurité Web sont une partie importante de la création de toute application Web, mais elles ne sont pas toujours bien comprises. Cet article fournit huit considérations pour la conception d’applications Web, de la validation des entrées inattendues à la sécurisation des sessions utilisateur.
Principes de sécurité dès la conception – OWASP
L’Open Web Application Security Project (OWASP) est une communauté internationale qui crée des ressources pour aider les architectes et les fournisseurs de solutions à produire des applications sécurisées au stade de la conception. Cette ressource prend des principes de sécurité clés, les définit avec des exemples pour dix éléments différents, y compris « minimiser la surface d’attaque » et « échouer en toute sécurité ».
Écrire du code sécurisé
Ce livre écrit par les ingénieurs en sécurité de Microsoft Michael Howard et David LeBlanc est un incontournable dans le domaine du génie logiciel. Les auteurs couvrent la modélisation des menaces, la conception d’un processus efficace pour sécuriser le code, y compris les défis internationaux, les systèmes de fichiers, l’ajout de confidentialité aux applications, la réalisation d’examens du code de sécurité.
Principaux risques de sécurité à traiter
Top 10 des contrôles proactifs de l’OWASP
Alors que de nombreuses ressources se concentrent sur ce que vous ne devez PAS faire pour développer du code qui sera attaqué, voici une liste de ce que vous DEVEZ faire pour développer un code d’application sécurisé. Les risques de sécurité des applications incluent l’injection, l’authentification et la gestion de session interrompues, les scripts intersites (XSS), le contrôle d’accès interrompu, la mauvaise configuration de la sécurité et la fuite de données sensibles.
Le Top 10 de l’OWASP
Le Top 10 de l’OWASP est un excellent point de départ pour en savoir plus sur la sécurité des applications Web et peut également être utilisé comme document de sensibilisation standard pour améliorer la sécurité des applications. Il est également reconnu par les développeurs comme la première étape vers un codage plus sécurisé. Le Top 10 de l’OWASP est basé sur un large consensus de plus de 200 experts de diverses industries à travers le monde.
Le Top 10 des risques mobiles de l’OWASP
Le projet OWASP Mobile Security est une ressource centralisée permettant aux développeurs et aux équipes de sécurité d’obtenir les ressources dont ils ont besoin lors de la création et de la maintenance d’applications mobiles. Ce projet vise à fournir une classification des risques de sécurité mobile ainsi que des contrôles de développement pour aider à réduire l’impact ou la probabilité d’exploitation de ces risques.
Énumération des faiblesses communes (CWE)
L’énumération des faiblesses communes (CWE) de MITRE est une liste développée par la communauté des faiblesses courantes de la sécurité des logiciels, y compris plus de 700 faiblesses que vous pouvez découvrir par la recherche, le développement ou les concepts architecturaux. Cette ressource s’avérera également utile pour les développeurs qui souhaitent en savoir plus sur la liste des vulnérabilités et expositions communes (CVE) figurant dans la base de données nationale sur les vulnérabilités .
24 péchés capitaux de la sécurité logicielle
Ce livre traite des principales failles de sécurité identifiées dans le développement d’applicatifs. Son contenu couvre la liste OWASP Top 10 ainsi que plusieurs défauts courants qui ne font pas partie de la liste OWASP.
Cycle de vie du développement de codage sécurisé
Sécurité des applications agiles
Ce guide pratique présente plusieurs outils et techniques de sécurité conçus spécifiquement pour vous aider à apprendre et à intégrer le développement agile à votre méthodologie habituelle de développement logiciel, en introduisant les principes de sécurité aux praticiens de la sécurité et de l’agilité.
DevOpsSec
Quels outils et processus peuvent garantir la sécurité de votre code tout au long du cycle de développement DevOps et Agile ? Ce livre répond à la question en vous donnant une image claire et pratique de nombreuses chaînes et processus de cycle de vie sécurisés actuels et réels, tels que ceux utilisés par Etsy et Netflix.
Projet de révision du code OWASP
Ce projet vous apprend à rechercher des vulnérabilités pour améliorer vos chances de ne jamais les écrire dans votre code en premier lieu, soulignant à quel point les revues de code sont une étape importante pour détecter les vulnérabilités de sécurité au début du processus de développement.
Processus de modélisation des menaces de sécurité
Modélisation des menaces pour les applications
Cette ressource, traitant des acteurs de la menace, des attaquants passifs, des utilisateurs locaux et des serveurs locaux, vise à vous aider à définir un modèle de menace à travers les différents types d’attaquants auxquels votre application peut être confrontée – dans le but global de vous apporter de la valeur.
Modélisation des menaces applicatives OWASP
Dans cette ressource technique complète, l’OWASP analyse les trois étapes clés du processus de modélisation des menaces, depuis la décomposition de votre application, la détermination et le classement des menaces jusqu’à la détermination des mesures d’atténuation. L’aide -mémoire sur la modélisation des menaces OWASP fournit des conseils pour créer des modèles de menace pour les systèmes ou applications existants et nouveaux.
Modélisation des menaces pilotée par les développeurs
Cet article décrit les expériences pratiques de Dell EMC avec le processus de modélisation des menaces, à savoir ses principaux défis, les leçons apprises et la description de l’approche actuelle axée sur les développeurs de l’organisation. Il aborde également la modélisation des menaces comme l’approche la plus efficace pour trouver les failles de sécurité architecturales, à savoir l’échec de l’authentification ou de l’autorisation.
Comment j’ai appris à arrêter de m’inquiéter (surtout) et à aimer mon modèle de menace
Dans cet article, le rédacteur en chef de la sécurité, Sean Gallagher, décrit la modélisation des menaces comme un moyen d’examiner les risques pour identifier les menaces les plus probables à la sécurité de votre application ou les plus grands risques de sécurité pour votre logiciel. Il objecte également que les principaux risques spécifiques à votre application peuvent être différents de la liste OWASP Top 10.
Programmation de sécurité défensive
Le guide de codage sécurisé
Bien qu’Apple cible cette ressource sur les développeurs iOS et macOS, de nombreuses informations et conseils sont universels. Certaines des sections traitent de l’élévation des privilèges en toute sécurité, de l’évitement des vulnérabilités de sécurité courantes, de la conception d’interfaces utilisateur sécurisées et de l’écriture d’assistants et de démons sécurisés.
Bien qu’elle soit destinée aux développeurs iOS et macOS, cette ressource fournit une approche générique des types de vulnérabilités de sécurité les plus identifiées dans les applications, ainsi que des listes de contrôle pour le développement de la sécurité logicielle.
Le guide de codage défensif
Ce guide technique de programmation défensive, de Red Hat, comprend des exemples en C, C++, Java, Python, Shell/Bash, Go et Vala, ainsi que des didacticiels pour huit tâches de programmation et des instructions mettant en œuvre des fonctions de sécurité, à savoir l’authentification et l’autorisation, Transport Layer Security (TLS), modules de sécurité matériels et cartes à puce.
Programmation défensive
Ce blog propose une introduction à la programmation défensive, son historique terminologique, les désaccords quant à sa définition tout en fournissant un exemple archétypal de la programmation défensive qui a lieu dans la plupart des programmes C et en discutant des défis de la programmation défensive.
Formation et cours de sécurité de base
Normes de codage SEI CERT
Ce wiki du Software Engineering Institute (SEI) de l’Université Carnegie Mellon répertorie les règles et recommandations reflétant les réflexions actuelles de la communauté de la sécurité logicielle, ainsi que ses 10 meilleures pratiques de codage sécurisé .
SANS
Ce site du SANS Institute fournit des ressources gratuites pour les développeurs et de nombreux cours de formation payants, y compris la formation de sensibilisation à la sécurité des applications Web , conçus pour aider les développeurs à créer une culture de sensibilisation à la sécurité.
Formation à la sécurité ouverte – Introduction au codage sécurisé
Dans ce site Web open source sous licence Creative Commons proposant des cours d’une journée sur divers sujets de sécurité informatique, vous trouverez une introduction sur les stratégies de codage sécurisé et une formation d’introduction sur d’autres sujets tels que l’évaluation des vulnérabilités, les révisions de code sécurisé, la cryptographie et exploits logiciels.
SAFECode
SAFECode propose une multitude de ressources de sécurité, à savoir des formations en ligne gratuites et son document Fundamental Practices for Secure Software Development , mais également un guide de modélisation des menaces tactiques , des directives de développement sécurisé et un blog . Le cycle de vie du développement de la sécurité, le renforcement du système, le développement cloud sécurisé et d’autres sujets font partie des sujets couverts par les modules de formation.
Cybraire
En tant que plate-forme open source et participative pour la formation à la sécurité et la préparation à la certification, cette ressource propose également des laboratoires virtuels et d’autres ressources pour votre préparation à de nombreux programmes de certification de sécurité, notamment CompTIA, CISA, CISM, CISSP, HIPAA et PCI/DSS.
Sécurité des systèmes informatiques – MIT Open Courseware
Semblable aux cours proposés par Harvard edX , Stanford Online et Coursera , ce cours universitaire du MIT est l’un des meilleurs moyens d’acquérir une base en matière de sécurité des applications. Ce cours ouvert couvre, entre autres aspects, les modèles de menace, les exploits courants, la sécurité du réseau, l’authentification, la sécurité mobile et l’économie de la sécurité.
Emballer
Une augmentation sans précédent des cyberattaques au cours des dernières années a fait de la sécurité des applications une préoccupation majeure pour les organisations, les développeurs et les spécialistes de la sécurité. Le succès de ce voyage continu repose sur un effort collectif de toute la communauté de la sécurité des applications, des organisations de sensibilisation à la sécurité et des développeurs Web aux professionnels de la cybersécurité. Et seule une approche holistique et multiforme de la sécurité des applications dans son contexte plus large d’accès des utilisateurs via la sécurité du réseau , la sécurité du cloud et la sécurité de l’IoT pourrait être l’approche la plus efficace pour tenir les attaquants malveillants à distance.
Contactez-nous si vous avez besoin d’aide pour votre projet de test d’intrusionapplication web.