Activities of Security Engineering in System Development Life Cycle: Security Engineer s View
|
|
|
- Samuel Bond
- 10 years ago
- Views:
Transcription
1 Activities of Security Engineering in System Development Life Cycle: Security Engineer s View YOUNG-GAB KIM Department of Computer and Information Security Sejong University 209, Neungdong-ro, Gwangjin-gu, Seoul , Korea KOREA [email protected] Abstract: - The software engineering is a fundamental component to produce information systems and related software components. However, the traditional software engineering is not adequate and effective for developing secure information systems because, in the field of software engineering, security concerns are treated as of secondary importance. Therefore, in order to treat security features in development of secure information systems, many security engineering technologies have been proposed. However, most of the researches are focused on isolated, inconsistent software engineering-based or risk analysis-based technologies. Moreover, the existing security engineering methodologies, in practice, does not integrated smoothly with the other engineering disciplines (e.g., software engineering, system engineering). In this paper, we propose holistic, consistent, and integrated security engineering methodology, especially focused on security-related activities in all phase of software development life cycle (SDLC), which provide a way to support design, coding, testing, and maintenance for consistent security management. The proposed security engineering methodology combines security risk control, enterprise security architecture (ESA), and security management as an integrated framework. Key-Words: - security engineering, enterprise information system (EIS), enterprise security architecture (ESA), security risk analysis, security management 1 Introduction Recently, many forms of security attacks against enterprise information systems (EISs) has emerged that attempt to compromise the EISs and organizations. Therefore, managing the security of EISs has become a critical issue. Even though the software engineering discipline provides principles, methodologies, and tools for the development of information systems, it is not adequate and effective for designing, developing, and maintaining secure software systems [1]. The main reasons are as follows: 1) In many cases, security features in the field of software engineering are treated as of secondary importance, and this neglect results in the system engineer developing buggy code with weak security measures [2]. 2) Software engineering does not support a holistic and integrated approach to control security features [3, 4]. In the traditional software engineering environment, security-related activities (or safeguards) are temporally and inconsistently conducted. In addition, in order to develop secure EISs, the roles of the stakeholders are very important. However, most system engineers, especially software engineers, have no security-relevant knowledge about such issues as security risk analysis, and security mechanisms and services. They also do not consider security as a functional requirement because processes for managing system development life cycles prioritize functional requirements (e.g., specific behaviors of a system) over nonfunctional requirements (e.g., security, performance, reliability, and usability) [5]. Similarly, most security engineers do not have the systemsengineering background required to approach a security problem holistically [6]. Furthermore, they often do not consider the entire vulnerabilities that exist in information systems and outside threats in their entirety, focusing instead on particular defensive strategies and ignoring serious gaps in security architectures [7]. Besides, many large organizations, in many cases, adopt security solutions in the face of security attacks. However, these solutions are focused mainly on how to defend their systems against various inside and outside threats rather than on overcoming the causes of the security issues in the information systems [8]. ISBN:
2 In this paper, in order to develop secure EISs, we propose a holistic, consistent, and integrated security engineering approach especially for security engineers. The main contributions of this paper are as follows: 1) The definition of the security engineering is defined as an engineering that focuses on the security aspect, especially from security engineer s view, in the software development life cycle (SDLC). 2) A layered security engineering model, which is composed of three important components: security management, enterprise security architecture (ESA), and security mechanism and services, is proposed. 3) The activities of security engineering in the SDLC and its tasks are proposed. The proposed security engineering methodology involves the repeatable and systematic procedures in an effort to ensure that the security activities in SDLC are complete, consistent and easy to understand and analyzable by the security engineers. The rest of the paper is organized as follows. We review related work in Section 2 with focus on existing approaches to security engineering. In Section 3, we explain our layered security engineering model and the activities of security engineering in the SDLC. In Section 4, we compare the exisitng approaches and the propsed method. Finally, Section 5 concludes the paper and suggests future work. 2 Related Works 2.1 Definition of Security Engineering Security Engineering terminology becomes frequently used in computer engineering, software engineering, and web engineering community. However, meaning of the terminology is so diverse that it causes confusion based on user s context, viewpoint and background [9]. Howe [10] firstly defined the system security engineering as an empirically based methodology for composing and evaluating systems within a structure of standards and which encompasses operation as well as planning design implementation and operation. Vaughn et al. [11] and Jei et al. [9] defined the security engineering as an instance of software engineering. Vaughn et al. described that security engineering is the same approach as systems and software engineering. Jei et al. defined the security engineering as a set of methodologies and technologies for fast and cheap development and operation of high quality security systems by means of applying cryptology, information security technology and software engineering. Anderson [12] who one of the pioneers of security engineering defined that security engineering is a field of engineering that deal with building secure systems that will remain dependable in the face of malice, error, or mischance. It focuses on the tools, processes, and methods needed to design, implement, and test complete systems, and to adapt existing systems as their environment evolves. More diverse definition of security engineering can be found in [9]. In this paper, security engineering is defined as a field of engineering that focuses on the security aspect, especially from security engineer s view, in the SDLC. It is a consistent and integrated security engineering approach that covers all phases of development processes (i.e., requirement analysis, design, coding, testing, deployment, and maintenance). The security engineering defined in this paper involves aspects of information security (e.g., cryptography, security mechanisms & services, security policies, conventional information security technologies) and software engineering (e.g., SDLC, architecture technologies). 2.2 Related Works There have been numerous approaches to provide security engineering. Most of the approaches belong to the following categories: security-related standard, software engineering-based, security requirement engineering-based, and risk analysis-based approaches Standards Related to Security Engineering There are several international standards [13-19] related to security engineering: SSE-CMM (Systems Security Engineering Capability Maturity Model, ISO/IEC 21817) [13, 14] is a process model that describes the essential systems security processes and management tasks that any organization must perform. This model provides high-level and security risk analysis-based activities. Furthermore it is focused on the requirements for implementing security in software systems or related systems components. ISO/IEC [15] is a common criterion (CC) for evaluating the security of information system or software, entitled Information Technology Security Techniques Evaluation Criteria for IT Security. It defines two security requirements: security functional requirements (SFR) [16] and security assurance requirements (SAR) [17]. Its purpose is to allow users to specify security ISBN:
3 requirements, developers to specify the security attributes of their products, and evaluators to determine whether products actually meet their claims. ISO/IEC [ISO/IEC :2004 Information technology -- Security techniques -- Management of information and communications technology security] is a guidance on the management of IT security, entitled Information Technology Guidelines for the Management of IT Security (GMITS). It presents the concepts and models fundamental to a basic understanding of IT security, and addresses the general management issues that are essential to the successful planning, implementation and operation of IT security. ISO/IEC [ISO/IEC 27001:2013 Information technology -- Security techniques -- Information security management systems -- Requirements] is an information security standard, entitled Information Technology Security Techniques Information Security Management Systems - Requirements. It specifies the requirements for establishing, implementing, maintaining and continually improving an information security management system within the context of the organization. It also includes requirements for the assessment and treatment of information security risks tailored to the needs of the organization. ISO/IEC [18] is an information security standard, entitled Information Technology Security Techniques Code of Practice for Information Security Management. It provides a best practice guide to information security controls. It has established guidelines and general principles for initiating, implementing, and improving information security management with an organization. ISO/IEC [19], entitled Systems and Software Engineering -- Systems and Software Assurance -- Part 3: System Integrity Levels, defines a process for establishment of integrity levels. It provides a risk analysis and development approaches as a part of the process. However, these standards are complex, and it is hard to understand and implement them. Furthermore, they do not explain how to implement each security control successfully within all states of the SDLC [20] Software Engineering-based Approaches CLASP (Comprehensive, Lightweight Application Security Process) [21, 22] is a framework whose purpose is to provide an approach for locating security concerns in the early stages of the software development lifecycle. It actually consists of a set of process activities that can be integrated into any software development process. It also provides an extensive wealth of security resources that make implementing these activities reasonable. Jurjens [23] proposed an approach to support model-based security engineering using UML (Unified Modeling Language) by providing tool-support for the analysis of UML models (i.e., UMLsec models) for security requirements. This approach utilizes the automated theorem-prover (ATP) SETHEO to verify the security properties of the UMLsec model, which make use of cryptography such as cryptographic protocols. Cheng et al. [24, 25] proposed an information security engineering environment (ISEE) based on ISO/IEC information security standards. ISEE integrates various tools and functions for supporting continuous and consistent design, development, and management of the security facilities of information systems with high security requirements. McGraw [26, 27] proposed building security in SDLC, detailed approach for putting software security into practices. This approach provides guidance on how to build secure software and show gaps in the development process and to how to improve the process Security Analysis-based Approaches Several other studies [7, 8, 28-34] have focused on security requirements engineering or risk analysis as an early activity of software development. Nunes et al. [28] proposed a security engineering approach, named PSSS (Process to Support Software Security), based on the activities derived from SSE-CMM, ISO/IEC 15408, ISO/IEC 27002, and OCTAVE (Operationally Critical Threat, Asset, and Vulnerability Evaluation) [29, 30]. PSSS includes security activities such as software-based vulnerability, threat, and impact and risk assessments, which also contribute to information security strategic goals. Evans et al. [7] introduced the mission-oriented risk and design analysis (Morda) developed by the US National Security Agency. The Morda helps system security engineers develop reasonable design strategies to build secure systems by supporting a framework for analyzing complex ISs risk postures. Wang et al. [8] proposed a process of security requirements that consists of nine steps and deals with the security requirements in the early stages of system design. They used a systematic approach to integrate software engineering process into develop security requirements. Mead et al. [31, 32] developed the security quality requirements engineering (SQUARE) methodology. SQUARE methodology provides a means for extracting, categorizing, and prioritizing security requirements for information systems and applications. It helps system engineers integrate security considerations ISBN:
4 into the early stages of the software development lifecycle. Charles et al. [33] proposed a framework for security requirements representation and analysis. They defined what security requirements are, and presented a structure for satisfaction arguments for validating whether the system can satisfy the security requirements. Schmidt [34] proposed a threat and risk-driven methodology to security requirement engineering. This methodology extends the security engineering process using patterns (SEPP) [35] by a threat and risk-driven procedure to select adequate security mechanisms. However, most of these approaches do not focus specifically on the combination of risk analysis and software engineering disciplines. 3 Proposed Activities in SDLC The main goal of the security engineering proposed in this paper is to provide integrated procedures for analyzing, designing, developing, testing, and maintaining secure EISs. In the current security engineering (or software engineering) environment, security-related activities are isolated, temporal, and inconsistent. However, in the proposed environment, these activities are integrated together and provide a holistic and consistent security management. Therefore, we can obtain maximum security strength of information systems from the proposed approach. Fig.1 illustrates the basic concept of a layered security engineering model, which is composed of three important components: security management, ESA, and security mechanism and services Security management describes the specific needs for managing security risk, including the security policy, as the logical model of organization s business requirements for security and risk. The results of a security risk assessment, the risk assessment report, are also used to manage security risk mitigations (e.g., security mechanism, security service, and potential safeguards). ESA is a main component of security engineering for implementing secure EISs. It provides the contextual, conceptual, logical, physical, component, and operational security of security-related policies, mechanisms, and procedures to give shape to a security management. The ESA proposed in this paper is expanded from the layered security architectures derived from SABSA (Sherwood Applied Business Security Architecture) [36] methodology. Security Mechanisms & Services describes the detailed security technology for making concise ESA to provide the confidentiality, integrity, and availability of an organization s information. Generally, security services are implemented as the objectives of security solutions. However, the compatibility and interoperability of security solutions are not guaranteed. That is, they do not provide holistic and integrated strategies. This paper proposes a way to map these security services into an ESA. The layered security engineering model can be mapped into the activities of security engineering in Fig. 1 Layered Security Engineering Model: Security Engineer s View ISBN:
5 the SDLC as illustrated in Fig. 3. Each securityrelated activity is connected with other activities to support consistent security management. Furthermore, these activities are repeatedly performed throughout the iterative and incremental SDLC, but with different emphasis depending on where the activity is situated with the SDLC, and each activity will generate releases of various artifacts. A more detailed description about security activities in the SDLC will be presented in the following subsections. 3.1 Activities in the Requirement Analysis Phase The proposed security engineering approach consists of several security-related activities that form a process to support the development of a more secure information system. The activity begins with security risk analysis (i.e., asset, threat, and vulnerability analysis) in the requirement analysis phase of SDLC. The main goal of the security risk analysis is to identify potential security problems and their impact. From the security risk analysis, the types of assets, threats, and vulnerabilities are identified and analyzed. The analysis includes what kinds of threats and vulnerabilities exist for a specific asset and the probabilities of threats that will occur. The security risk analysis enables us to develop secure information management and establish practical security policies for organization. In addition, it provides valuable analysis data for future risk estimation. Therefore, once the security risk analysis has been conducted, the security management in the maintenance phase can use various risk mitigation techniques to complete the process [5]. Simultaneously, security requirement analysis, which defines the required security properties, which the enterprise information systems should be satisfied, is conducted. The security requirement analysis is one of the critical parts of development process, which affect secure system development during all phase in SDLC. That is, understanding security requirements is a prerequisite to designing a secure EIS. If missing security requirements, security defects in system design will make untrusted test results. In order to make easy the treatment and specification of the security risk analysis and security requirements, several concepts and tools such as UMLSec [37], misuse cases [38], threat scenario [5], threat/attack trees [39], and security resources repository can be used. The result of security risk analysis and the security requirements play a role in the design of an ESA. 3.2 Activities in the Design Phase The system design should be constructed from the report of risk analysis and the verified security requirements. First, in the design phase of SDLC, the output of three activities (i.e., threat, asset, and vulnerability analysis) is used to estimate security risk though risk assessment activity, and then Fig. 2 Overview of the Proposed Security-Related Activities and Relationship in SDLC ISBN:
6 suitable risk mitigations (e.g., security mechanism, security service, and potential safeguards) are selected and implemented. In risk assessment, security risk of organization or systems is evaluated by summing up all the risks of the systems components considering the existing threats in the core assets of the organization and the degree of vulnerability per threat [40]. Next, the ESA, which is composed of the sixlayered security architecture, is implemented. As mentioned earlier, the ESA proposed in this paper is based on the SABSA, and it gives a six by six matrix of cells, which represents the whole model for the enterprise security architecture. Each security architecture (SA) represents the view of a different stakeholder (e.g., architect, designer, and developer etc.) in the process of specifying, designing, and constructing. To implement secure information systems, correct design (i.e., ESA) is required. By asking these questions, we can make each SA that meet security requirements verified in the requirement analysis phase. The basic idea of SA modeling is to start with an abstract architecture (i.e., Contextual SA) of the EIS under development while more detailed architectures are built by refining the initial architecture. Finally, in order to find vulnerabilities in the ESA design, an ESA review activity is iteratively conducted. 3.3 Activities in the Coding Phase In the coding phase, the selected safeguards, including the security mechanisms and services in the previous phase, are implemented, and the code for security issues is thoroughly reviewed in terms of whether it contains security vulnerabilities. In order to securely implement the safeguards and security services, software developer should avoid common programming errors (e.g., buffer overflows) by following secure coding method. There are many resources available [41-44] software developers can incorporate security into their code more securely. In code review activity, the code review is thoroughly performed by another programmer from a separate team to make sure all security requirements have been satisfied. 3.4 Activities in the Testing Phase In the testing phase, the implemented safeguards and the enterprise information system are tested by both risk-based white- and black-box testing in terms of whether there are bugs at the implementation phase, or whether the EIS meets the security requirements based on the security risk analysis report. The risk-based white-box testing (also known as transparent testing) refers to analyze the safeguards and the program modules (or the information systems) at the level of the source code. It examines the internal logic and structure of the code and finds out which codes are behaving inappropriately. Optimization of the source code by revealing hidden errors is able to remove possible vulnerabilities. On the other hand, the risk-based black-box testing refers to analyze a running the safeguards and the information systems by probing it with various test cases which are derived from the security requirements and the output of risk analysis. This kind of testing doesn t require any knowledge of the internal structure or coding in the program. Besides both white- and black-box testing, in order to assure the security of information systems and its services, a penetration testing is required. The penetration testing is about to verify the absence of insecure functionality (e.g., security threats and vulnerabilities), so that security weaknesses can be fixed before they arise. It evaluates computer and network security by simulating an attack on a computer system or network from internal and external threats. The process involves an active analysis of the system for any potential vulnerabilities that could result from poor or improper system configuration, both known and unknown hardware, or software flaws, or operational weaknesses in process or technical countermeasures. This analysis is carried out from the position of a potential attacker and can involve active exploitation of security vulnerabilities. 3.5 Activities in the Management Phase The deployment phase constitutes the process that installs the system and makes it operational in the production environment. This phase can be one of the most critical in SDLC since the production environments and considerations for integration issues can sometimes be ignored. For example, sometimes the system runs differently in the production environment even though it has been validated and verified in the test phase. That is, when complex subsystems or large systems are integrated together, we need to ensure that the system is secure. To achieve this, a security deployment review based on the security requirements is conducted in the deployment phase. 3.6 Activities in the Deployment Phase ISBN:
7 The goal of security management is to identify, evaluate, and manage key security risks that impact an organization s stability and thus its ability to achieve its objectives and strategies. It is a continuous process of establishing risk management objectives, assessing risks within the context of established tolerances, developing strategies and implementing risk management processes, and monitoring and reporting upon those processes. In the maintenance phase, the risk assessment report, which is the summary and conclusions of the risk analysis, is utilized to manage the residential and potential security vulnerabilities in EISs. Furthermore, an ESA review activity is conducted. 4 Conclusion Nowadays, security in the EISs plays an important role for successful business. In order to implement security features to EISs, many approaches for the security engineering have been proposed. However, most of the research studies on the development of secure information systems are focused on isolated, inconsistent software engineering-based or risk analysis-based technologies. Therefore, in order to provide a holistic and consistent security management in all phases of SDLC, the new concept of security engineering methodology is presented. The security engineering methodology proposed in this paper covers the entire enterprise securityrelated activities especially from security engineer s perspective for developing secure enterprise information systems. It combines security risk control, ESA, and security management as an integrated framework. Moreover, the security mechanisms and services are designed, implemented, and supported as an essential part of the enterprise information systems. In addition, the securityrelated activities provide a way to support design, coding, testing, and maintenance for consistent security management so that security engineer can understand and manage security features more easily in SDLC. In this paper, we proposed a new security engineering methodology for the development of secure EISs, especially focused on the security-related activities. In future work, we aim to propose the detailed artifacts in each activity of security engineering methodology, and tool support for automated security management in SDLC. Acknowledgements References: [1] Cheng, J.C., Goto, Y., Horie, D., Kasahara, T. and Iqbal A., Development of ISEE: An Information Security Engineering Environment, In Proc. of IEEE International Symposium on Parallel and Distributed Processing with Applications, pp , 2009 [2] Mead, N.R. and Hough E.D., Security Requirements Engineering for Software Systems: Case Studies in Support of Software Engineering Education, In Proc. of the 19th Conference on Software Engineering Educations & Training (CSEET 06), 2006 [3] Pavlovic, D., The Unreasonable Ineffectiveness of Security Engineering: An Overview, In Proc. of 2010 Software Engineering and Formal Methods, pp.12-18, 2010 [4] Kim, Y.-G. and Cha, S., Security Engineering Methodology for Developing Secure Enterprise Information Systems: An Overview, Lecture Notes in Electrical Engineering (LNEE), Vol.181, Springer-Verlag, pp. 393~400, 2012 [5] Kim, Y.-G. and Cha, S., Threat Scenariobased Security Risk Analysis using Use Case Modeling in Information Systems, Security and Communication Networks, 5(3), pp , 2012 [6] Bayuk, J.L, Systems Security Engineering, IEEE Security & Privacy, pp.72-74, 2011 [7] Evans, S., Heinbuch, D., Kyle, El, Piorkowski, J. and Wallner, J., Risk-Based Systems Security Engineering: Stopping Attacks with Intention, IEEE Security & Privacy, 2004 [8] Wang, H., Jia, Z. and Shen, Z., Research on Security Requirements Engineering Process, In Proc. of 16th International Conference on Industrial Engineering and Engineering Management (IE&EM 09), Jiaozuo, China, pp , 2009 [9] Jei, Y.-H., Bae, I.-W., Choi, U.-J., and Lee, G.- S., An Information Security Engineering Paradigm for Overcoming Information Security Crisis, In Proc. Of International Conference on Hibrid Information Technology (ICHIT 06), 2006 [10] Howe, D., Information System Security Engineering: Cornerstone to the Future, In Proc. of the 15th National Computer Security Conference, Baltimore, MD, Vol.1 Oct. 15, 1992, pp [11] Vaughn, R. B., Henning, R., Fox, K., An Empirical Study of Industrial Security- ISBN:
8 Engineering Practices, The Journal of Systems and Software, 61, Elsevier, 2002, pp [12] Anderson, R., Security Engineering A Guide to Building Dependable Distributed Systems, Second Edition, Wiley Publishing, Inc., 2008 [13] International Organization for Standardization (ISO), Information Technology-Systems Security Engineering-Capability maturity Model (SSE-CMM), ISO/IEC 21827:2008 [14] Carnegie Mellon University (CMU), [15] International Organization for Standardization (ISO), Information Technology-Security Techniques-Evaluation Criteria for IT Security Part 1: Introduction and General Model, ISO/IEC , 2008 [16] International Organization for Standardization (ISO), Information Technology-Security Techniques-Evaluation Criteria for IT Security Part 2: Security Functional Requirements, ISO/IEC , 2008 [17] International Organization for Standardization (ISO), Information Technology-Security Techniques-Evaluation Criteria for IT Security Part 3: Security Assurance Requirements, ISO/IEC , 2008 [18] International Organization for Standardization (ISO), Information Technology, Security Technical Code of Practice for Information Security Managements, ISO/IEC 27002, 2005 [19] International Organization for Standardization (ISO), Systems and software engineering -- Systems and software assurance -- Part 3: System integrity levels, ISO/IEC , 2011 [20] Daniel Melladoa, Eduardo Fernández-Medinab, and Mario Piattinib, "A common criteria based security requirements engineering process for the development of secure information systems", Computer Standards & Interfaces, 29(2), pp , 2007 [21] Secure Software, The CLASP Application Security Process, Secure Software Inc., 2005 [22] The Open Web Application Security Project (OWASP), OWASP CLASP Project, WASP_CLASP_Project, 2013 [23] Jurjens, J., Sound Methods and Effective Tools for Model-based Security Engineering with UML, In Proc. of the 27th International Conference on Software Engineering (ICSE 05), St. Louis, MO, USA, pp , 2005 [24] Cheng, J., Goto, Y., Morimoto, S. and Horie, D., A Security Engineering Environment Based on ISO/IEC Standards: Providing Standard, Formal, and Consistent Supports for Design, Development, Operation, and Maintenance of Secure Information Systems, In Proc. Of 2008 International Conference on Information Security and Assurance, pp , 2008 [25] Horie, D., Goto, Y. and Cheng, J., Development of ISEE: An Information Security Engineering Environment, In Proc. Of 2009 Second International Symposium on Electronic Commerce and Security, pp , 2009 [26] McGraw, G., Software Security Building Security in, Addison-Wesley, Person, 2006 [27] McGraw, G., A Portal for Software Security, IEEE Security & Privacy, 3(4), 2005, pp [28] Nunes, F.J.B., Belchior, A.D. and Albuquerque, A.B., Security Engineering Approach to Support Software Security, In Proc. of 2010 IEEE 5th World Congress on Services, pp.48-55, 2010 [29] Alberts, C. and Dorofee, A., Octave- The Operationally Critical Threat, Asset, and Vulnerability Evaluation, Canegie Mellon University Software Engineering Institute [30] Alberts, C. and Dorofee, A., Managing Information Security Risks: The OCTAVE Approach, Addison-Wesley Professional, 2003 [31] Mead, N.R., Hough, E.D. and Stehney II, T.R., Security Quality Requirements (SQUARE) Methodology, Technical Report (CMU/SEI TR-009), Software Engineering Institute, Carnegie Mellon University, Pittsburgh, PA, 2005 [32] Mead, N.R. and Stehney II, T.R., Security Quality Requirements Engineering (SQUARE) Methodology, In Proc. of Software Engineering for Secure Systems (SESS 05), St. Louis, MO, USA, 2005 [33] Charles B. Haley, Robin Laney, Jonathan D. Moffett, Security Requirements Engineering: A Framework for Representation and Analysis, IEEE Transactions on Software Engineering, 34(1), 2008, pp [34] Schmidt, H., Threat- and Risk-Analysis during Early Security Requirements Engineering, In Proc. of 2010 International Conference on Availability, Reliability and Security (ARES 10), pp , 2010 [35] Hatebur, D., Heisel, M and Schmidt, H., A Security Engineering Process based on Patterns, In Proc. of the International ISBN:
9 Workshop on Secure Systems Methodologies using Patterns (SPatterns), pp , 2007 [36] Sherwood, J., Clark, A. and Lynas, D., Enterprise Security Architecture-A Business-Driven Approach, CMP Books, 2005 [37] Jan Jürjens, "UMLsec: Extending UML for Secure Systems Development", Lecture Notes in Computer Science, 2460, pp , 2002 [38] Ian Alexander, "Misuse cases: use cases with hostile intent", IEEE Software, 20(1), pp , 2003 [39] Meier JD, Kackman A, Wastell B. "How to Create a Threat Model for a Web Application at Design Time", Technical Report, Microsoft Corp.: Redmond, WA, [40] In, H.P., Kim, Y.-G., Lee, T., Moon, C.-J., Jung, Y., and Kim, I., A Security Risk Analysis Model for Information Systems, Lecture Notes in Artificial Intelligence, 3398, Springer-Verlag, pp , 2005 [41] Howard, M., and Leblanc, D., Writing Secure Code, Second Edition, Microsoft, 2002 [42] The Open Web Application Security Project (OWASP), OWASP Secure Coding Practices - Quick Reference Guide, 2010 [43] CERT, Secure Coding, [44] MSDN Security Developer Center, Security, Microsoft, 2013 ISBN:
Security Software Engineering: Do it the right way
Proceedings of the 6th WSEAS Int. Conf. on Software Engineering, Parallel and Distributed Systems, Corfu Island, Greece, February 16-19, 2007 19 Security Software Engineering: Do it the right way Ahmad
Developing Secure Software, assignment 1
Developing Secure Software, assignment 1 During development of software, faults and flaws are introduced either from the implementation or from the design of the software. During runtime these faults and
Cutting Edge Practices for Secure Software Engineering
Cutting Edge Practices for Secure Software Engineering Kanchan Hans Amity Institute of Information Technology Amity University, Noida, 201301, India [email protected] Abstract Security has become a high
Development Processes (Lecture outline)
Development*Process*for*Secure* So2ware Development Processes (Lecture outline) Emphasis on building secure software as opposed to building security software Major methodologies Microsoft's Security Development
A Study on the Secure Software Development Life Cycle for Common Criteria (CC) Certification
, pp. 131-142 http://dx.doi.org/10.14257/ijseia.2015.9.10.13 A Study on the Secure Software Development Life Cycle for Common Criteria (CC) Certification Min-gyu Lee 1, Hyo-jung Sohn 2, Baek-min Seong
Software Security Engineering: A Key Discipline for Project Managers
Software Security Engineering: A Key Discipline for Project Managers Julia H. Allen Software Engineering Institute (SEI) Email: [email protected] Sean Barnum Cigital Robert J. Ellison SEI Gary McGraw Cigital
An Integrated Quality Assurance Framework for Specifying Business Information Systems
An Integrated Quality Assurance Framework for Specifying Business Information Systems Frank Salger 1, Stefan Sauer 2, Gregor Engels 1,2 1 Capgemini sd&m AG, Carl-Wery-Str. 42, D-81739 München, Germany
PASTA Abstract. Process for Attack S imulation & Threat Assessment Abstract. VerSprite, LLC Copyright 2013
2013 PASTA Abstract Process for Attack S imulation & Threat Assessment Abstract VerSprite, LLC Copyright 2013 - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SecSDM: A Model for Integrating Security into the Software Development Life Cycle
SecSDM: A Model for Integrating Security into the Software Development Life Cycle Lynn Futcher, Rossouw von Solms Centre for Information Security Studies, Nelson Mandela Metropolitan University, Port Elizabeth,
A Security Approach in System Development Life Cycle
A Security Approach in System Development Life Cycle (1) P.Mahizharuvi, Research Scholar, Dept of MCA, Computer Center, Madurai Kamaraj University, Madurai. [email protected] (2) Dr.K.Alagarsamy,
Protect Your Organization With the Certification That Maps to a Master s-level Education in Software Assurance
Protect Your Organization With the Certification That Maps to a Master s-level Education in Software Assurance Sponsored by the U.S. Department of Homeland Security (DHS), the Software Engineering Institute
Building Security into the Software Life Cycle
Building Security into the Software Life Cycle A Business Case Marco M. Morana Senior Consultant Foundstone Professional Services, a Division of McAfee Outline» Glossary» What is at risk, what we do about
Build (develop) and document Acceptance Transition to production (installation) Operations and maintenance support (postinstallation)
It is a well-known fact in computer security that security problems are very often a direct result of software bugs. That leads security researches to pay lots of attention to software engineering. The
Towards Security Risk-oriented Misuse Cases
Towards Security Risk-oriented Misuse Cases Inam Soomro and Naved Ahmed Institute of Computer Science, University of Tartu J. Liivi 2, 50409 Tartu, Estonia {inam, naved}@ut.ee Abstract. Security has turn
A PRACTICAL APPROACH TO INCLUDE SECURITY IN SOFTWARE DEVELOPMENT
A PRACTICAL APPROACH TO INCLUDE SECURITY IN SOFTWARE DEVELOPMENT Chandramohan Muniraman, University of Houston-Victoria, [email protected] Meledath Damodaran, University of Houston-Victoria, [email protected]
A Survey on Requirements and Design Methods for Secure Software Development*
A Survey on Requirements and Design Methods for Secure Software Development* Muhammad Umair Ahmed Khan and Mohammad Zulkernine School of Computing Queen s University Kingston, Ontario, Canada K7L 3N6 {umair
Security-as-a-Service (Sec-aaS) Framework. Service Introduction
Security-as-a-Service (Sec-aaS) Framework Service Introduction Need of Information Security Program In current high-tech environment, we are getting more dependent on information systems. This dependency
Effective Software Security Management
Effective Software Security Management choosing the right drivers for applying application security Author: Dharmesh M Mehta [email protected] / [email protected] Table of Contents Abstract... 1
Threat scenario based security risk analysis using use case modeling in information systems
SECURITY AND COMMUNICATION NETWORKS Security Comm. Networks 2012; 5:293 300 Published online 7 April 2011 in Wiley Online Library (wileyonlinelibrary.com)..321 SPECIAL ISSUE PAPER Threat scenario based
Comparison of Secure Development Frameworks for Korean e- Government Systems
, pp.355-362 http://dx.doi.org/10.14257/ijsia.2014.8.1.33 Comparison of Secure Development Frameworks for Korean e- Government Systems Dongsu Seo School of Information Technology Sungshin University [email protected]
A Variability Viewpoint for Enterprise Software Systems
2012 Joint Working Conference on Software Architecture & 6th European Conference on Software Architecture A Variability Viewpoint for Enterprise Software Systems Matthias Galster University of Groningen,
How To Ensure Security In A System
Software Assurance vs. Security Compliance: Why is Compliance Not Enough? Carol Woody, Ph.D. Software Engineering Institute Carnegie Mellon University Pittsburgh, PA 15213 2012 Carnegie Mellon University
Architecture Centric Development in Software Product Lines
Architecture Centric Development in Software Product Lines Aurangzeb Khan DCE, College of E & ME National University of Science and Technology (NUST), Pakistan Farooque Azam DCE, College of E & ME National
SERENITY Pattern-based Software Development Life-Cycle
SERENITY Pattern-based Software Development Life-Cycle Francisco Sanchez-Cid, Antonio Maña Computer Science Department University of Malaga. Spain {cid, amg}@lcc.uma.es Abstract Most of current methodologies
Analyzing the Security Significance of System Requirements
Analyzing the Security Significance of System Requirements Donald G. Firesmith Software Engineering Institute [email protected] Abstract Safety and security are highly related concepts [1] [2] [3]. Both
Requirements Engineering for SaaS Application Security in Cloud Using SQUARE Methodology
Requirements Engineering for SaaS Application Security in Cloud Using SQUARE Methodology E. Pragnavi J. Sandeep Kumar Assistant Professor, Product Technical Lead, Dept. of CSE, UCE, Infosys, Hyderabad
Integrating Software Development Security Activities with Agile Methodologies
Integrating Software Development Activities with Agile Methodologies Hossein Keramati, Seyed-Hassan Mirian-Hosseinabadi Sharif University of Technology [email protected], [email protected]
Basic Testing Concepts and Terminology
T-76.5613 Software Testing and Quality Assurance Lecture 2, 13.9.2006 Basic Testing Concepts and Terminology Juha Itkonen SoberIT Contents Realities and principles of Testing terminology and basic concepts
SD Elements: A Tool for Secure Application Development Management
SD Elements: A Tool for Secure Application Development Management Golnaz Elahi 1, Tom Aratyn 2, Ramanan Sivaranjan 2, Rohit Sethi 2, and Eric Yu 3 1 Department of Computer Science, University of Toronto,
Towards Collaborative Requirements Engineering Tool for ERP product customization
Towards Collaborative Requirements Engineering Tool for ERP product customization Boban Celebic, Ruth Breu, Michael Felderer, Florian Häser Institute of Computer Science, University of Innsbruck 6020 Innsbruck,
An Analysis of The SABSA Framework. Note: Most of this information comes from the SABSA website. TJS. SABSA Overview
Note: Most of this information comes from the SABSA website. TJS SABSA Overview SABSA is a model and a methodology for developing risk-driven enterprise information security architectures and for delivering
Key Factors for Developing a Successful E-commerce Website
IBIMA Publishing Communications of the IBIMA http://www.ibimapublishing.com/journals/cibima/cibima.html Vol. 2010 (2010), Article ID 763461, 9 pages Key Factors for Developing a Successful E-commerce Website
Application of software product quality international standards through software development life cycle
Central Page 284 of 296 Application of software product quality international standards through software development life cycle Mladen Hosni, Valentina Kirinić Faculty of Organization and Informatics University
Software Development: The Next Security Frontier
James E. Molini, CISSP, CSSLP Microsoft Member, (ISC)² Advisory Board of the Americas [email protected] http://www.codeguard.org/blog Software Development: The Next Security Frontier De-perimiterization
Development. Resilient Software. Secure and. Mark S. Merkow Lakshmikanth Raghavan. CRC Press. Taylor& Francis Croup. Taylor St Francis Group,
Secure and Resilient Software Development Mark S. Merkow Lakshmikanth Raghavan CRC Press Taylor& Francis Croup Boca Raton London New York CRC Press is an imprint of the Taylor St Francis Group, an Informs
Stepping Through the Info Security Program. Jennifer Bayuk, CISA, CISM
Stepping Through the Info Security Program Jennifer Bayuk, CISA, CISM Infosec Program How to: compose an InfoSec Program cement a relationship between InfoSec program and IT Governance design roles and
90% of data breaches are caused by software vulnerabilities.
90% of data breaches are caused by software vulnerabilities. Get the skills you need to build secure software applications Secure Software Development (SSD) www.ce.ucf.edu/ssd Offered in partnership with
Preventive Approach for Web Applications Security Testing OWASP 10/30/2009. The OWASP Foundation http://www.owasp.org
Preventive Approach for Web Applications Security Testing 10/30/2009 Luiz Otávio Duarte Ferrucio de Franco Rosa Walcir M. Cardoso Jr. Renato Archer Information Technology Center Brazilian Ministry of Science
On the Secure Software Development Process: CLASP and SDL Compared
On the Secure Software Development Process: CLASP and SDL Compared Johan Grégoire, Koen Buyens, Bart De Win, Riccardo Scandariato, Wouter Joosen DistriNet, Department of Computer Science, K.U.Leuven Celestijnenlaan
NASCIO EA Development Tool-Kit Solution Architecture. Version 3.0
NASCIO EA Development Tool-Kit Solution Architecture Version 3.0 October 2004 TABLE OF CONTENTS SOLUTION ARCHITECTURE...1 Introduction...1 Benefits...3 Link to Implementation Planning...4 Definitions...5
elearning for Secure Application Development
elearning for Secure Application Development Curriculum Application Security Awareness Series 1-2 Secure Software Development Series 2-8 Secure Architectures and Threat Modeling Series 9 Application Security
Security Attack Testing (SAT) testing the security of information systems at design time $
Information Systems 32 (2007) 1166 1183 www.elsevier.com/locate/infosys Security Attack Testing (SAT) testing the security of information systems at design time $ Haralambos Mouratidis a,, Paolo Giorgini
Threat Modeling. Deepak Manohar
Threat Modeling Deepak Manohar Outline Motivation Past Security Approaches Common problems with past security approaches Adversary s perspective Vs Defender s perspective Why defender s perspective? Threat
Entire contents 2011 Praetorian. All rights reserved. Information Security Provider and Research Center www.praetorian.com
Entire contents 2011 Praetorian. All rights reserved. Information Security Provider and Research Center www.praetorian.com Threat Modeling "Threat modeling at the design phase is really the only way to
Complete Web Application Security. Phase1-Building Web Application Security into Your Development Process
Complete Web Application Security Phase1-Building Web Application Security into Your Development Process Table of Contents Introduction 3 Thinking of security as a process 4 The Development Life Cycle
Christchurch Polytechnic Institute of Technology Information Systems Acquisition, Development and Maintenance Security Standard
Christchurch Polytechnic Institute of Technology Information Systems Acquisition, Development and Maintenance Security Standard Corporate Policies & Procedures Section 1: General Administration Document
An Agent-Based Concept for Problem Management Systems to Enhance Reliability
An Agent-Based Concept for Problem Management Systems to Enhance Reliability H. Wang, N. Jazdi, P. Goehner A defective component in an industrial automation system affects only a limited number of sub
How to start a software security initiative within your organization: a maturity based and metrics driven approach OWASP
How to start a software security initiative within your organization: a maturity based and metrics driven approach Marco Morana OWASP Lead/ TISO Citigroup OWASP Application Security For E-Government Copyright
Building Security Into The Software Life Cycle
Building Security Into The Software Life Cycle A Business Case Marco M. Morana Senior Consultant Foundstone Professional Services a Division of McAfee Email: [email protected] Outline» Glossary»
Developing Secure Software in a Agile environment
Developing Secure Software in a Agile environment Dejan Baca Email: [email protected] Blekinge school of Technology Ericsson AB Research planning Abstract Software developers can use agile software
A Governance Framework for Building Secure IT Systems *
A Governance Framework for Building Secure IT Systems * Abdelwahab Hamou-Lhadj 1 and AbdelKrim Hamou-Lhadj 2 1 Department of Electrical and Computer Engineering Concordia University 1455 de Maisonneuve
Threat Modeling for Secure Embedded Software
SECURITY INNOVATION & KLOCWORK WHITE PAPER JUNE 2011 Threat Modeling for Secure Embedded Software As embedded software becomes more ubiquitous and connected powering everything from home appliances and
Software Security Engineering: A Guide for Project Managers
Software Security Engineering: A Guide for Project Managers Gary McGraw Julia H. Allen Nancy Mead Robert J. Ellison Sean Barnum May 2013 ABSTRACT: Software is ubiquitous. Many of the products, services,
The ISDF Framework: Towards Secure Software Development
Journal of Information Processing Systems, Vol.6, No.1, March 2010 DOI : 10.3745/JIPS.2010.6.1.091 The ISDF Framework: Towards Secure Software Development Abdulaziz Alkussayer* and William H. Allen* Abstract
Cisco Security Optimization Service
Cisco Security Optimization Service Proactively strengthen your network to better respond to evolving security threats and planned and unplanned events. Service Overview Optimize Your Network for Borderless
Certification Report
Certification Report EAL 4 Evaluation of SecureDoc Disk Encryption Version 4.3C Issued by: Communications Security Establishment Certification Body Canadian Common Criteria Evaluation and Certification
A Methodology for Capturing Software Systems Security Requirements
A Methodology for Capturing Software Systems Security Requirements Hassan EL-Hadary Supervised by: Prof. Sherif EL-Kassas Outline Introduction to security Software Security Security Definitions Security
Abstract. 1 Introduction
Amir Tomer Amir Tomer is the Director of Systems and Software Engineering Processes at RAFAEL Ltd., Israel,with whom he has been since 1982,holding a variety of systems and software engineering positions,both
Reducing Application Vulnerabilities by Security Engineering
Reducing Application Vulnerabilities by Security Engineering - Subash Newton Manager Projects (Non Functional Testing, PT CoE Group) 2008, Cognizant Technology Solutions. All Rights Reserved. The information
Improving SCADA Control Systems Security with Software Vulnerability Analysis
Improving SCADA Control Systems Security with Software Vulnerability Analysis GIOVANNI CAGALABAN, TAIHOON KIM, SEOKSOO KIM Department of Multimedia Hannam University Ojeong-dong, Daedeok-gu, Daejeon 306-791
Enterprise Security Architecture for Cyber Security. M.M.Veeraragaloo 5 th September 2013
Enterprise Security Architecture for Cyber Security M.M.Veeraragaloo 5 th September 2013 Outline Cyber Security Overview TOGAF and Sherwood Applied Business Security Architecture (SABSA) o o Overview of
The Role of Information Technology Studies in Software Product Quality Improvement
The Role of Information Technology Studies in Software Product Quality Improvement RUDITE CEVERE, Dr.sc.comp., Professor Faculty of Information Technologies SANDRA SPROGE, Dr.sc.ing., Head of Department
Chap 1. Introduction to Software Architecture
Chap 1. Introduction to Software Architecture 1. Introduction 2. IEEE Recommended Practice for Architecture Modeling 3. Architecture Description Language: the UML 4. The Rational Unified Process (RUP)
Threat Modeling Using Fuzzy Logic Paradigm
Issues in Informing Science and Information Technology Volume 4, 2007 Threat Modeling Using Fuzzy Logic Paradigm A. S. Sodiya, S. A. Onashoga, and B. A. Oladunjoye Department of Computer Science, University
Software Application Control and SDLC
Software Application Control and SDLC Albert J. Marcella, Jr., Ph.D., CISA, CISM 1 The most effective way to achieve secure software is for its development life cycle processes to rigorously conform to
Announcement of a new IAEA Co-ordinated Research Programme (CRP)
Announcement of a new IAEA Co-ordinated Research Programme (CRP) 1. Title of Co-ordinated Research Programme Design and engineering aspects of the robustness of digital instrumentation and control (I&C)
SECURITY METRICS: MEASUREMENTS TO SUPPORT THE CONTINUED DEVELOPMENT OF INFORMATION SECURITY TECHNOLOGY
SECURITY METRICS: MEASUREMENTS TO SUPPORT THE CONTINUED DEVELOPMENT OF INFORMATION SECURITY TECHNOLOGY Shirley Radack, Editor Computer Security Division Information Technology Laboratory National Institute
This is an author-deposited version published in : http://oatao.univ-toulouse.fr/ Eprints ID : 15447
Open Archive TOULOUSE Archive Ouverte (OATAO) OATAO is an open access repository that collects the work of Toulouse researchers and makes it freely available over the web where possible. This is an author-deposited
TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW
Year 2014, Vol. 1, issue 1, pp. 49-56 Available online at: http://journal.iecuniversity.com TRADITIONAL VS MODERN SOFTWARE ENGINEERING MODELS: A REVIEW Singh RANDEEP a*, Rathee AMIT b a* Department of
A methodology for secure software design
A methodology for secure software design Eduardo B. Fernandez Dept. of Computer Science and Eng. Florida Atlantic University Boca Raton, FL 33431 [email protected] 1. Introduction A good percentage of the
JOURNAL OF OBJECT TECHNOLOGY
JOURNAL OF OBJECT TECHNOLOGY Online at www.jot.fm. Published by ETH Zurich, Chair of Software Engineering JOT, 2006 Vol. 5. No. 8, November-December 2006 Requirements Engineering Tasks Donald Firesmith,
G- Cloud Specialist Cloud Services. Security and Penetration Testing. Overview
Description C Service Overview G- Cloud Specialist Cloud Services Security and Penetration Testing This document provides a description of TVS s Security and Penetration Testing Service offered under the
Seven Practical Steps to Delivering More Secure Software. January 2011
Seven Practical Steps to Delivering More Secure Software January 2011 Table of Contents Actions You Can Take Today 3 Delivering More Secure Code: The Seven Steps 4 Step 1: Quick Evaluation and Plan 5 Step
IT3203 Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3
Fundamentals of Software Engineering (Compulsory) BIT 2 nd YEAR SEMESTER 3 INTRODUCTION This course is designed to provide the students with the basic competencies required to identify requirements, document
External Supplier Control Requirements
External Supplier Control s Cyber Security For Suppliers Categorised as Low Cyber Risk 1. Asset Protection and System Configuration Barclays Data and the assets or systems storing or processing it must
ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS
ONTOLOGY FOR MOBILE PHONE OPERATING SYSTEMS Hasni Neji and Ridha Bouallegue Innov COM Lab, Higher School of Communications of Tunis, Sup Com University of Carthage, Tunis, Tunisia. Email: [email protected];
