Synopses & Reviews
Learn how to defend your systems against costly security vulnerabilities and breaches!
The Object Management Group (OMG) Software Assurance Ecosystem described in this book is a significant step towards collaborative cyber security automation; it offers a standards-based solution for building security and resilience in computer systems.
Joe Jarzombek, Director for Software Assurance, Global Cyber Security Management, National Cyber Security Division, Department of Homeland Security
System Assurance is a very complex and difficult subject. This book successfully demonstrates and describes in detail how to combine different existing tools together in order to systematically develop System Assurance documentation and justification in a practical manner for a specific domain. The book provides very useful practical guidance that can be used by technical and management practitioners for the specific domain described, and by example for others for different domains.
John P. Hopkinson, Security Strategist, Kwictech
Features
- Provides end-to-end methodology for systematic, repeatable, and affordable System Assurance
- Includes an overview of OMG Software Assurance Ecosystem protocols that integrate risk, architecture and code analysis guided by the assurance argument.
- Supplies an online Case Study illustrating the steps of the System Assurance Methodology using automated tools
In this day of frequent acquisitions and perpetual application integrations, systems are often an amalgamation of multiple programming languages and runtime platforms using new and legacy content. Systems of such mixed origins are increasingly vulnerable to defects and subversion.
System Assurance: Beyond Detecting Vulnerabilities addresses these critical issues. As a practical resource for security analysts and engineers tasked with system assurance, the book teaches you how to use the Object Management Group’s (OMG) expertise and unique standards to obtain accurate knowledge about your existing software and compose objective metrics for system assurance. OMG’s Assurance Ecosystem provides a common framework for discovering, integrating, analyzing, and distributing facts about your existing enterprise software. Its foundation is the standard protocol for exchanging system facts, defined as the OMG Knowledge Discovery Metamodel (KDM). In addition, the Semantics of Business Vocabularies and Business Rules (SBVR) defines a standard protocol for exchanging security policy rules and assurance patterns. Using these standards together, you will learn how to leverage the knowledge of the cybersecurity community and bring automation to protect your system.
Dr. Nikolai Mansourov is the Chief Technical Officer at KDM Analytics and is the Editor of the OMG Knowledge Discovery Metamodel (KDM) specification and the Chair of the OMG Revision Task Force for KDM. He was Chief Scientist and Chief Architect at Klocwork Inc, served as a department head at the Institute for System Programming, Russian Academy of Sciences, and has published over 50 research papers.
Djenana Campara is the CEO of KDM Analytics, a member of the Board of Directors of the Object Management Group (OMG), and she chairs the OMG Architecture-Driven Modernization and System Assurance Task Forces. She sits on several boards, and was CTO of Klocwork , which she founded in 2001. She has been awarded several US patents for her groundbreaking static analysis techniques. She has published a number of papers on software transformations, and has been quoted in publications, including The Economist and Secure Computing.
Review
"The Object Management Group (OMG) Software Assurance Ecosystem described in this book is a significant step towards collaborative cyber security automation; it offers a standards-based solution for building security and resilience in computer systems." -Joe Jarzombek, Director for Software Assurance, Global Cyber Security Management, National Cyber Security Division, Department of Homeland Security
"System Assurance is a very complex and difficult subject. This book successfully demonstrates and describes in detail how to combine different existing tools together in order to systematically develop System Assurance documentation and justification in a practical manner for a specific domain. The book provides very useful practical guidance that can be used by technical and management practitioners for the specific domain described, and by example for others for different domains." -John P. Hopkinson, Security Strategist, Kwictech
Synopsis
Enterprises continually focus on the security of their key infrastructures. Moreover, these infrastructures are highly dependent on trustworthy software (in other words, software that is able to perform reliably during times of crisis and in spite of attempts at subversion). But how do you know if software is truly trustworthy?
Due to frequent acquisitions and application integrations, software systems are most often an amalgamation of multiple programming languages and platforms that each use different kinds of content from different kinds of sources. As systems incorporate more and more software components of mixed origin and pedigree, they become increasingly vulnerable to defects and subversion. This is because such complex hybridization makes it difficult to capture and exchange compatible information pertaining to comprehensive systemic properties such as quality, robustness, and reliability. Since each individual software component was developed differently, there can be no normalized analysis of overall system performance.
That is, until now System Assurance: Beyond Detecting Vulnerabilities uses the Object Management Group's (OMG) expertise and stack of unique standards to both obtain accurate knowledge about existing software and compose objective metrics to verify system assurance. Specifically, OMG's Knowledge Discovery Metamodel (KDM) provides a common framework for discovering, integrating, analyzing, and distributing facts about existing enterprise software, and its Semantics of Business Vocabularies and Business Rules (SBVR) creates universal business rules against which this information can be measured. Thus, when used in combination, KDM and SBVR provide the basis for a software assurance ecosystem, and this book acts as a mighty shield to defend your work against million dollar vulnerabilities and breeches.
Utilizes the Object Management Group's (OMG) expertise to apply no-nonsense assurance standards to a variety of real-world situations
Includes an online appendix of commercial tools and open source projects as well as downloadable example software that correspond to Knowledge Discovery Metamodel KDM representations
Allows you to create uniform benchmarks that communicate exactly what you want to external tool vendors
Synopsis
System Assurance Beyond Detecting Vulnerabilities provides a comprehensive view of systematic, repeatable, and affordable cyberdefense that goes beyond knowledge of vulnerabilities and includes knowledge of the system, knowledge of risks and threats, knowledge of security safeguards, as well as knowledge of the assurance argument, together with the corresponding evidence answering the question why a system is secure.
The book is organized into four parts. The first part provides an introduction to cybersecurity knowledge; the need for information exchanges for systematic, repeatable, and affordable cyberdefense; and the motivation for the Object Management Group (OMG) Software Assurance Ecosystem. It discusses the nature of system assurance and its difference for vulnerability detection, and introduces the OMG standard on Software Assurance Cases. It describes an end-to-end methodology for system assurance in the context of the OMG Software Assurance Ecosystem that brings together risk analysis, architecture analysis, and code analysis in an integrated process that is guided and planned by the assurance argument. The second part describes various aspects of cybersecurity knowledge required for building cybersecurity arguments. This knowledge includes system knowledge, knowledge related to security threats and risks, and vulnerability knowledge. The third part provides an overview of the protocols of the OMG Software Assurance Ecosystem. It covers the Common Fact Model approach; linguistic models and the OMG Semantics of Business Vocabularies and Rules (SBVR) standard; and the OMG Knowledge Discovery Metamodel (KDM). The fourth part presents a case study to illustrate some of the activities of a system assurance evaluation.
- Provides end-to-end methodology for systematic, repeatable, and affordable System Assurance.
- Includes an overview of OMG Software Assurance Ecosystem protocols that integrate risk, architecture and code analysis guided by the assurance argument.
- Case Study illustrating the steps of the System Assurance Methodology using automated tools.
Synopsis
System Assurance teaches students how to use Object Management Group's (OMG) expertise and unique standards to obtain accurate knowledge about existing software and compose objective metrics for system assurance.
OMG's Assurance Ecosystem provides a common framework for discovering, integrating, analyzing, and distributing facts about existing enterprise software. Its foundation is the standard protocol for exchanging system facts, defined as the OMG Knowledge Discovery Metamodel (KDM). In addition, the Semantics of Business Vocabularies and Business Rules (SBVR) defines a standard protocol for exchanging security policy rules and assurance patterns. Using these standards together, students will learn how to leverage the knowledge of the cybersecurity community and bring automation to protect systems.
This book includes an overview of OMG Software Assurance Ecosystem protocols that integrate risk, architecture, and code analysis guided by the assurance argument. A case study illustrates the steps of the System Assurance Methodology using automated tools.
This book is recommended for technologists from a broad range of software companies and related industries; security analysts, computer systems analysts, computer software engineers-systems software, computer software engineers- applications, computer and information systems managers, network systems and data communication analysts.
- Provides end-to-end methodology for systematic, repeatable, and affordable System Assurance.
- Includes an overview of OMG Software Assurance Ecosystem protocols that integrate risk, architecture and code analysis guided by the assurance argument.
- Case Study illustrating the steps of the System Assurance Methodology using automated tools.
Synopsis
In this day of frequent acquisitions and perpetual application integrations, systems are often an amalgamation of multiple programming languages and runtime platforms using new and legacy content. Systems of such mixed origins are increasingly vulnerable to defects and subversion.
System Assurance: Beyond Detecting Vulnerabilities addresses these critical issues. As a practical resource for security analysts and engineers tasked with system assurance, the book teaches you how to use the Object Management Group’s (OMG) expertise and unique standards to obtain accurate knowledge about your existing software and compose objective metrics for system assurance. OMG’s Assurance Ecosystem provides a common framework for discovering, integrating, analyzing, and distributing facts about your existing enterprise software. Its foundation is the standard protocol for exchanging system facts, defined as the OMG Knowledge Discovery Metamodel (KDM). In addition, the Semantics of Business Vocabularies and Business Rules (SBVR) defines a standard protocol for exchanging security policy rules and assurance patterns. Using these standards together, you will learn how to leverage the knowledge of the cybersecurity community and bring automation to protect your system.
- Provides end-to-end methodology for systematic, repeatable, and affordable System Assurance.
- Includes an overview of OMG Software Assurance Ecosystem protocols that integrate risk, architecture and code analysis guided by the assurance argument.
- Case Study illustrating the steps of the System Assurance Methodology using automated tools.
Synopsis
This book is titled System Assurance: Beyond Detecting Vulnerabilities because the content for systematic, repeatable and affordable cyberdefense goes beyond the knowledge of vulnerabilities, and includes the knowledge of the system, the risks and threats, the security safeguards, as well as the knowledge of the assurance argument together with the corresponding evidence answering the question why a system is secure. In other words, it is easy to claim that a system is not secure when at least one potential vulnerability is detected and presented as evidence; however, if no vulnerability were detected does that mean that the system is secure? Not really, it still requires a convincing argument and evidence to that end, including the argument that the tool was applied correctly, that there are no gaps in the understanding of the particular code dialect, that no code was dropped, etc. System assurance tools go beyond detecting vulnerabilities - they provide evidence to support the claim that the system is secure.
Provides end-to-end methodology for systematic, repeatable, and affordable System Assurance.
Includes an overview of OMG Software Assurance Ecosystem protocols that integrate risk, architecture and code analysis guided by the assurance argument.
Case Study illustrating the steps of the System Assurance Methodology using automated tools.
About the Author
Nikolai Mansourov is recognized worldwide for his work in the areas of automatic code generation and using formal specifications in both forward and reverse engineering. Prior to joining KDM Analytics, Dr. Mansourov was the Chief Scientist and Chief Architect at Klocwork Inc, where he significantly helped build the company’s credibility. Dr. Mansourov also was a department head at the Institute for System Programming, Russian Academy of Sciences, where he was responsible for numerous groundbreaking research projects in advanced software development for industry leaders Nortel Networks and Telelogic. Dr. Mansourov has published over 50 research papers and is a frequent speaker as well as member of program committees at various international research forums. He is a founding member of the World-Wide Institute of Software Architects WWISA. His impact on the industry continues through his participation on several standards bodies, including the ITU-T and Object Management Group. Dr. Mansourov is one of the first OMG-certified UML Advanced Professionals and a member of the UML2 standardization team. Dr. Mansourov is the Editor of the OMG Knowledge Discovery Metamodel (KDM) specification and the Chair of the OMG Revision Task Force for KDM.Djenana Campara has 20+ years of experience and leadership in the software engineering field. Ms. Campara is a member of the Board of Directors of the Object Management Group (OMG). Djenana Campara chairs the OMG Architecture-Driven Modernization Task Force and Software Assurance Special Interests Group, and serves as a board member on the Canadian Consortium of Software Engineering Research (CSER). Previously, Djenana was CTO of Klocwork and chairwoman of Klocwork’s Board of Directors. Djenana founded the company in 2001 as a successful Nortel Networks spin off. She has served as Klocwork's chief executive officer, securing the company's first round of funding as well as closing its first customers. She has been awarded four US patents for her groundbreaking static analysis techniques implemented in Klocwork’s products. She has published a number of papers on software transformations, has been quoted in publications, including The Economist and Secure Computing, and has participated in Fortune Magazine's "Brainstorm 2003," an international conference of the world's most creative leaders.
President and CEO of KDM Analytics
Table of Contents
Contents
1. Why Hackers know more about our systems
1.1 Operating in cyberspace involves risks
1.2 Why Hackers are repeatadly successful
1.2.1 What are the challenges in defending cybersystems?
1.2.1.1 Difficulties in understanding and assessing risks
1.2.1.2 Understanding Development Trends
1.2.1.3 Comprehending Systems’ Complexity
1.2.1.4 Understanding Assessment Practices and their Limitations
1.2.1.5 Vulnerability Scanning Technologies and their Issues
1.3 Where do We Go from Here
1.3.1 Systematic and repeatable defense at affordable cost
1.3.2 The OMG Software Assurance Ecosystem
1.3.3 Linguistic Modeling to manage the common vocabulary
1.4 Who should read this book
2 Chapter: Confidence as a Product
2.1 Are you confident that there is no black cat in the dark room?
2.2 The Nature of Assurance
2.2.1 Engineering, Risk and Assurance
2.2.2 Assurance Case (AC)
2.2.2.1 Contents of an Assurance Case
2.2.2.2 Structure of the Assurance Argument
2.3 Overview of the Assurance Process
2.3.1 Producing Confidence
2.3.1.1 Economics of Confidence
3 Chapter: How to Build Confidence
3.1 Assurance in the System Lifecycle
3.2 Activities of System Assurance Process
3.2.1 Project Definition
3.2.2 Project Preparation
3.2.3 Assurance argument development
3.2.4 Architecture Security Analysis
3.2.4.1 Discover System Facts
3.2.4.2 Threat identification
3.2.4.3 Safeguard Identification
3.2.4.4 Vulnerability detection
3.2.4.5 Security Posture Analysis
3.2.5 Evidence analysis
3.2.6 Assurance Case Delivery
4 Chapter: Knowledge of System as of Element in Cybersecurity argument
4.1 What is system
4.2 Boundaries of the system
4.3 Resolution of the system description
4.4 Conceptual commitment for system descriptions
4.5 System architecture
4.6 Example of an architecture framework
4.7 Elements of System
4.8 System Knowledge Involves Multiple Viewpoints
4.9 Concept of operations (CONOP)
4.10 Network Configuration
4.11 System life cycle and assurance
4.11.1 System life cycle stages
4.11.2 Enabling Systems
4.11.3 Supply Chain
4.11.4 System life cycle processes
4.11.5 The implications to the common vocabulary and the integrated system model
5 Chapter: Knowledge of Risk as an Element of Cybersecurity argument
5.1 Introduction
5.2 Basic cybersecurity elements
5.3 Common vocabulary for risk analysis
5.3.1 Defining diScernable vocabulary for Assets
5.3.2 Threats and hazards
5.3.3 Defining dicernable vocabulary for Injury and Impact
5.3.4 Defining dicernable vocabulary for threats
5.3.5 Threat scenarios and attacks
5.3.6 Defining dicernable vocabulary for vulnerabilities
5.3.7 Defining dicernable vocabulary for safeguards
5.3.8 Risk
5.4 Systematic Threat Identification
5.5 Assurance Strategies
5.5.1 Injury Argument
5.5.2 Entry point argument
5.5.3 Threat argument
5.5.4 Vulnerability argument
5.5.5 Security requirement argument
5.5.6 Assurance of the threat identification
6 Chapter: Knowledge of Vulnerabilities as an Element of Cybersecurity Argument
6.1 Vulnerability as part of system knowledege
6.1.1 What is Vulnerability
6.1.2 Vulnerability as Unit of Knowledge: The History of Vulnerability
6.1.3 Vulnerabilities and the Phases of the System Life Cycle
6.1.4 Enumeration of Vulnerabilities as a Knowledge Product
6.1.5 Vulnerability Databases
6.1.5.1 US-CERT
6.1.5.2 Open Source Vulnerability Database (OSVDB)
6.1.6 Vulnerability Life Cycle
6.2 NIST Security Content Automation Protocol (SCAP) Ecosystem
6.2.1 Overview of SCAP Ecosystem
6.2.2 Information Exchanges under SCAP
7 Chapter: Vulnerability Patterns as a New Assurance Content
7.1 Beyond Current SCAP Ecosystem
7.2 Vulnerability Patterns
7.3 Software Fault Patterns
7.3.1 Safeguard category of clusters and corresponding Software fault Patterns (SFPs)
7.3.1.1 Authentication
7.3.1.2 Access Control
7.3.1.3 Privilege
7.3.2 Direct Impact category of clusters and corresponding Software fault Patterns (SFPs)
7.3.2.1 Information Leak
7.3.2.2 Memory Management
7.3.2.3 Memory Access
7.3.2.4 Path Resolution
7.3.2.5 Tainted Input
8 Chapter: OMG Software Assurance Ecosystem
8.1 Introduction
8.2 OMG Assurance Ecosystem: towards collaborative cybersecurity
9 Chapter: Common Fact Model for Assurance Content
9.1 Assurance Content
9.2 The Objectives
9.3 Design criteria for information exchange protocols
9.4 Tradeoffs
9.5 Information Exchange Protocols
9.6 The Nuts and Bolts of Fact Models
9.6.1 Objects
9.6.2 Noun Concepts
9.6.3 Facts about existence of objects
9.6.4 Individual concepts
9.6.5 Relations between concepts
9.6.6 Verb concepts
9.6.7 Characteristics
9.6.8 Situational concepts
9.6.9 Viewpoints and views
9.6.10 Information exchanges and assurance
9.6.11 Fact-oriented Integration
9.6.12 Automatic derivation of facts
9.7 The representation of facts
9.7.1 Representing facts in XML
9.7.2 Representing facts and schemes in Prolog
9.8 The common schema
9.9 System assurance facts
10 Chapter: Linguistic Models
10.1 Fact Models and Linguistic Models
10.2 Background
10.3 Overview of SBVR
10.4 How to use SBVR
10.4.1 Simple vocabulary
10.4.2 Vocabulary Entries
10.4.3 Statements
10.4.4 Statements as formal definitions of new concepts
10.4.4.1 Definition of a Noun Concept
10.4.4.2 Definition of a Verb Concept
10.4.4.3 The General Concept caption
10.5 SBVR Vocabulary for describing Elementary Meanings
10.6 SBVR Vocabulary for describing Representations
10.7 SBVR Vocabulary for describing Extensions
10.8 Reference schemes
10.9 SBVR Semantic Formulations
10.9.1 Defining new terms and facts types using SBVR
11 Chapter: Standard Protocol for Exchanging System Facts
11.1 Background
11.2 Organization of the KDM vocabulary
11.2.1 Infrastructure Layer
11.2.2 Program Elements Layer
11.2.3 Resource Layer
11.2.4 Abstractions Layer
11.3 The process of discovering system facts
11.4 Discovering the baseline system facts
11.4.1 Inventory views
11.4.1.1 Inventory Viewpoint vocabulary in SBVR
11.4.2 Build Views
11.4.3 Data views
11.4.4 UI views
11.4.5 Code views
11.4.5.1 Code views: Elements of Structure
11.4.5.2 Code views: Elements of Behavior
11.4.5.3 Micro KDM
11.4.6 Platform views
11.4.7 Event views
11.5 Performing architecture analysis
11.5.1 Structure Views
11.5.2 Conceptual Views
11.5.2.1 Linguistic Viewpoint
11.5.2.2 Behavior Viewpoint
12 Chapter: Case Study
12.1 Introduction
12.2 Background
12.3 Concepts of operations
12.3.1 Executive summary
12.3.2 Purpose
12.3.3 Locations
12.3.4 Operational Authority
12.3.5 System Architecture
12.3.5.1 Clicks2Bricks Web server
12.3.5.2 Database server
12.3.5.3 SMTP server
12.3.6 System Assumptions
12.3.7 External dependencies
12.3.8 Implementation Assumptions
12.3.9 Interfaces with Other Systems
12.3.10 Security assumptions
12.3.11 External Security Notes
12.3.12 Internal Security notes
12.4 Business vocabulary and security policy for Clicks2Bricks in SBVR
12.5 Building the integrated system model
12.5.1 Building the baseline system model
12.5.2 Enhancing the baseline model with the system architecture facts
12.6 Mapping cybersecurity facts to system facts
12.7 Assurance case