Rigorous development of secure architecture within the negative and positive statements : properties, models, analysis and tool support
Développement rigoureux des architectures sécurisées dans les visions négative et positive : propriétés, modèles, analyse et outils support
Résumé
Our society has become more dependent on software-intensive systems, such as Information and Communication Technologies (ICTs) systems, to perform their daily tasks (sometimes critical). However, in most cases, organizations and particularly small ones place limited value on information and its security. In the same time, achieving security in such systems is a difficult task because of the increasing complexity and connectivity in ICT development. In addition, security has impacts on many attributes such as openness, safety and usability. Thus, security becomes a very important aspect that should be considered in early phases of development. In this work, we propose an approach in order to secure ICT software architectures during their development by considering two visions to formulate security statements using the negative view, as the study of threats (e.g., usurpation) and positive view as the study of the security objectives (e.g., confidentiality). The contributions of this work are threefold: (1) an integrated design framework for the specification and analysis of reusable (formal) model libraries for secure software architectures; (2) a novel model-based methodology for developing secure software architecture by reuse; and (3) a set of supporting tools. The approach associates Model-Driven Engineering (MDE) and formal techniques to design a set of modeling languages for specifying and analyzing architecture and property models which allows reuse of capitalized security-related know-how. The results are provided as two complementary artifacts: (a) a process of development of reusable formal model libraries for the specification and verification of security threats and objectives by a security expert; and (b) a process of secure architectural design and analysis by an architect reusing the libraries specified in the process (a). Process (a) includes the following activities: (1) the formal specification of the security threats and objectives as the properties of a model using technology-independent specification language; (2) the interpretation of the resulted model libraries in a tooled formal language; and (3) the definition of security policies as abstract security countermeasures to ensure security properties. Process (b) includes the following activities: (1) security analysis of a concrete architecture model to verify the security requirements and identify security issues reusing the property models; [...]
Notre société est devenue plus dépendante des systèmes logiciels complexes, tels que les systèmes de technologies de l'information et de la communication (TIC), pour effectuer des tâches quotidiennes (parfois critiques). Cependant, dans la plupart des cas, les organisations et particulièrement les plus petites placent une valeur limitée sur les données et leur sécurité. Dans le même temps, la sécurité de ces systèmes est une tâche difficile en raison de la complexité et connectivité croissante dans le développement des TIC. De plus, la sécurité a une incidence sur de nombreux attributs tels que la transparence, la sureté et l'utilisabilité. Ainsi, la sécurité devient un aspect très important qui devrait être pris en compte dans les premières phases du cycle de développement. Dans ce travail, nous proposons une approche afin de sécuriser les architectures logicielles des TIC pendant leur développement en considérant la vision positive, qui se manifeste par l'étude des objectifs de sécurité (ex., confidentialité), et la vision négative, qui se manifeste par l'étude des menaces (ex., usurpation). Les contributions de ce travail sont triples : (1) un framework de conception intégré pour la spécification et l'analyse de bibliothèques de modèles (formels) réutilisables pour les architectures logicielles sécurisées ; (2) une nouvelle méthodologie basée sur les modèles pour développer une architecture logicielle sécurisée par réutilisation ; et (3) une suite d'outils support. L'approche associe l'ingénierie dirigée par les modèles (IDM) et les techniques formelles pour concevoir un ensemble de langages de modélisation afin de spécifier et analyser des modèles d'architecture et de propriétés permettant la réutilisation et ainsi capitaliser un savoir-faire en matière de sécurité. Les résultats sont fournis sous forme de deux artéfacts complémentaires : (a) un processus de développement de bibliothèques de modèles réutilisables pour la spécification et la vérification d'objectifs et de menaces de sécurité par un expert en sécurité ; et (b) un processus de conception d'architecture sécurisé par un architecte s'appuyant sur les bibliothèques spécifiées dans le processus (a). Le processus (a) comprend les activités suivantes : (1) la spécification formelle d'objectifs et de menaces de sécurité comme propriétés d'un modèle en utilisant un langage de spécification indépendant technologiquement ; (2) l'interprétation des bibliothèques de modèles résultants dans un langage formel outillé ; et (3) la définition de politiques de sécurité en tant que solutions abstraites de sécurité pour assurer les propriétés de sécurité. Le processus (b) comprend les activités suivantes : (1) l'analyse d'un modèle d'architecture concret afin de vérifier les exigences et d'identifier les problèmes de sécurité en réutilisant les modèles de propriétés[...]
Origine | Version validée par le jury (STAR) |
---|