System Assurance
Beyond Detecting Vulnerabilities
By- Nikolai Mansourov, Chief Technical Officer at KDM Analytics
- Djenana Campara, President and CEO of KDM Analytics
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 Groups (OMG) expertise and unique standards to obtain accurate knowledge about your existing software and compose objective metrics for system assurance. OMGs 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.
Audience
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.
Paperback, 368 Pages
Published: December 2010
Imprint: Morgan Kaufmann
ISBN: 978-0-12-381414-2
Reviews
-
"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
Contents
Contents
1. Why Hackers know more about our systems
1.1 Operating in cyberspace involves risks1.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 Trends1.2.1.3 Comprehending Systems Complexity
1.2.1.4 Understanding Assessment Practices and their Limitations1.2.1.5 Vulnerability Scanning Technologies and their Issues
1.3 Where do We Go from Here1.3.1 Systematic and repeatable defense at affordable cost
1.3.2 The OMG Software Assurance Ecosystem1.3.3 Linguistic Modeling to manage the common vocabulary
1.4 Who should read this book2 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 Assurance2.2.2 Assurance Case (AC)
2.2.2.1 Contents of an Assurance Case2.2.2.2 Structure of the Assurance Argument
2.3 Overview of the Assurance Process2.3.1 Producing Confidence
2.3.1.1 Economics of Confidence3 Chapter: How to Build Confidence
3.1 Assurance in the System Lifecycle3.2 Activities of System Assurance Process
3.2.1 Project Definition3.2.2 Project Preparation
3.2.3 Assurance argument development3.2.4 Architecture Security Analysis
3.2.4.1 Discover System Facts3.2.4.2 Threat identification
3.2.4.3 Safeguard Identification3.2.4.4 Vulnerability detection
3.2.4.5 Security Posture Analysis3.2.5 Evidence analysis
3.2.6 Assurance Case Delivery4 Chapter: Knowledge of System as of Element in Cybersecurity argument4.1 What is system
4.2 Boundaries of the system4.3 Resolution of the system description
4.4 Conceptual commitment for system descriptions4.5 System architecture
4.6 Example of an architecture framework4.7 Elements of System
4.8 System Knowledge Involves Multiple Viewpoints4.9 Concept of operations (CONOP)
4.10 Network Configuration4.11 System life cycle and assurance
4.11.1 System life cycle stages4.11.2 Enabling Systems
4.11.3 Supply Chain4.11.4 System life cycle processes
4.11.5 The implications to the common vocabulary and the integrated system model5 Chapter: Knowledge of Risk as an Element of Cybersecurity argument5.1 Introduction
5.2 Basic cybersecurity elements5.3 Common vocabulary for risk analysis
5.3.1 Defining diScernable vocabulary for Assets5.3.2 Threats and hazards
5.3.3 Defining dicernable vocabulary for Injury and Impact5.3.4 Defining dicernable vocabulary for threats
5.3.5 Threat scenarios and attacks5.3.6 Defining dicernable vocabulary for vulnerabilities
5.3.7 Defining dicernable vocabulary for safeguards5.3.8 Risk
5.4 Systematic Threat Identification5.5 Assurance Strategies
5.5.1 Injury Argument5.5.2 Entry point argument
5.5.3 Threat argument5.5.4 Vulnerability argument
5.5.5 Security requirement argument5.5.6 Assurance of the threat identification
6 Chapter: Knowledge of Vulnerabilities as an Element of Cybersecurity Argument6.1 Vulnerability as part of system knowledege
6.1.1 What is Vulnerability6.1.2 Vulnerability as Unit of Knowledge: The History of Vulnerability
6.1.3 Vulnerabilities and the Phases of the System Life Cycle6.1.4 Enumeration of Vulnerabilities as a Knowledge Product
6.1.5 Vulnerability Databases6.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) Ecosystem6.2.1 Overview of SCAP Ecosystem
6.2.2 Information Exchanges under SCAP7 Chapter: Vulnerability Patterns as a New Assurance Content7.1 Beyond Current SCAP Ecosystem
7.2 Vulnerability Patterns7.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 Control7.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 Management7.3.2.3 Memory Access
7.3.2.4 Path Resolution7.3.2.5 Tainted Input
8 Chapter: OMG Software Assurance Ecosystem
8.1 Introduction8.2 OMG Assurance Ecosystem: towards collaborative cybersecurity
9 Chapter: Common Fact Model for Assurance Content
9.1 Assurance Content9.2 The Objectives
9.3 Design criteria for information exchange protocols9.4 Tradeoffs
9.5 Information Exchange Protocols9.6 The Nuts and Bolts of Fact Models
9.6.1 Objects9.6.2 Noun Concepts
9.6.3 Facts about existence of objects9.6.4 Individual concepts
9.6.5 Relations between concepts9.6.6 Verb concepts
9.6.7 Characteristics9.6.8 Situational concepts
9.6.9 Viewpoints and views9.6.10 Information exchanges and assurance
9.6.11 Fact-oriented Integration9.6.12 Automatic derivation of facts
9.7 The representation of facts9.7.1 Representing facts in XML
9.7.2 Representing facts and schemes in Prolog9.8 The common schema
9.9 System assurance facts10 Chapter: Linguistic Models
10.1 Fact Models and Linguistic Models10.2 Background
10.3 Overview of SBVR10.4 How to use SBVR
10.4.1 Simple vocabulary10.4.2 Vocabulary Entries
10.4.3 Statements10.4.4 Statements as formal definitions of new concepts
10.4.4.1 Definition of a Noun Concept10.4.4.2 Definition of a Verb Concept
10.4.4.3 The General Concept caption10.5 SBVR Vocabulary for describing Elementary Meanings
10.6 SBVR Vocabulary for describing Representations10.7 SBVR Vocabulary for describing Extensions
10.8 Reference schemes10.9 SBVR Semantic Formulations
10.9.1 Defining new terms and facts types using SBVR11 Chapter: Standard Protocol for Exchanging System Facts
11.1 Background11.2 Organization of the KDM vocabulary
11.2.1 Infrastructure Layer11.2.2 Program Elements Layer
11.2.3 Resource Layer11.2.4 Abstractions Layer
11.3 The process of discovering system facts11.4 Discovering the baseline system facts
11.4.1 Inventory views11.4.1.1 Inventory Viewpoint vocabulary in SBVR
11.4.2 Build Views11.4.3 Data views
11.4.4 UI views11.4.5 Code views
11.4.5.1 Code views: Elements of Structure11.4.5.2 Code views: Elements of Behavior
11.4.5.3 Micro KDM11.4.6 Platform views
11.4.7 Event views11.5 Performing architecture analysis
11.5.1 Structure Views11.5.2 Conceptual Views
11.5.2.1 Linguistic Viewpoint11.5.2.2 Behavior Viewpoint
12 Chapter: Case Study
12.1 Introduction12.2 Background
12.3 Concepts of operations12.3.1 Executive summary
12.3.2 Purpose12.3.3 Locations
12.3.4 Operational Authority12.3.5 System Architecture
12.3.5.1 Clicks2Bricks Web server12.3.5.2 Database server
12.3.5.3 SMTP server12.3.6 System Assumptions
12.3.7 External dependencies12.3.8 Implementation Assumptions
12.3.9 Interfaces with Other Systems12.3.10 Security assumptions
12.3.11 External Security Notes12.3.12 Internal Security notes
12.4 Business vocabulary and security policy for Clicks2Bricks in SBVR12.5 Building the integrated system model
12.5.1 Building the baseline system model12.5.2 Enhancing the baseline model with the system architecture facts
12.6 Mapping cybersecurity facts to system facts12.7 Assurance case

