+ All Categories
Home > Documents > SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world....

SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world....

Date post: 11-Aug-2019
Category:
Upload: vohanh
View: 213 times
Download: 0 times
Share this document with a friend
126
SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR DEVELOPING SECURE SOFTWARE by Dan Wu A Dissertation Presented to the FACULTY OF THE GRADUATE SCHOOL UNIVERSITY OF SOUTHERN CALIFORNIA In Partial Fulfillment of the Requirements for the Degree DOCTOR OF PHILOSOPHY (COMPUTER SCIENCE) May 2007 Copyright 2007 Dan Wu
Transcript
Page 1: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR DEVELOPING

SECURE SOFTWARE

by

Dan Wu

A Dissertation Presented to the

FACULTY OF THE GRADUATE SCHOOL UNIVERSITY OF SOUTHERN CALIFORNIA

In Partial Fulfillment of the Requirements for the Degree DOCTOR OF PHILOSOPHY

(COMPUTER SCIENCE)

May 2007

Copyright 2007 Dan Wu

Page 2: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

UMI Number: 3262759

32627592007

UMI MicroformCopyright

All rights reserved. This microform edition is protected against unauthorized copying under Title 17, United States Code.

ProQuest Information and Learning Company 300 North Zeeb Road

P.O. Box 1346 Ann Arbor, MI 48106-1346

by ProQuest Information and Learning Company.

Page 3: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

ii

Dedication To my grandmother, my parents and Jia, thanks for their support and love.

Page 4: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

iii

Acknowledgements

This dissertation could not have been finished without many people’s support and

help. The person I am mostly appreciated for is my advisor: Dr. Barry Boehm. How

lucky I am to be his student and work with him for almost 4 years. I cannot achieve

today’s goal without his consistent guidance, encouragement and support on every

aspect of my student life. I also sincerely thank my other committee members: Dr.

Neno Medvidovic and Dr. Bert Steece, for the great guidance and feedbacks on my

research, presentations and drafts of dissertation.

I want to give my special thanks to Ed Colbert, who provides me many useful

feedbacks on this research. I felt very happy working with him and learned many

things from him. I would also thank for Dr George Freidman and Dr Rick Selby,

who gave me many suggestions on how to extend my research and future research

areas.

I want to thank for my family for the unconditionally love and support. I won’t be

achieving today’s success without his inspiration in my childhood. He is always the

greatest person in my life. My mother, even did not spend much time with me, still

gave me the best love and care in the world. My lovely younger sister, I will be

always loving you and taking care of you.

I really want to share all my success with my grandmother. I feel so sad I could not

be with her in her last few days. Grandmother and aunt Nan, I wish you could feel all

the happiness I feel now, and be very peaceful in the heaven.

Page 5: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

iv

Table of Contents

Dedication ....................................................................................................................ii

Acknowledgements .....................................................................................................iii

Table of Contents ........................................................................................................ iv

List of Tables ..............................................................................................................vi

List of Figures ............................................................................................................. ix

Abbreviations ............................................................................................................... x

Abstract .......................................................................................................................xi

Chapter 1: Introduction ................................................................................................ 1

Chapter 2: Background and Related Work .................................................................. 6 2.1 Security Objectives Taxonomy .......................................................................... 6 2.2 Security Considerations in SDLC ...................................................................... 9

2.2.1 NIST Special Publications........................................................................... 9 2.2.2 MBASE Security Extensions..................................................................... 11 2.2.3 SSE-CMM & IA-CMM............................................................................. 13

2.3 Security Evaluation Criteria ............................................................................. 13 2.3.1 Trusted Computer Systems Evaluation Criteria ........................................ 14 2.3.2 Information Technology Security Evaluation Criteria .............................. 16 2.3.3 Common Criteria ....................................................................................... 17

2.4 Software Pattern and Security Pattern.............................................................. 26

Chapter 3: Research Approach .................................................................................. 32

Chapter 4: Data Context and General Observations .................................................. 34 4.1 SFR Classes Usage........................................................................................... 35 4.2 SFR & EAL: General Trends ........................................................................... 37 4.3 Observations on Security Projects Through Timeline ..................................... 40

Chapter 5: Security Target Analysis Result ............................................................... 44 5.1 SFR Reusable Packages ................................................................................... 45

5.1.1 Identification and Authentication .............................................................. 45 5.1.2 Confidentiality ........................................................................................... 47 5.1.3 Integrity...................................................................................................... 50 5.1.4 Availability ................................................................................................ 51 5.1.5 Non-Repudiation........................................................................................ 53 5.1.6 Security Management ................................................................................ 54 5.1.7 Privacy ....................................................................................................... 56 5.1.8 Accountability............................................................................................ 57

Page 6: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

v

5.1.9 Recoverability............................................................................................ 57 5.1.10 Intrusion Detection and Response ........................................................... 58 5.1.11 SFRs Correlations.................................................................................... 60

5.2 SFR Patterns in Domains ................................................................................. 69 5.2.1 Access Control Devices and Systems (ACDS) ......................................... 69 5.2.2 Boundary Protection Devices and Systems (BPDS) ................................. 70 5.2.3 Database (DB) ........................................................................................... 74 5.2.4 Data Protection (DP).................................................................................. 76 5.2.5 Detection Devices (DD) ............................................................................ 78 5.2.6 ICs, Smart Cards & Related Services (ICSCRS)....................................... 80 5.2.7 Key Management (KM)............................................................................. 83 5.2.8 Network and Network Related Devices and Systems (NNRDS) .............. 85 5.2.9 Operating Systems (OS) ............................................................................ 89

Chapter 6: Validation Approach ................................................................................ 93 6.1 SFR Packages Validation ................................................................................. 93 6.2 SFR Patterns Validation ................................................................................... 94

6.2.1 SFR Pattern Validation Result in BPDS Domain...................................... 96 6.2.2 SFR Pattern Validation Result in ICSCRS Domain .................................. 97 6.2.3 SFR Pattern Validation Result in NNRDS Domain .................................. 98 6.2.4 SFR Pattern Validation Result in OS Domain......................................... 100 6.2.5 SFR Pattern Validation in Other Domains .............................................. 101

Chapter 7: Contributions and Future Work.............................................................. 104 7.1 Contributions .................................................................................................. 104 7.2 Future Work ................................................................................................... 105

References ................................................................................................................ 107

Appendices............................................................................................................... 111 SFR abbreviations and full names........................................................................ 111

Page 7: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

vi

List of Tables

Table 1: MBASE Completion Criteria for Anchor Points ......................................... 12

Table 2: Security Classes in Orange Book................................................................. 15

Table 3: ITSEC Levels Mapping with OB Levels ..................................................... 17

Table 4: Mapping Between SFR and Security Objectives......................................... 20

Table 5: Contents of ST Sections............................................................................... 26

Table 6: Element Content of SFR Pattern.................................................................. 27

Table 7: Advantages and Disvantages of Pattern Exploring Approach..................... 31

Table 8: Summaries of Security Products in Different Domains............................... 34

Table 9: Average EAL & Number of SFRs ............................................................... 41

Table 10: Number of Security Products with Certain SO.......................................... 42

Table 11: Percentages of Security Products with Certain SO.................................... 42

Table 12: Average Number of SFRs for Achieving SO ............................................ 43

Table 13: SFR Packages for Identification and Authentication................................. 45

Table 14: SFR Packages for Access Control ............................................................. 48

Table 15: SFR Packages for Encryption .................................................................... 49

Table 16: SFR Packages fr Integrity .......................................................................... 51

Table 17: SFR Packages for Non-Repudiation (Part 1) ............................................. 54

Table 18: SFR Packages for Non-Repudiation (Part 2) ............................................. 54

Table 19: SFR Packages for Accountability .............................................................. 57

Table 20: SFR Packages for Recoverability .............................................................. 58

Table 21: SFR Packages for Intrusion Detection and Response................................ 59

Page 8: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

vii

Table 22: Correlations Among SFR Classes.............................................................. 61

Table 23: Correlations Among Security Objectives .................................................. 65

Table 24: Correlations Among Security Objectives in BPDS ................................... 67

Table 25: Correlations Among Security Objectives in ICSCRS ............................... 67

Table 26: Correlations Among Security Objectives in NNRDS................................ 68

Table 27: Correlations Among Security Objectives in OS ........................................ 68

Table 28: Security Objectives in ACDS .................................................................... 69

Table 29: SFR Patterns for Primary Security Objectives in ACDS........................... 69

Table 30: Security Objectives in BPDS..................................................................... 71

Table 31: SFR Patterns for Primary Security Objectives in BPDS ........................... 72

Table 32: Security Objectives in DB ......................................................................... 74

Table 33: SFR Patterns for Primary Security Objectives in DB................................ 74

Table 34: Security Objectives in DP.......................................................................... 76

Table 35: SFR Patterns for Primary Security Objectives in DP ................................ 77

Table 36: Security Objectives in DD ......................................................................... 78

Table 37: SFR Patterns for Primary Security Objectives in DD................................ 79

Table 38: Security Objectives in ICSCRS ................................................................. 80

Table 39: SFR Patterns for Primary Security Objectives in ICSCRS........................ 81

Table 40: Security Objectives in KM ........................................................................ 83

Table 41: SFR Patterns for Primary Security Objectives in KM............................... 84

Table 42: Security Objectives in NNRDS ................................................................. 86

Table 43: SFR Patterns for Primary Security Objectives in NNRDS........................ 86

Page 9: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

viii

Table 44: Security Objectives in OS.......................................................................... 89

Table 45: SFR Patterns for Primary Security Objectives in OS ................................ 90

Table 46: Number of Total SFRs for Supporting Security Objectives ...................... 95

Table 47: Effectivness of Security Patterns in BPDS ................................................ 96

Table 48: Range of Effectiveness of BPDS Security Pattern .................................... 97

Table 49: Effectivness of Security Patterns in ICSCRS ............................................ 97

Table 50: Range of Effectiveness of ICSCRS Security Pattern................................. 98

Table 51: Effectiveness of Security Patterns for Two SOs........................................ 98

Table 52: Effectiveness of Security Patterns in NNRDS........................................... 99

Table 53: Range of Effectiveness of NNRDS Security Pattern................................. 99

Table 54: Effectivness of Security Patterns in OS................................................... 100

Table 55: Range of Effectiveness of OS Security Pattern ....................................... 100

Table 56: Effectivness of Security Patterns in AC .................................................. 101

Table 57: Effectivness of Security Patterns in DB .................................................. 101

Table 58: Effectivness of Security Patterns in DP................................................... 101

Table 59: Effectivness of Security Patterns in DD .................................................. 102

Table 60: Effectiveness of Security Patterns in KM................................................ 102

Page 10: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

ix

List of Figures

Figure 1: NIST Work Breakdown Structure .............................................................. 10

Figure 2: Structure of PP & ST Document ................................................................ 18

Figure 3: Organization and Construction of Requirements ....................................... 19

Figure 4: Purpose and Scope for GoF Approach ....................................................... 28

Figure 5: Pattern and Problem Categories for POSA Approach................................ 28

Figure 6: Levels of Solution for Security Patterns..................................................... 29

Figure 7: Steps and Archifacts of Research Approach .............................................. 32

Figure 8: SFRs Usage in STs ..................................................................................... 36

Figure 9: Relationship Between Number of SFRs and EAL ..................................... 38

Figure 10: Relationship Between Number of SFRs and EAL (Subset) ..................... 39

Figure 11: Dataset 1: Number of SFRs by SFR Classes in STs ................................ 61

Figure 12: Dataset 2: Number of SFRs by SO in STs ............................................... 63

Page 11: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

x

Abbreviations

CC Common Criteria

EAL Evaluation Assurance Level

IT Information Technology

PP Protection Profile

SF Security Function

SFP Security Function Policy

SO Security Objective

ST Security Target

TOE Target of Evaluation

TSF TOE Security Functions

TSP TOE Security Policy

Page 12: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

xi

Abstract

Research experience shows that security needs to be considered from the

beginning of software development life cycle to avoid expensive rework and reduce

potential security vulnerabilities. Hence, defining the right set of security functional

requirements (SFRs) and evaluated assurance level (EAL) becomes a critical task for

developers when developing secure software. Much effort has been put into creating

industry standards to provide a shared common base for stakeholders with concerns

on security. One of the industry standards, which is used widely in both industry and

government sides in many countries, is Common Criteria (CC). However, one of the

drawbacks of Common Criteria is the inefficiency of use. Moreover, with limited

project information in the early lifecycle phase, it is hard for developers with less

security experience to select the right security requirements from what are defined in

CC. Extensions on it and experiences from empirical studies on using it are

demanded to achieve a better and more efficient use of CC, which also benefits

developers by saving their effort on security functional requirements definition.

A thorough analysis has been done on a dataset consisted by the Security Target

(ST) files of 242 security products published on common criteria portal website. A

mapping between security objectives and SFRs is presented, which can save much

development effort by reduce the range of candidate SFRs when developers know

the project’s security objectives in the early phases. In the cases when developers

only know the product domain of this project, SFR patterns for nine different

domains of security products are presented based on the statistic result from the

Page 13: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

xii

published 242 security products, which can be customized or directly used for

particular security application. The analysis result of correlations among SFR classes

defined in CC and correlations among security objectives provide a good guidance

for developers in designing the architecture of security products. A trend shows that

EAL tends to increase when the number of SFRs increases. It is not strongly proved

by the current dataset, but shows a research direction for further discussion and

explorations in the future.

To validate the correctness of the mapping scheme between security objectives and

SFRs, each of the ST files is reviewed to find out the consistency and difference

between the presented mapping scheme with the actual selected SFRs in 242 security

products with certain security objectives. A method is presented to evaluate the

effectiveness of these security patterns, which can be used as a factor for developers

when to consider applying the patterns for actual use.

Page 14: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

1

Chapter 1: Introduction

Today security has become an important issue in not only government departments

but also commercial companies. Much effort has been devoted to design security

products, such as firewalls, intrusion detection systems, data protection systems and

so on. Software that did not have security features in the past, such as database, must

be upgraded to include security features to become secure systems. In terms of

physical representation, a security product can include software, firmware, hardware

and supported documentation. Developers, when designing a new security system,

have choices of developing originally, using Commercial Off-the-Shelf (COTS)

security products and subscribing security services. No matter what choice is made,

developers need to find out the security objectives and security requirements for later

development or being used as one critical criteria for choosing security COTS

products and subscribing security services.

Security in the past was often treated as an add-on on other requirements. Security

patches were largely applied during software maintenance phase to add protections.

This approach is expensive on both the developer and user sides. It is well known

that the later a bug is fixed the more expensive it is to fix it. Since the patching often

happens after the software is delivered, it is expensive to develop the patches. It is

also a time-consuming job for users to install the security patches every time they get

updated. In terms of effectiveness, security patches are designed after the launch of

many successful attacks on one or many security vulnerabilities. Hence users already

Page 15: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

2

suffered with the loss of asset values caused by the attacks in the most cases.

Changes on the old approach are highly demanded because of these drawbacks. The

most critical change is to consider security from the beginning of software

development life cycle (SDLC) to address potential threats and enforce organization

security policies. It is not hard to understand the requirements of security patches

since they are clearly driven by discovered vulnerabilities. However, with very

limited information in the beginning phase, it is often hard for developers especially

those with limited security knowledge to determine the right set of security

requirements for the security product. Furthermore, it is a hard task to describe these

security requirements in a way to minimize the ambiguity of them. It is also

important for other stakeholders, such as users and administrators, to interpret the

security requirements in the same way. Industry standards such as Common Criteria

(CC) [13] address this problem by defining security requirements, which provides a

shared common knowledge base. By selecting security functional requirements (SFR)

and evaluated assurance level (EAL) defined in CC, developers can then record them

into a documentation called security target (ST), which is also defined in CC for

future review by certification people or other stakeholders like customers.

CC has a comprehensive set of SFRs that includes 138 SFR components and is

grouped into 11 classes, which is an obvious advantage for wide use. However, it

may become an disadvantage for developers to spend effort on studying each SFR

component defined in CC. Especially when developers only interested in a few

security objectives such as authentication, it is a huge waste of effort for them to

Page 16: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

3

study all SFRs to be able to select the appropriate SFRs. One contribution of my

research is to map SFRs in CC to the security objectives defined in section 2.1, hence

reduce the number of candidate SFRs for developers to explore. Security objectives

are defined by analyzing the system assumptions and potential threats of certain

security product. Since the assumption and threats may vary a lot for different

security product in different environments, how to define security objectives is not

addressed in this research. This research focuses on how to select SFRs after

developers know what the product’s security objectives are. For further increasing

the efficiency of selecting SFRs, this research also defines several SFR packages

with different rigor levels or emphasize for certain security objective. These SFR

packages are first designed based on the definitions of SFRs in CC. The SFR

packages then are refined by observing the difference and extracting the

commonalities in the selected SFR set from a big dataset, which includes ST files for

242 validated security products published on Common Criteria portal website.

Security products can be grouped into domains based on the common

characteristics they share. Examples of characteristics can be threats, IT-environment,

security objectives, etc. Domain specific software architecture (DSSA) is a

successful example to explore architecture patterns [39, 40, 25]. It is also valuable to

discover security requirements patterns for each security product domain with two

major advantages: First, it helps us to understand nature of the problem that this

domain’s security products address. Second, it provides a good set of requirements

for future reuse.

Page 17: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

4

Developer especially architect person is interested in the coupling and cohesion as

important metrics for evaluating the design. Coupling measures the degree of one

component dependent on another component [10]. While cohesion measures how

strongly related and focused responsibilities of a single component [47]. [19][32][41]

state that low coupling and high cohesion lead to reliable and maintainable products.

When designing security products, it is also important to achieve low coupling and

high cohesion, which requires we understand the relationships or correlations among

SFRs.

In a summary, developers can benefit from this research in four aspects:

• With the least knowledge of the products’ security objectives, developers can use

the result shown in table, to focus on the SFRs mapping to the particular security

objective instead of exploring the whole set of SFRs.

• With advanced knowledge in products’ security objectives, such as rigor levels,

developers can apply the SFR packages to their security products with

considerations in variations as stated in section 5.

• With knowledge of domain that the product belongs to, developers can customize

the security pattern for particular domains as stated in in section 6.

• Use the correlation between SFRs stated in section 5 as a guideline in developing

security system architecture.

Page 18: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

5

The rest paper is structured as following: Section 2 gives a review of background

and related work. Section 3 explains the research approach. Section 4 discusses the

ST dataset context and general observations on it. Section 5 shows the results of

analyzing STs on SFR packages for different security objectives, SFRs’ correlation

and SFR patterns in security product domains. Section 6 describes the validation

approach used in this research and the initial validation result. Section 7 summarizes

the research status at this point and provides a completion plan for the future work.

Page 19: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

6

Chapter 2: Background and Related Work

Section 2.1 outlines the security taxonomy used in this research. Section 2.2

outlines the research about security extension on software development process.

Section 2.3 discusses some existing standards on defining security requirements and

levels. Section 2.4 outlines the background of pattern approach and current research

on security pattern analysis and exploring.

2.1 Security Objectives Taxonomy

Security objective for certain security product is targeting on one higher

abstraction level than SFRs for addressing system’s security threats and enforcing

organizational security policies.

Security objectives, if grouped based on the phases of treating security attacks, can

be preventive, detective and corrective. Preventive security objectives targeting on

security mechanism that can effectively prevent attack before it has any effect on the

system. Detective security objectives targets on security mechanisms that can

quickly and effectively detect intrusion or abnormal behaviors if there is any, and

covers subsequently actions or responses. Corrective security objective focuses on

system recovery or data recovery when system or integrity of data is comprised. CC

defines standards for SFRs, not for security objectives. In this section, I want to

present the taxonomy of security objectives, which provides a consistent language

when talking about security objectives in this research.

Preventive

Page 20: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

7

Identification & Authentication: Identify an unknown user using attributes such as

username. Authentication is to prove somebody is whom he claims to be by

verifying the security attributes, such as password. It is the most basic security

objective.

Confidentiality: Protect information from unauthorized disclosure. Confidentiality is

a complex security objective compared with others. It contains several aspects, or

sub objectives: access control, information flow control, encryption, and residual

data protection. It is important to not confuse access control with authorization [17].

Authorization is to make sure if a subject has the proper permission to perform

actions (e.g., read, modify, delete) on an object, and it is often required that the

subject is authenticated. While access control controls the access/operations on an

object based on more general rules, such as system time or host IP address.

Integrity: Integrity protects information from unauthorized modification instead of

disclosure. It is also possible that integrity is compromised by authorized users’

mistakes.

Availability: It ensures the accessibility of information and continuousness of system

functionalities.

Non-repudiation: It ensures that the sender cannot deny he sent the information and

the receiver cannot deny the receipt of the information, by assuring the identity of

both the originator and recipient of transmitted information. A good example of

security mechanisms for it is digital signature.

Page 21: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

8

Security Management: It provides users with certain roles the ability to customize

the use of security mechanisms in a security product. The management can be switch

on/off or customize a security function, or management security attributes of users or

roles. This security objective is not highly related with protection on system or

information, hence is quite distinctive with others.

Privacy: Privacy targets on user’s identity or actions non-observable to others, even

TSF. This security objective is specific because it sometimes conflicts with other

security objectives such as accountability. Unobservability makes user’s action

unaccountable.

Detective

Accountability: It provides functionalities for generating records for system behavior

or user actions, which can be used for future review.

Intrusion Detection and Response: It addresses the detection instead of prevention of

certain intrusion. It also covers the potential response activities such as security

alarms in case of detecting an intrusion.

Corrective:

Recoverability: It covers two aspects: data recoverability and system function

recoverability. Data recoverability includes data correction after unauthorized

modifications. System function recoverability requires that system recovers to a

secure state and/or is still able to provide the key functionalities after certain failure

happens.

Page 22: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

9

2.2 Security Considerations in SDLC

Security in software–intensive systems is now a high–priority objective for both

government organizations and industry companies. Designing and implementing

systems with security requirements using traditional approaches for systems often

results incomplete coverage of real threats, and provide little assurance that any

security capabilities developed for the system adequately defend the system against

their intended threats. Traditional standards for software engineering processes often

treat security requirements like other quality requirements. But, achieving moderate

to high levels of security requires more consideration than is needed for most other

system qualities, such as usability. Because of the difficulties achieving security,

new activities (e.g. threat analysis security requirement specification, emergency

response planning) need to be added into traditional software development process.

This section outlines some work on defining the special process for developing

security software and the evaluation models for these security specific processes.

2.2.1 NIST Special Publications

National Institute of Standards and Technologies (NIST) drives this effort in many

aspects. [30] integrates security consideration into the capital planning and

investment control process. [24] defines security-related key roles and their

responsibilities throughout the software development life cycle (SDLC). Figure 1

shows the security considerations in different phases of SDLC.

Page 23: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

10

Figure 1: NIST Work Breakdown Structure

[24] does not discuss each of these security activities in detail, hence NIST

published several other documents address on particular security activities. [18]

describes a standard approach for categorizing security IT systems. Three levels of

threat’s impact on systems are defined in [18]: Low, moderate or high. The security

categorization can be used as one criteria for selecting security controls for the target

systems. [37] defines the risk assessment method for identifying preliminary

security-related risks, which can be used as another criteria for selecting security

controls. Developers can select security functional and assurance requirements from

Common Criteria [13] for security requirement analysis in acquisition/development

phase. [38] provides the guide for developing a security plan. [44] describes an

framework of building a security awareness and training system for developers and

other key stakeholders.

Page 24: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

11

2.2.2 MBASE Security Extensions

Model-Based (System) Architecting and Software Engineering (MBASE) [5] was

developed by the Center for Software and System Engineering (CSSE) at the

University of Southern California in 1997. It defines a set of guidelines for

approaches to integrate the process, product, property and success models for

developing a software system. MBASE is an extension of the risk-driven, iterative

Win-Win Spiral approach also developed at USC [6], so that it could provide more

of an iterative method. MBASE consists of two sets of documentation: the first set is

developed in the inception and elaboration phases, which include the Operational

Concept Description (OCD), the System and Software Requirements Definition

(SSRD), the System and software Architecture Description (SSAD), the Life Cycle

Plan (LCP), and the Feasibility Rationale Description (FRD). The second set is

developed in the construction, transition, & support (CTS) phases. MBASE defines

three critical project milestones: Life Cycle Objectives (LCO), Life Cycle

Architecture (LCA), and the Initial Operational Capability (IOC). LCO is achieved at

the end of the inception phase, LCA is achieved at the end of the elaboration phase

and IOC is achieved at the end of the construction phase. MBASE has been used by

USC’s graduate software engineering students since 1999 to work with campus

service providers to develop and transition working e-services applications in USC’s

CS577 software development project course. However, MBASE does not have

specific guidelines for developers about what and how to do when they are

developing secure software.

Page 25: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

12

[45] defines a extended framework based on MBASE to address special activities

when developing a secure software. Table 1 is a security extension on what need to

be included in MBASE document at LCO and LCA anchor point [7].

LCO LCA OCD Organization security goals and policies

Project security goals System security environment Security related stakeholders identified System artifacts classification and access control System security capabilities Level of services (LOSs) including security objectives Rules of behavior

Elaboration about organization and project security goals. Elaboration about access control on system artifacts Elaboration about system security capabilities and LOSs

SSRD Security functional requirements (SFRs) Security assurance requirements (SARs) Development requirements Development constraints LOSs requirements Security requirements for deployment, transition, and support environment

Elaboration about SFR and SAR by increment Elaboration about other requirements if any

SSAD Top-level definition of at least one feasible security architecture

Choice of security architecture Satisfy evolutional requirements

LCP Security planning • Top level of WWWWWHH* by stage Security activities in inception, production and support stage Stakeholders’ security related responsibilities Auditing and Monitoring Top-level Security Risk Control Security Certification and Accreditation Security Assurance

Elaboration about WWWWWHH by increment Elaboration about security assurance level and security risk control Elaboration about Security Certification and Accreditation

FRD Business analysis of security solution SFR & SAR satisfaction Security Risk assessment • Vulnerability analysis • Threat Analysis COTs security assessment if any

Assurance of consistency All major security risks covered by risk mitigation or acceptance/response plan

Table 1: MBASE Completion Criteria for Anchor Points

Page 26: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

13

We can see that security requirements need to be defined during inception phase

and completed at LCO anchor point. In both [24] and [45], the definition of security

requirements is a necessary activity in the early phase of SDLC.

2.2.3 SSE-CMM & IA-CMM

Systems Security Engineering-Capability Maturity Model (SSE-CMM) [28] is a

process reference model created for security system development process. It provides

a framework to measure and improve performances in the application of security

engineering principles. Same as Capability Maturity Model (CMM), SSE-CMM has

five capability levels: Capability level 1 - performed informally; capability level 2 -

planned and tracked; capability level 3 - well defined; capability level 4 -

quantitatively controlled; capability level 5 - continuously improving.

The INFOSEC Assurance Capability Maturity Model (IA-CMM) [29] addresses

INFOSEC assurance processes based on the SSE-CMM [28]. The IA-CMM defines

nine process areas and six capability levels from zero to five. A process rated high on

the IA-CMM scale is more likely to produce systems with high levels of security

assurance, with all other things being equal. The IA-CMM provides good criteria for

evaluate the maturity of a software development process for developing secure

software.

2.3 Security Evaluation Criteria

Developer with great security expertise may not have the same capability in

presenting the project security requirements. Industry or government standards [13,

Page 27: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

14

27, 42] provide a shared knowledge base and uniform representation of security

requirements, so that developers can select security requirements from standards for

direct or customize use. The evaluation methodologies defined in [13, 27, 42] also

establish the confidence of the product’s security functionalities. In this section, we

will talk about three well-used security evaluation criteria, and how they organize

security mechanisms and assurance into different classes or levels.

2.3.1 Trusted Computer Systems Evaluation Criteria

Trusted computer systems evaluation criteria (TCSEC, also known as Orange

Book) [42] was first published by Department of Defense in 1983. It has seven

security classes as shown in table 2, grouped into 4 divisions, where D is the lowest

and A is the highest. Each security class covers four aspects: Security policy,

accountability, assurance and documentation. Security policy and accountability

covers what security mechanisms need to be include to have access control

protection to information. Assurance describes how the system provides confidence

for these security mechanisms. Documentation includes the written evidence

required for each class.

Page 28: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

15

Division Name D Minimal Protection C1 Discretionary Security C2 Controlled Access Protection B1 Labeled Security Protection B2 Structured Protection B3 Security Domains A1 Verified Design

Table 2: Security Classes in Orange Book

Orange book mainly targets on security systems for government and military use.

Industry people find several deficiencies while applying it to security systems that

are used in commercial areas. The following are some major issues when applying

orange book to commercial security products:

• Orange book focuses on confidentiality, does not address well on integrity

and availability. However, Integrity and availability are more important than

confidentiality in some commercial areas, such as bank transaction system.

• Orange book uses government protection classifications, which are different

with commercial protection classifications.

• Orange book focuses on operating systems, which limits the domains of

security products that it can apply to.

Moreover, orange book does not separate security functionalities with security

assurance. Security functionalities and assurances are combined in one rating, where

security policy and accountability focus on security functionalities, and assurance

and documentation focus on security assurance. In terms of usability, it only

Page 29: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

16

provides 7 classes of security levels, hence does not have much flexibility for

customize use.

2.3.2 Information Technology Security Evaluation Criteria

Many other countries, mostly European, have much own experiences in security

evaluation. Orange book [42] triggers their interests in establishing consistent

evaluation criteria among different countries. Information Technology Security

Evaluation Criteria (ITSEC) [27] is the result of this collaborating effort. It is the

combination of the best parts of various countries’ evaluation criteria in a consistent

perspective with extensions on some parts.

ITSEC separates security functionalities and assurance, and organizes them

respectively as classes and levels. It has 10 security functionality classes labeled

from F1 to F10, where the functionality requirements in each class from F1 to F7 are

derived from security functional requirements defined in Level D to A1 in Orange

Book classes. F8 to F10 covers the integrity and availability requirements for static

data, and the integrity requirements for data in transmission. It has 7 assurance levels

labeled from E0 to E6, where E0 represents inadequate confidence and E6 represents

the highest level of confidence. The mapping between ITSEC security functionalities

classes plus assurance levels and Orange Book security classes is shown in table 3:

Page 30: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

17

ITSEC Security Functionality Orange Book E0 D

(F1, E1) C1 (F2, E2) C2 (F3, E3) B1 (F4, E4) B2 (F5, E5) B3 (F6, E6) A1

Table 3: ITSEC Levels Mapping with OB Levels

2.3.3 Common Criteria

Common Criteria (CC) version 1.0 [11] was published by National (NIST) in 1996.

Version 2.3 [13] incorporates feedback from extensive review and trials, and is

adopted as ISO 15408 in 1999. CC has two major goals:

• Provide common framework in defining security measures of security

products

• Provide formal evaluation method to establish the confidence of security

functionalities of security products.

The evaluation of security products validates security products’ security functional

requirements as well as the security assurance requirements. Common Criteria

provides a consistent requirement specification between developers, acquires,

evaluators and accrediators by defining 11 Security Functional Requirement (SFR)

classes and 9 Security Assurance Requirement (SAR) classes. Each class is further

grouped into families with different emphasis. The next level below family is

component, which is the smallest item that may be selected by developers as security

requirements. Common Criteria also allows developer to explicitly state SFR if he

cannot find a match from existing ones. CC also provides packages of security

Page 31: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

18

assurance requirements, as known as Evaluated Assurance Level (EAL), where EAL

1 has the lowest assurance. The provided EAL package facilitates developer’s work a

lot in selecting appropriate set of SARs. Developers can directly use or customize the

EAL package for the desired security assurance. In most evaluated security products,

the EAL package will be directly used or with slightly augment by replacing few

SAR components with higher rigor level ones.

CC also defines two documents: Protection Profile (PP) and Security Target (ST).

As defined in [26], both PP and ST describe a set of security functions and assurance

requirements for an information technology product or system (Target of evaluation,

i.e., TOE). The only difference is that PP describes requirements that are

implementation-independent, while ST describes requirements, mechanisms and

measures that are implementation-dependent. ST for a certain secure product can be

derived from one or several PPs or created independently. Figure 2 shows the

structure of PP and ST.

Figure 2: Structure of PP & ST Document

Section 1. Security Target Identification

Section 2. Description

Section 3. Security Environment

Section 4. Security Objectives

Section 5. Security Requirements

Section 6. TOE Summary Description

Section 7. PP Claims

Section 8. Rationale

Section 1. Protection Profile Information

Section 2. TOE Description

Section 3. TOE Security Environment

Section 4. Security Objectives

Section 5. Security Requirements

Section 6. Application Notes

Section 7. PP Rationale

PP (implementation independent) ST (implementation dependent)

Page 32: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

19

As shown in Figure 2, PP and ST has almost the same structure, except that section

6 of ST covers TOE implementation details (TOE security function and descriptions)

and section 7 specifies the PP if ST is derived from it. In both PP and ST, the chosen

SFRs and SARs for the security product are stated in section 5 “Security

Requirements”.

Figure 3: Organization and Construction of Requirements

As shown in Figure 3, SFR and SAR components can be grouped into reusable

packages and be included in PP or ST files. Common Criteria has done a good job in

grouping SAR components in 7 reusable packages, i.e. EALs, however it does not

define any reusable package for SFR components. There are several validated PPs

published on NIST site, which contains a combination set of SFRs and SARs defined

for a particular type of application (i.e., domain type), such as Operating System.

These PPs are created using a upside down approach and represent experts’ solutions

on security requirements for a certain domain of security products. In this thesis, I

Page 33: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

20

use a bottom-up approach to extract general solutions from the published STs on the

Common Criteria portal website [15]. Although not all the domains are covered in

this thesis, the proposed security objectives framework and their mappings with

SFRs can be used to apply to any domain for discovering security requirements

patterns.

2.3.3.1 Security Objectives Mapping with SFRs

Table 4 shows the result of mapping CC SFR families with security objectives.

Each row is a SFR family and each column is a security objective. The SFR family

instead of SFR class or SFR component is used because the family level is the sweet

point for maximizing the precision and reducing the complexity of the table. Please

refer to section 2.1 for definitions on these security objectives and Appendix B for

full names of SFR families.

Common Criteria Security Objectives

Class Family

Iden

tific

atio

n &

Aut

hent

icat

ion

Con

fiden

tialit

y

Inte

grity

Ava

ilabi

lity

Non

-rep

udia

tion

Secu

rity

M

anag

emen

t

Priv

acy

Acc

ount

abili

ty

Rec

over

abili

ty

ID&

R

ARP D

GEN D

SAA D

SAR D

SEL D Security

Audit (FAU) STG D

*D: Direct support I: Indirect support

Table 4: Mapping Between SFR and Security Objectives

Page 34: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

21

Common Criteria Security Objectives

Class Family

Iden

tific

atio

n &

Aut

hent

icat

ion

Con

fiden

tialit

y

Inte

grity

Ava

ilabi

lity

Non

-rep

udia

tion

Secu

rity

M

anag

emen

t

Priv

acy

Acc

ount

abili

ty

Rec

over

abili

ty

ID&

R

NRO D Communication

(FCO) NRR D

CKM D D D Cryptographic Support (FCS) COP D D D

ACC D

ACF D

DAU D

ETC D

IFC D

IFF D

ITC D

ITT D D

RIP D

ROL D D

SDI D D

UCT D User Data Protection

(FDP) UIT D D

AFL D

ATD D I

SOS D

UAU D

UID D D D D Identification & authentication

(FIA) USB D

Table 4, Continued

Page 35: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

22

Common Criteria Security Objectives

Class Family

Iden

tific

atio

n &

Aut

hent

icat

ion

Con

fiden

tialit

y

Inte

grity

Ava

ilabi

lity

Non

-rep

udia

tion

Secu

rity

M

anag

emen

t

Priv

acy

Acc

ount

abili

ty

Rec

over

abili

ty

ID&

R

MOF D

MSA I I I D

MTD D

REV I I D

SAE D

SMF D Security Management

(FMT) SMR I I D

ANO D

PSE D

UNL D

Privacy (FPR) UNO D I

AMT I I I I I I I I I I

FLS I I I I I I I I D I

ITA D

ITC D

ITI D D

ITT D D

PHP I D

RCV D

RPL D

RVM I D I I I I I I I I Protection of

the TSF (FPT) SEP I D I I I I I I I I

Table 4, Continued

Page 36: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

23

Common Criteria Security Objectives

Class Family

Iden

tific

atio

n &

Aut

hent

icat

ion

Con

fiden

tialit

y

Inte

grity

Ava

ilabi

lity

Non

-rep

udia

tion

Secu

rity

M

anag

emen

t

Priv

acy

Acc

ount

abili

ty

Rec

over

abili

ty

ID&

R

SSP I

STM I D

TDC D

TRC D Protection of

the TSF (FPT) TST I I D I I I I I I I

FLT D

PRS D Resource Utilization

(FRU) RSA D

LSA I

MCS I

SSL I D

TAB I

TAH I TOE Access

(FTA) TSE I D

ITC I D I Trusted path/

channels (FTP) TRP I D I

Table 4, Continued

As you can see from this table, Common Criteria SFR classes and security

objectives have many to many relationships. For examples, the integrity security

objective can be satisfied by SFR components from different classes, such as FCS,

FDP and FPT. While requirements in FCS class can satisfy more than one security

objectives: Confidentiality, integrity and non-repudiation. The second example is

Page 37: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

24

more interesting for developers because it indicates that the implementation of one

set of SFRs may satisfy multiple security objectives.

FMT is a special SFR class defined in CC. Unlike other classes which adds the

security to the TOE, several requirements in FMT such as management of functions

in TSF (FMT_MOF) and specifications of management functions (FMT_SMF) add

on usability or flexibility for other selected SFRs. For example, FMT_MOF allows

special users such as administrator to turn on/off or modify a security function,

which provides more flexibility. However, one can argue that this requirement

actually reduces the security rigor because it relies on the assumption that

administrator will never be malicious. There are requirements in FMT also provides

more security rigor, such as security attributes expiration (FMT_SAE). It enforces

time limits for the validity of security attributes. Hence, security management is

defined as a separate security objective and is satisfied by SFRs in FMT. Another

special class is FPT. As shown in the table, several requirements in FPT support all

security objectives since they protect all the TSF functions. Requirements such as

domain separation (FPT_SEP) are necessary when developing secure software with

high level of robustness. If the TOE has high expectation on confidentiality, it is also

necessary to include non-bypassability of TSP (FPT_RVM), which ensures that

security polices such as access control policies are followed.

Privacy needs to be defined as a separate security objective than confidentiality.

Confidentiality cares about data or information, which are usually objects in the

system. Privacy, on the other hand, protects user identity from being disclosure and

Page 38: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

25

protects users’ activities from being observed. Developers need to be very careful in

choosing requirement for privacy, since it may be contradict with SFRs for other

security objectives, such as accountability. For example, anonymity (FPR_ANO)

requires user may use a resource or service without disclose its identity to other

authorized users (E.g., administrator), even TSF. It conflicts with auditing data

associated with user identities (FAU_GEN.2). Unobservaility (FPR_UNO) is special

in FPR since it tries to hide the resource or service being used instead of hiding user

identity. This requirement is often selected by security products in IC and smart card

domain, we will see it from the analyzed result of ST files as shown in Section 5.

2.3.3.2 Security Target

Security Target is formal document defined in CC as a key element in the

evaluation process. It’s contents include security objectives, functional and assurance

requirements, summary specification, PP claims, and rationales. It may conform to

an existing PP and becomes a implementation-dependent response for a certain PP,

or may be created independently, as shown in table 5.

Page 39: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

26

Section Name Content Section 1. Security Target Identification

Identify the name and nature of ST. Provide the overview of ST and relationship with other ST or PP

Section 2. Description

Describe TOE’s type, architecture and system boundaries, which includes physical and logical boundaries.

Section 3. Security Environment

State security assumptions and threats for the TOE and operational environment. Operational environment includes IT environment and non-IT environment. Describe organizational security polices, which applies to both TOE and operational environment.

Section 4. Security Objectives

Describe security objectives for TOE and its IT and non-IT environment.

Section 5. Security Requirements

Describe the SFRs and SARs for implementing security objectives in section 4, SFRs can be explicit stated.

Section 6. TOE Summary Description

Describe TOE security functions; Security assurance measures details are discussed.

Section 7. PP Claims

Identify dependent PP and any tailoring if applicable.

Section 8. Rationale

Demonstrate security objectives mapping to threats, system assumptions and security policies; Demonstrate SFRs satisfies security objectives; Demonstrate security functions implement SFRs;

Table 5: Contents of ST Sections

We will focus on the analysis of section 4, 5 and 6 of validated ST files. The table

of mapping security objectives with SFRs can be validated by information provided

in section 4 and 6. SFRs packages and SFR patterns for different security product

domains can be derived from information provided in section 5 and 6.

2.4 Software Pattern and Security Pattern

The increasing need of security in both government and industry demands more

security engineering methodologies to foster the development of secure software.

One of the biggest efforts is to explore security patterns. Pattern in general has been

successfully used in software design and development for capturing the best

practices. It is usually a generic solution derived from expert knowledge or existing

Page 40: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

27

solutions for solving a particular set of problems. Christopher Alexander is the first

person to raise this pattern concept in [1] and [2]. As he wrote in his books:

“Pattern: Each pattern is a three-part rule, which expresses a relation between a

certain context, a problem, and a solution.”

He explained further with his statement: “Each pattern describes a problem which

occurs over and over again in our environment, and then describes the core of the

solution to that problem…” Alexander also suggests that every pattern should have a

common structure, which is beneficial of comparing and organizing them. [33]

claims five mandatory elements necessary for a pattern: Name, Context, Problem,

Forces and Solution. What is covered in each of these five pattern elements for SFR

patterns is shown in table 6:

Pattern Elements Contents Name Domain Name Context Major security features, IT-environment, major assumptions if

specific for this domain Problem Threats Forces Variations of the selected SFRs for different scenarios Solution SFRs that are selected by most of security products in this

domain, which fit in the context and addresses the problems. Table 6: Element Content of SFR Pattern

Template of patterns often has a fixed structure, which provides a common

framework for classifying patterns. The two most used pattern templates are GoF

approach [22] and POSA approach [9]. The defined criteria and related pattern types

from these two approaches are shown in Figure 4 and 5:

Page 41: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

28

Figure 4: Purpose and Scope for GoF Approach

Figure 5: Pattern and Problem Categories for POSA Approach

SFR pattern discussed in section 6 matches with the criteria defined in POSA

approach, with the exception that SFR pattern is in requirement level, which is even

one level higher than the architectural patterns (High Level) defined in POSA

approach. The correlations among SFRs stated in section 5 provide some valuable

information for developing the architectural patterns.

Page 42: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

29

[35] gives a definition of security pattern:

“Security Pattern: A security pattern describes a particular recurring security

problem that arises in a specific security context and presents a well-proven generic

scheme for a security solution.”

Depending on the problem, solution may have two dimensions in terms of levels of

patterns. In one dimension, the process for developing secure software may follow

different patterns in different phases of lifecycle. One example could be the

organization’s work breakdown structure, which shows a specific process pattern

works only for a particular organization. The existing industry standards are more

general patterns, where organizations can optimize the standards for their customize

use. The other dimension is the abstraction level of the solution. As shown in Figure,

the solution can have different levels – Organization, system, requirement,

architecture and implementation.

Figure 6: Levels of Solution for Security Patterns

Page 43: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

30

[34] discovers security pattern in defining organization security policy and

responsibilities related with different security roles. [46, 8, 20] explores security

patterns in architecture level. [43, 36] provides security patterns in security

application code. However, there is not too much work addresses security pattern in

the requirement level as shown in Figure 6. In this thesis, I try to explore the

requirement level of security patterns in security product domains using a standard

SFR definition provided by CC.

Kerth and Cunningham groups the processes that investigators use to find patterns

into three general categories [31], it may not be a complete list and investigators may

use a combination of approaches:

• Introspective approach: People define patterns reflecting their own experiences

on a particular problem.

• Artifactual approach: People discover patterns by studying different products

designed for solving similar problems.

• Sociological approach: People exchange their experiences and opinions in their

solutions, and discover patterns by finding out the common and good practices.

Page 44: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

31

Each of these approaches has its advantages and disadvantages, as shown in Table

7:

Advantages Disadvantages Introspective approach

Reflects expert opinions, often demonstrated by examples or actual solutions

Pattern reflects personal style, may need further evaluation and agreement from others

Artifactual approach

Author’s effort to obtain a generic approach from many existing solutions

Patterns may not be a direct solution; may need further evaluation and refinement

Sociological approach

Comes out good solution agreed and accepted by many experts

Big communication effort; sometimes it is hard to achieve an agreement

Table 7: Advantages and Disvantages of Pattern Exploring Approach

In this thesis, I will use the artifactual approach for discovering patterns in security

requirements. I try to discover the generic security pattern based on Security Target

files of 256 validated products listed on Common Criteria Portal site. As stated in

table, developers may not be able to directly use the discovered pattern as a set of

security requirements for their targeted application. However, the requirement

pattern reflects the common practices from many existing validated security products,

hence it provides a good start set for developers to extend on.

Page 45: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

32

Chapter 3: Research Approach

Common Criteria defines 7 reusable packages of SARs (EALs), however it does not

define reusable packages of SFRs. One of the goals of this research is to define

reusable SFR packages targeting on different security objectives based on the

analysis result of 242 STs. Furthermore, the goal is to present SFR packages with

broader scope (i.e., SFR pattern) that fit in different domains of security products.

Another goal of this research is to discover the dependency relationship among SFRs,

which is interested to architect when determining the component structure. To

achieving these goals, the research approach is shown in Figure 7:

Figure 7: Steps and Archifacts of Research Approach

The preparation work is to map SFR defined in CC with security objectives, which

is described in section 2.1. The result of mapping presents the group of SFRs that

Page 46: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

33

should be selected to achieve certain security objective. In this research, the first step

is to explore and cleanup the dataset. Result of this step is a big table, where each

row is a TOE (Total 242), each column is a SFR component, each cell of the table

shows the number of certain SFR component selected in the TOE. In this table, 189

TOEs are grouped into 9 domains, and the rest 53 TOEs are not grouped into any

domains. The second step is to do some simple statistics analysis of the big table of

242 STs derived from the first step. Results in this step show the usage of SFR

classes in these STs and the relationship between EAL & SFR. The third step is to

define reusable SFR packages with different levels. With basic knowledge of what

security objectives are required in this secure software and in what level, developers

can find out the corresponding reusable SFR packages defined in this step for

directly use or customization. Step 3 explores the total 189 STs as one set. The fourth

step discovers the correlations among SFRs, which provides valuable information for

security architecture design. The fifth step explores the 189 STs as 9 sets, where each

set matches with a particular domain. Results of this step are security requirements

pattern for each domain, which can be customized for a new product’s use if it fits in

any of these domains. The last step is the validation of all the results derived from

step 3 and 5.

Page 47: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

34

Chapter 4: Data Context and General Observations

The 242 security target files (STs) for analysis are selected from more than 300

validated security products published on the Common Criteria portal website [15].

For obviating single product or single company’s overwhelming impact on the

overall analysis result, we only include the ST for the latest version of the security

product if there is no big difference in SFRs chosen by these different versions of

same security product. These STs were written for security products designed by

different companies: Microsoft, IBM, Cisco, Sun, Symantec, McAfee, etc. In terms

of nationality, they come from different countries, including US, Canada, German,

England, Australia, etc. 189 out of 242 STs are grouped into 9 domains. Table shows

the average number of TOE SFRs, the range of TOE SFR, the average EAL, the

range of EAL and total number of data points in each of these 9 domains.

Domain Name Avg num of TOE SFR

Range of TOE SFR

Avg EAL

Range of EAL

Num of STs

Access Control Devices and Systems 19.00 [8, 38] 2.65 [2, 4] 10

Boundary Protection Devices and Systems 22.21 [4,46] 3.23 [1,4+] 42

Database 23.27 [2,39] 3.73 [2,4+] 11 Data Protection 22.56 [1, 69] 2.47 [1, 4+] 16

Detection Devices and Systems 18.43 [10, 29] 2.14 [2, 3] 7

ICs, Smart Cards and Smart Cards related

Devices and Systems 33.97 [3, 91] 4.47 [2+, 5+] 36

Key Management systems 29.36 [7, 76] 3.25 [1+, 4+] 13 Network and Network

related Devices and Systems

22.86 [4, 45] 2.73 [1, 4+] 28

Operating Systems 35.88 [11, 107] 3.81 [2, 5] 26 Table 8: Summaries of Security Products in Different Domains

Page 48: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

35

There are no big differences on number of SFRs in these domains. Security

products in operating system domain contains the most SFRs because they tend to

provide more rich security functionalities with different aspects compared with

security products in other domains, where security products focus on few aspects of

security. The average EAL of security products in smart card domain is the highest

compared with other domains. The main reason is that security products in this

domain often protect highly desirable assets such as credit card information, hence

requires relatively high assurance in security functionalities they provide. There are

42 STs in boundary protection devices and systems, which shows that security

products in this domain such as firewall are still the biggest interest of Industry. 35

STs in smart card domain represent the interest of security from business side,

mainly credit card companies.

4.1 SFR Classes Usage

Not every SFR class defined in Common Criteria is equally used in these STs. As

shown in Figure, five most frequently used SFR classes are FAU (73%), FDP (90%),

FIA (83%), FMT (90%) and FPT (85%). With the mapping result of SFRs and

security objectives discussed in section 2.2.3.1, some explanations can be made as

following:

Page 49: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

36

0

50

100

150

200

250

FAU FCO FCS FDP FIA FMT FPR FPT FRU FTA FTP

177

23

109

217201

217

26

206

36 4160

Figure 8: SFRs Usage in STs

Since nothing is perfectly secure, it is always good to have some records of system

behavior or events for future review. Many security products include at least the

audit data generation requirements defined in FAU. FDP is frequently used for

protecting user data for confidentiality, integrity, availability and recoverability. The

242 security products in our dataset are more emphasize on data confidentiality than

integrity. One of the reasons could be the implementation of detecting unauthorized

changes is harder than protection from disclosures. FIA provides identification and

authentication requirements. They are the most basic security mechanisms, hence are

used in most security products. Unlike FAU, FDP and FIA, FMT and FPT do not

directly addressed any security objectives, however they provide requirement for

supportive functionalities, such as security attributes management and reliable time

stamps. Hence SFRs in FMT and FPT are more or less used in most security

products.

Page 50: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

37

FRU, which addresses resources availability, only included in less than 15%

validated security products, mainly from database, smart card and operating system

domains. We can see that deny of service (DoS) type of attacks are not addressed

enough in this dataset. FCO and FPR target on non-repudiation and privacy. They

are not typical security mechanisms like identification& authentication and access

confidentiality, hence are not frequently used in this dataset.

4.2 SFR & EAL: General Trends

There is a fluctuation in the approach of handling security functional requirements

and security assurance requirements. Orange book [42] defines each security class as

a combination of some SFRs and SARs, while ITSEC [27] defines separate security

levels for them. Common Criteria v2.3 [13] defines 7 EALs for SARs, but does not

define any level for SFRs. But Common Criteria v3.1 [14] has the trend of

combining some SFRs and SARs back together. In this section, I want to explore on

the relationship between SFRs and EAL using the 242 published STs.

Page 51: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

38

Figure 9: Relationship Between Number of SFRs and EAL

As shown in Figure 9, there is an unobvious trend that the assurance level of TOE

increases when the number of SFRs of TOE increases. Customers need to be

satisfied by not only the rich security functionalities, but also by the confidence of

security. Exceptional cases exist that, for some security products, such as device

drivers, they may have few SFRs but extremely high EAL because they are used in

system required very high assurance. Another observation from Figure 9 is: For

security products with EAL higher than 5, the number of SFRs in them are less than

25. The major reason is that it is extremely expensive to achieve EAL higher than 5

for a relatively complex product with many SFRs. I have done a sensibility analysis

to delete few boundary data points to see whether there is a different result. Five data

points have been deleted as marked in Figure 10. Three of them are from OS, KMS,

DP, and two of them are not from any of these nine domains. The result shows that

the trend becomes clearer compared with the trend shown in Figure 9. Since the

number of security products with EAL higher than 5 is much less than the rest, it is

Page 52: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

39

not a very strong evidence to derive the conclusion that the EAL of TOE tends to

increase when the number of SFRs of TOE increases. But the result in Figure 10

shows one aspect of the fact that leads to a clear direction for further discussion and

explorations in the future.

Figure 10: Relationship Between Number of SFRs and EAL (Subset)

However, we should also consider that the assurance level of security product can

be affected by but not limited to the following factors:

• Domain type: For security products in certain domain, they tend to have

relatively high EAL. For example, as shown in table 8, out of 36 security

products in IC and smart card systems, the average EAL is 4.47.

• Mandatory requirement: In certain cases, EAL of security product is mandatory

required by the acquirer of the product.

Page 53: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

40

• Limited resources: There are not enough resources to achieve the desired EAL.

For example, developers are not capable of doing the formally verified design.

Or there is not enough budget and time for doing it.

4.3 Observations on Security Projects Through

Timeline

After the discussion of general analysis on the EAL and SFRs of these ST files, it

is also very interesting to see how the design of security projects changes through

different time periods, in other words, the change of selected EAL and SFRs. We all

know that security is important for business applications, and it is even more

important for government applications, since the assets protected by those

applications often have higher sensitive levels, which means they contain not only $

values but also personal lives even national safety. After the tragedy in September

11th, U.S. government put much effort and resources to increase the security level in

many aspects. In this thesis, we want to explore these ST files to discover any trace

showing in these data.

Page 54: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

41

The following table shows the number of STs, the average EAL and the average of

number of SFRs in year(s) from 1997 to 2005.

Year NumofSTs EAL TOESFR 1997 to 2001 29 2.86 22.45 2002 40 3.41 28.65 2003 39 3.26 25.26 2004 46 3.30 25.74 2005 88 3.22 24.74

Table 9: Average EAL & Number of SFRs

As we can see from the table, there are only 29 STs published from 1997 to 2001,

but there are 40 ST files in 2002 one year. In 2005, the number of certified ST files

increased to 88. It not only shows that common criteria is accepted by more people

in both industry and government side, but also shows that security is required in

many fields, and hence is involved in more projects than before. From the average

EAL and the average of number of SFRs in each year, we can see that there is a big

increase from [1997, 2001] to 2002. That shows the dramatic increase of needs for

security during 2002, on the aspects of both functionalities and assurance. One could

question whether it is because the tragedy happened on August 11th, 2001. After

2002, the development of security projects achieves a relatively steady state, where

the EAL and number of SFRs only have little fluctuation. The average of EAL and

number of SFRs in 2005 is little lower than 2004, because of the big number of

security products in 2005 that broads the range of security levels of these products.

To discover more details in how the development of security products changes, let

us take a look on the statistics result of security objectives during these periods. The

Page 55: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

42

information about the number and percentage of security products that have a certain

security objective in a particular period is shown in the table 10 and 11:

Table 10: Number of Security Products with Certain SO

Table 11: Percentages of Security Products with Certain SO

In table 10, the ‘23’ in the intersection cell of third column and second row

represents that there are 23 security products that have identification& authentication

as security objective from 1997 to 2001. In table 12, the ’79.3%’ in the intersection

cell of third column and second row represents that there are 79.3% of total 29

security products that have identification& authentication as security objective from

1997 to 2001. As shown in table 11 and 12, almost every security product has

security objective as confidentiality. Identification& authentication and security

management are also used in more than 80% of security products. Availability, non-

repudiation, privacy and recoverability are not commonly used in security products

as other security objectives. There is a trend that the percentages of security products

Year I&A Conf Integ Ava Non-R SM Priv Acc Rec IDR1997 to 2001 23 29 11 4 2 23 3 21 5 13

2002 33 40 21 8 7 38 6 26 8 222003 33 39 22 9 7 35 5 30 7 152004 40 46 28 7 2 43 5 30 10 192005 71 87 37 12 9 82 7 56 12 35Total 200 241 119 40 27 221 26 163 42 104

Numberof

SecurityProducts

Year I&A Conf Integ Ava Non-R SM Priv Acc Rec IDR1997 to2001 79.3% 100.0% 37.9% 13.8% 6.9% 79.3% 10.3% 72.4% 17.2% 44.8%2002 82.5% 100.0% 52.5% 20.0% 17.5% 95.0% 15.0% 65.0% 20.0% 55.0%2003 84.6% 100.0% 56.4% 23.1% 17.9% 89.7% 12.8% 76.9% 17.9% 38.5%2004 87.0% 100.0% 60.9% 15.2% 4.3% 93.5% 10.9% 65.2% 21.7% 41.3%2005 80.7% 98.9% 42.0% 13.6% 10.2% 93.2% 8.0% 63.6% 13.6% 39.8%Total 82.6% 99.6% 49.2% 16.5% 11.2% 91.3% 10.7% 67.4% 17.4% 43.0%

Percenta-ge ofSecurityProducts

Page 56: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

43

that have identification& authentication and integrity keep increasing from [1997,

2001] to 2004, which shows an increase of importance of these two security

objectives. Let us then look at the average number of SFRs that are used by security

products for achieving security objective in these years, as shown in Table 12.

Table 12: Average Number of SFRs for Achieving SO

There is a big increase of number of SFRs for all the security objectives from

[1997, 2001] to 2002, which shows that security schemes of products are stronger in

2002 than [1997, 2001]. The most SFRs are used for achieving confidentiality and

security management, since they are the two main functionalities that are selected by

almost every security product.

Year I&A Conf Integ Ava Non-R SM Priv Acc Rec IDR1997 to 2001 3.79 8.55 2.38 0.17 0.59 4.66 0.14 3.34 0.21 0.90

2002 4.55 10.73 3.70 0.35 1.33 6.43 0.20 3.38 0.53 1.182003 3.82 9.77 3.49 0.36 1.13 5.10 0.13 4.08 0.23 1.132004 3.65 9.15 2.80 0.30 0.20 6.78 0.13 4.11 0.30 0.832005 3.81 8.98 2.77 0.20 0.59 6.58 0.09 3.42 0.26 0.84Avg 3.92 9.44 3.03 0.28 0.77 5.91 0.14 3.67 0.31 0.97

Page 57: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

44

Chapter 5: Security Target Analysis Result

Security functional requirements selected in ST are grouped into SFRs for TOE

and SFRs for IT-environment. Since different TOE may have IT-environment with

providing different security requirements, some TOEs move the responsibility to its

environment. In this section, I will first present the reusable packages for each SFR

class defined in CC. I will then analysis the correlations between SFR classes and

correlations between security objectives. I will also explore the SFR patterns in

different domains as grouped in CC portal website.

Security functional requirement with more rigors does not necessarily increase the

size of the code for implementing the SFR, in other words, increase the effort of

development. Instead, some SFRs sacrifice other project attributes such as usability

and performance for getting stronger security requirements. One good example is

selective proof of origin (FCO_NRO.1) and enforced proof of origin (FCO_NRO.2).

The difference is that FCO_NRO.1 provides proof of origin upon request, while

FCO_NRO.2 provides proof of origin at all times. Apparently FCO_NRO.2 provides

stronger security than FCO_NRO.1, but they don’t have big difference in terms of

code implementations. FCO_NRO.2 sacrifices the product usability by enforcing the

generation of evidence for a list of information types.

Page 58: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

45

5.1 SFR Reusable Packages

In this section, the SFR reusable packages are grouped in two formats:

• The SFR packages can be formed based on emphasize on different aspects of

certain security objective.

• The SFR packages can be formed based on different rigor security level. For

example, SFR package with level 2 provides more security level for the security

objective that it supports than SFR package with level 1.

For any security objective, the SFR package may be defined in one or both formats.

5.1.1 Identification and Authentication

Identification and authentication (I&A) is a basic security objective that can be

used to can support the advanced security objectives, such as confidentiality. It direct

maps to FIA class defined in CC. There are total 13 SFRs that satisfy I&A, which

include user identification, authentication mechanism, specification of secrets,

authentication control, user security attributes self-definition and binding. SFRs

shown in table are used in more than 25% of security products that include

identification and authentication as one of security objectives:

Identification User identification before any action (UID.2); Timing of identification (UID.1); User attributes definition (ATD.1); User-subject binding (USB.1)

Authentication User authentication before any action (UAU.2); Timing of authentication (UAU.1); Authentication failure control (AFL.1); Verification of secrets (SOS.1); Protected authentication feedback UAU.7;

Table 13: SFR Packages for Identification and Authentication

Page 59: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

46

• User identification (FIA_UID.1/2) and user authentication (FIA_UAU.1/2) tends

to appear in pair since one can argue that it is not really secure if a user is

identified but not authenticated. However, exceptions exist where TOE does not

have authentication as security objectives, and it only provides identification for

supporting other security objectives, such as accountability. In some other cases,

TOE may rely on IT-environment for identification or authentication, or assume

only the authenticated person can access TOE because of the physical protection

of it.

• Multiple authentication mechanisms (UAU.5) is used when different

authentication mechanism is applied with different situations. The use of this

SFR is spread in almost every domain except database.

• Single-use authentication mechanism (UAU.4) ensures the authentication data

can only be used one time for some or all authentication mechanisms. It is mostly

used in boundary protection systems, IC/smart card related systems, and key

management systems.

• Re-authenticating (UAU.6) increases the rigor level of authentication by re-

authenticating the user with a specified time limit.

• Unforgeable authentication (UAU.3) is used in security products with very high

authentication requirement. This SFR is mostly used in IC/smart card related

security products.

Page 60: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

47

• Protected authentication feedback (UAU.7) can be treated as an add-on for

authentication requirement. It is often not hard to be implemented. E.g., the

password used typed in should not be shown in the original characters. It can be

protected using ‘*’ characters.

5.1.2 Confidentiality

Confidentiality includes several sub-objectives: access control, information flow

control, encryption and residual data protection, hence are supported by multiple

SFR classes. There are total 36 SFRs that support the sub-objectives of

confidentiality. These sub-objectives can be selected together or separately in

particular security product for satisfying confidentiality. In terms of the rigor level of

confidentiality, access control and/or information flow control is usually selected for

basic level of protection of confidentiality. Access control and encryption are used in

the security products with medium to high requirements on confidentiality, and at the

same time, the data being protected need to be accessible. However, residual data

protection (FDP_RIP) targets on data that is not in use anymore.

Access control and information flow control are directly supported by some SFRs

in FDP class, such as access control policies and functions (FDP_ACC, FDP_ACF),

information flow control policy and functions (FDP_IFC, FDP_IFF). It is also

indirectly supported by FIA_UID since identification is required for enforcing access

control polices. In normal cases, authorization should also rely on authentication

(FIA_UAU) to validate the identity of user before any authorization happens.

However, in some cases authentication may be excluded from TOE because the TOE

Page 61: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

48

is physically protected and only user with certain roles can access it or the IT-

environment provides the authentication. The difference between FDP_ACC and

FDP_IFC is that the previous one targets on the static user data while the later one

targets on the information flow under TSF control. If the TOE requires import or

export data out of TSF control, FDP_ETC and FDP_ITC should be considered to

include in the SFR set. Statistics result from these 242 STs show that there are more

security products with requirements in importing data (FDP_ITC) than exporting

data (FDP_ETC). One major reason for this is that cryptographic keys need to be

securely imported instead of being generated for some security products.

Level 1 Level 2 Static data access control

Access control on subset of operations FDP_ACC.1, FDP_ACF.1

Access control on all operations FDP_ACC.2, FDP_ACF.1

Information flow access control

Access control on subset of operations FDP_IFC.1, FDP_IFF.1

Access control on all operations FDP_IFC.2, FDP_IFF.1

Table 14: SFR Packages for Access Control

There are three main techniques of access control: Discretional access control

(DAC), mandatory access control (MAC) and role-based access control (RBAC) [21].

In DAC, each object has an owner and the access policies are determined by the

owner of the subject. In MAC, it is the system that defines the access control polices,

not the owners, and it is used in multilevel security systems. RBAC restrict not only

information but also function access to only authorized users with certain roles. In

some cases, security product may have more than one access control mechanism,

Page 62: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

49

where FDP_ACC and FDP_ACF needs to be iterated for different access control

policies and functions.

Encryption is a strong mechanism in protecting data confidentiality, especially for

export information, which may be out of TSF control. CC defines a single SFR class

called cryptographic support (FCS) for encryption-related requirements. The most

reusable SFR package for encryption are shown in table below:

Level 1 Level 2 Level 3 Crypto key operation FCS_COP.1

FCS_COP.1 FCS_CKM.1, FCS_CKM.4

FCS_CKM.1,[FCS_CKM.2], [FCS_CKM.3],FCS_CKM.4

Table 15: SFR Packages for Encryption

As defined in Common Criteria, Cryptographic key operation (FCS_COP.1) has

dependencies as cryptographic key generation (FCS_CKM.1) and cryptographic key

destruction (FCS_CKM.4), or import from outside TSF control (FDP_ITC.1). When

security product has requirement of crypto key operation, it has four choices of

satisfying the dependencies:

• Has requirement of cryptographic key generation and cryptographic key

destruction

• Has requirement of import cryptographic key from outside TSF control

• Has requirement of cryptographic key generation, and rely on IT-

environment for cryptographic key destruction requirement

• Rely on IT-environment for requirement of cryptographic key generation and

cryptographic key destruction

Page 63: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

50

Cryptographic key distribution (FCS_CKM.2) shall be selected when a secure

product needs to distribute the private or secret key to other trusted IT products. It is

also suitable when private or secret key need to be imported and exported every time

TSF initiates. Note import user data protection (FDP_ITC.1) and export user data

protection (FDP_ETC.1) are not suitable here because cryptographic key should not

be treated as user data. Cryptographic key access (FCS_CKM.3) shall be selected

when security system needs to store cryptographic key hence the key access method

should be specified.

Cryptographic key generation (FCS_CKM.1) and operation requirement

(FCS_COP.1) is not necessary in a one to one relationship. Security product with

digital signature functionality often has more cryptographic key operation

requirements than cryptographic key generation requirements, since a digital

signature can be created with each combination of hash key and private key.

In case user and TSF or TSF and other IT trusted products need trusted

communication path, TSF needs to include: Provide a trusted channel between TOE

and a remote trusted IT product (FTP_ITC.1); provide a trusted path between user

and TSF (FTP_TRP.1). Since reference mediation (FPT_RVM) and domain

separation (FPT_SEP) often used with access control/information flow control, they

are also grouped into SFR package for confidentiality.

5.1.3 Integrity

Integrity ensures data from unauthorized modification. For detecting the

compromise of the integrity, SFRs in FCS are usually used to generate hash value for

Page 64: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

51

the information content. For example, data authentication (FDP_DAU) ensures the

validity of static data by generating hash values for the information content several

times and comparing the result. Data authentication with identity (FDP_DAU.2) is

similar with SFRs for non-repudiation, except it is for static data, while SFRs for

non-repudiation is for data in transmission. Moreover, FDP_DAU emphasizes on the

validity of data, while SFRs for non-repudiation more emphasize on the generator of

data instead of the data content. Enforcing access control and information flow

control policies on user/TSF data (FDP_ITT.1/2, FPT_ITT.1/2) can also help to

prevent the compromise of integrity. There are total 24 SFRs for integrity, which can

be grouped by three phases of protecting integrity: Prevention, monitoring, reaction.

SFR packages for each group are shown in Table 16:

Prevent Integrity Compromise

User/TSF data inter TOE transfer protection (FDP_ITT.1, FDP_ITT.2, FPT_ITT.1, FPT_ITT.2), Data authentication (FDP_DAU), Inter-TSF user data transfer protection (FDP_UIT.1), TSF data consistency (FPT_TDC.1, FPT_TRC.1), TSF testing (FPT_TST.1)

Integrity Monitor User/TSF data inter TOE transfer monitoring (FDP.ITT.3, FDP_ITT.4, FPT_ITT.3), Store data integrity monitoring (FDP_SDI.1), Inter-TSF detection of modification (FPT_ITI.1), Cryptographic key management and operation (FCS_CKM, FCS_COP)

Recover From Integrity Error

Stored data integrity monitoring and action (FDP_SDI.2), Rollback (FDP_ROL), Source/destination data exchange recovery (FDP_UIT.2, FDP_UIT.3), Inter-TSF detection and correction of modification (FPT_ITI.2) Table 16: SFR Packages fr Integrity

5.1.4 Availability

Availability security objective focuses on availability on both TOE’s capabilities

and resources, which directly maps with SFRs in resource utilization (FRU) and

protection of TSF (FPT), and is also supported by several other SFR classes:

Page 65: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

52

Security management (FMT), protection of TSF (FPT) and TOE access (FTA).

There are total 7 SFRs that support availability, which cover fault toleration, priority

of services, resource quota allocation and exported TSF data availability. It is hard to

define reusable SFR packages for availability since this objective is often satisfied by

independent SFR instead of a group of SFRs. Several observations on the use of SFR

from STs including availability are described in the next paragraph.

Although security products claim the availability is satisfied by SFRs in FMT,

such as management of security attributes (FMT_MSA) and security management

roles (FMT_SMR), it is not serious consideration for achieving availability. Around

44% of security products has requirement on the maximum quota of certain service(s)

that single user or a group of users can use (FRU_RSA.1), which address deny of

service (DoS) attacks. No security products has requirement on ensuring the

provision of minimum quantity of certain resource(s) to be available for single user

or a group of users (FRU_RSA.2), which can be considered as an advance protection

from DoS attacks. Very few products address that each access on resources should

be managed by the priority of the subject, e.g., users, services (FRU_PRS). Many

security products in IC and smart card domain have high requirement on fault

tolerance (FRU_FLT). 11 out of 13 security products ensure that all TOE

capabilities’ availability when certain failures occur are from IC and smart card

domain. However, most security products with FRU_FLT from other domains only

ensure the key part of TOE capabilities’ availability. Exported TSF data availability

(FTP_ITA) is selected by 4 security products out of the total 242 security products,

Page 66: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

53

where they need to export TSF data such as encrypt key or audit data. It is not usual

to export TSF data to other remote trusted IT products unless the TOE works in a

distributed security system, where security products collaborate in security functions

by sharing the TSF data.

5.1.5 Non-Repudiation

Communication (FCO) targets on non-repudiation security objectives, where the

sender cannot deny the origin of the information (FCO_NRO) and the receiver

cannot deny the receipt of the information (FCO_NRR). SFRs from cryptographic

support (FCS) and/or identification & authentication (FIA), such as key management

(FCS_CKM), key operation (FCS_COP) and user identity (FIA_UID) should also be

included when the security product has non-repudiation requirement. There are total

11 SFRs that support non-repudiation. An important observation in this class is that

security products are more interested in verifying the origin of the information,

compared with verifying the receipt of the information. For example, customer may

want to verify the origin of certificate is from an authorized CA, not attackers. But

on the CA side, it does not need to verify whether customer has receipted the

certificate. All 23 security products that include FCO requirements select SFR in

FCO_NRO family, however, only 6 of them select SFR in FCO_NRR family. 5 out

of these 6 security products are messaging management systems, where the evidence

of sending and receiving messages are both important.

Page 67: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

54

Besides the obvious reusable SFR packages with three rigor levels in FCO class,

we can also group SFRs in FCS and FIA into two levels as shown in the Table 17

and Table 18.

Level 1 Level 2 Level 3 FCO_NRO.1/FCO_NRO.1 FCO_NRO.1, FCO_NRR.1 FCO_NRO.2, FCO_NRR.2

Table 17: SFR Packages for Non-Repudiation (Part 1)

Level 1 Level 2 FIA_UID.1/FIA_UID.2 FIA.UID.1/FIA_UID.2, FCS_COP.1,

FCS_CKM.1, FCS_CKM.4 Table 18: SFR Packages for Non-Repudiation (Part 2)

The SFR set for non-repudiation can be a combination of one SFR package in table

and one SFR package in table. The variation of selecting SFRs in FCS class can be

referring to section 5.1.2.

5.1.6 Security Management

Security management provides users capabilities of management of TSF in several

aspects: TSF data, security attributes and functions. As shown in table 4, security

management security objective is satisfied by one specific CC SFR class, security

management (FMT). There are total 13 SFRs that support security management.

There is no clear reuse SFR package for this security objective because security

products have many choices in TSF management mechanisms. The rest of this

section discusses some observations on the used pattern of SFRs in FMT.

• FMT_MTD addresses the aspect of managing TSF data (e.g., audit record or time

stamp). Around 62% security products choose requirements in this family.

Among these security products, more than 85% of them only choose the basic

Page 68: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

55

requirement, which allows users with certain roles to manage the values of TSF

data (FMT_MTD.1). Around 10% of them also has requirement of management

of limits on TSF data (FMT_MTD.2). Around 5% of them also has requirement

on secure TSF data (FMT_MTD.3).

• Management of security attributes (FMT_MSA), security attributes revocation

(FMT_REV) and security attributes expiration (FMT_SAE) address the aspect of

managing security attributes (e.g., user’s role, group that user belongs).

Management of security attributes (FMT_MSA.1) and static attribute

initialization (FMT_MSA.3) are included in around 70% of security products,

30% of which also has the requirement that the values assigned to security

attributes should remain TOE in a secure state (FMT_MSA.2). FMT_REV is

mainly used in security products in database and operating system domain, which

restricts the role to revoke security attributes associated with subjects/objects

under what conditions (e.g., the next login of user). Around 5% of security

products has requirement to enforce time limits for the validity of security

attributes (FMT_SAE), which also requires reliable time stamp (FPT_STM).

• Management of functions in TSF (FMT_MOF) addresses the aspect of managing

TSF functions. It allows authorized users to switch on/off TSF functions and/or

modify TSF function behaviors. Around 50% security products use FMT_MOF.1.

• Security management role (FMT_SMR) is defined as a dependency requirement

for any other SFRs in FMT. However, certain TOEs may not include FMT_SMR

Page 69: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

56

because it only has one user role that is the authorized users. In this case, TOE

often physically protected and only an authorized user (the administrator) has

access to the TOE. Hence, for security products not including FMT_SMR

requirement, they also do not include requirement for authentication (FIA_UAU).

• Specification of management functions (FMT_SMF) is new defined SFR in CC

version 2.3 [13] compared with CC version 2.1 [12]. It requires PP/ST author to

specify the management functions to be provided by the TSF in three aspects as

stated above. However, in author’s opinion, it is more like a requirement for

documentation than a SFR.

5.1.7 Privacy

Privacy security objective also concerns on information disclosure and is directly

supported by FPR class in CC. There are total 10 SFRs in FPR class. The major

difference is the type of data being protected. FDP focuses on the user data and FTP

focuses on TSF data. FPR, however, focuses on the non-disclosure of user identity or

non-observability of user actions to other users/subjects and/or TSF. The use of SFRs

for privacy focuses on two aspects: Pseudonymity (FPR_PSE) and unobservability

(FPR_UNO). Pseudonymity is usually used in security products sit on network

boundary, which have requirement of hiding internal network address to outside

users/computers. Unobservability is usually used in security products in smart card

domain, which require the unboservability of functions such as cryptographic key

operation, access control functions by users through the use of security product.

Page 70: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

57

5.1.8 Accountability

Audit (FAU) is directly mapping to accountability as shown in table 4. There are

total 11 SFRs in FAU. Audit provides tracking evidence on user behaviors and

system status, which can be also used in system performance analysis or intrusion

detection purposes. Hence it has indirectly contributions to other security objectives,

such as intrusion detection and response. Audit data can also be used as report to

users as evidence for successfully fulfilled actions.

Three levels of packages of SFR requirements are shown in Table 19:

Level 1 Audit data generation and review (FAU_GEN.1) Audit review (FAU_SAR.1)

Level 2 Audit data generation associated with user identity FAU_GEN.1, FAU_GEN.2 Selectable audit review FAU_SAR.1, FAU_SAR.3 Protected audit data and prevention of data loss FAU_STG.1, FAU_STG.4

Level 3 Audit data generation associated with user identity FAU_GEN.1, FAU_GEN.2 Selectable and restricted audit review FAU_SAR.1, FAU_SAR.2, FAU_SAR.3 Protected audit data and prevention, action of data loss FAU_STG.1, FAU_STG.2, FAU_STG.3/FAU_STG.4 Table 19: SFR Packages for Accountability

5.1.9 Recoverability

Recoverability is a corrective security objective compared with preventive security

objectives such as authentication and authorization. There are total 10 SFRs satisfy

recoverability, which fall into two SFR classes: FDP and FPT.

Page 71: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

58

Data recoverability

Rollback (FDP_ROL.1, FDP_ROL.2); stored data integrity monitoring and action (FDP_SDI.2); inter-TSF exchange user data recovery (FDP_UIT.2, FDP_UIT.3); inter-TSF TSF data detection and correction of modification (FPT_ITI.2)

TSF recoverability

Failure with preservation of secure state (FPT_FLS.1) Trusted recovery (FPT_RCV.1, FPT_RCV.2, FPT_RCV.3, FPT_RCV.4)

Table 20: SFR Packages for Recoverability

Table 20 lists the SFRs for data recoverability and SFRs for TSF recoverability.

There are correlations between integrity and data recoverability. Once the

compromise of integrity is detected, the correction actions to recover the integrity

belong to data recoverability. FDP_UIT and FPT_ITI address the recoverability of

user data and TSF data separately. In the aspect of TSF recoverability, the TSF shall

manually or automatically ensure TOE return to a secure state (FPT_RCV.1,

FPT_RCV.2). For stronger recoverability, the TSF shall not lose TSF/user data in the

recovery process (FPT_RCV.3). It also specifies requirement that TSF shall ensure

that a list of security functions should be either completed successfully or return to a

secure state when certain failures happen (FPT_RCV.4), such as physical damage,

power off, etc. Failure with preservation of secure date (FPT_FLS.1) provides a pre-

condition for TSF to maintain in the valid mode without being compromised. TSF

self-testing (FPT_TST) is often used with FPT_RCV since it is required for testing

whether TSF is in secure state and TSF data is in a consistent state.

5.1.10 Intrusion Detection and Response

Intrusion detection and response is a detective security objective, which detects

potential attacks and abnormal system behaviors and makes manual or automatic

responses.

Page 72: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

59

Table 21 lists the SFRs defined in CC that map to this security objective.

Intrusion Detection

Potential violation analysis, profile based anomaly detection and simple/complex attack heuristics (FAU_SAA); passive detection of physical attack (FPT_PHP.1); notification of physical attack (FPT_PHP.2); replay detection (FPT_RPL);

Intrusion Response

Security audit automatic response (FAU_ARP); resistance to physical attack (FPT_PHP.3); TSF or user initiated session locking (FTA_SSL.1, FTA_SSL.2); TSF initiated session termination (FTA_SSL.3), TOE session establishment (FTA_TSE.1)

Table 21: SFR Packages for Intrusion Detection and Response

Intrusion detection and response (ID&R) is not a common security objective,

hence few security products have high requirement in ID&R except security products

in detection devices and systems domain. In this domain, most security products

include SFRs in an explicated defined SFR class called IDS (Intrusion detection

system components requirement), which contains requirements on

system/sensor/scanner data collection (IDS_SDC.1, IDS_COL.1, IDS_SCN.1),

analyser analysis/react (IDS_ANL.1, IDS_RCT.1), restricted data review

(IDS_RDR.1) and guarantee of system data (IDS_STG.1/2). Since these 8 SFRs are

explicitly stated, I don’t count them into the total SFRs for ID&R except in the case

when the majority of security products in a particular domain select this class. An

example is Detection Devices domain, which will be discussed later in section 5.2.5.

As shown in table 17, there are also total 13 SFRs defined in CC for satisfying this

security objective. FAU_ARP and FAU_SAA, although they are from security audit

class (FAU), they are about security audit data analysis and automatic response,

hence are grouped into SFR package for intrusion detection and response. TSF

Page 73: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

60

physical protection (FPT_PHP) detects and resists to physical attacks that launch on

TSF. Replay detection (FPT_RPL) is to detect a special type of attack: replay attack,

which tries to resend legal messages or service requests and portends that they are

sent from authorized users. Session locking from TOE access class (FTA_SSL) is to

lock or terminate user sessions when any attack is detected.

5.1.11 SFRs Correlations

Developers very seldom implement all SFRs in one single component because it

obviously has low cohesion for it. However, a much harder question is: Which SFRs

should be implemented in one component and which SFRs should be implemented in

different components? In this section, I will try to answer this question based on the

statistics analysis of SFRs in 242 security products.

Arc is a free statistical analysis tool for regression problems developed by

University of Minnesota [3]. I use this tool for all the regression analysis in this

research because it has enough functions for my purpose and is well used in the

academy world. I will skip the detailed input files and raw output from Arc, and only

show part of my input files as example and the formatted result from the raw output.

Please refer to [16] for instructions in using this tool.

The first step is to analysis the correlations among different SFR classes defined in

CC. Figure 11 shows the structure of the SFR classes dataset and part of the data,

which is used as input files for Arc. Each row represents a security product and 242

security products are included in this analysis. The Project column indicates the

Page 74: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

61

domain of the security product. Each column from FAU to FTP represents the

number of SFRs in one SFR class (e.g., FAU) in a security product.

CaseNum Project FAU FCO FCS FDP FIA FMT FPR FPT FRU FTA FTP1 ACDS 0 0 1 3 3 6 0 2 0 0 12 ACDS 0 0 1 3 3 4 0 2 0 0 13 ACDS 1 0 0 0 5 1 0 3 0 1 04 ACDS 6 0 6 4 10 8 0 3 0 0 15 ACDS 6 0 0 2 0 4 0 0 0 0 06 ACDS 0 0 8 4 2 6 0 0 0 0 07 ACDS 0 0 0 2 2 1 0 3 0 0 08 ACDS 6 0 0 3 7 6 0 5 0 2 09 ACDS 7 0 0 2 6 6 0 0 0 0 0

10 ACDS 6 0 1 3 5 4 0 2 0 0 011 BPDS 3 1 0 2 3 4 0 7 0 0 012 BPDS 2 0 0 4 0 8 0 1 0 0 013 BPDS 6 0 0 6 3 9 2 3 0 0 014 BPDS 5 0 0 4 3 4 0 3 0 0 015 BPDS 3 0 0 5 3 5 0 3 0 0 016 BPDS 5 0 0 8 0 14 0 1 0 0 017 BPDS 5 0 0 8 0 9 0 0 0 0 0

Figure 11: Dataset 1: Number of SFRs by SFR Classes in STs

The correlation among SFR classes from Arc output is shown in Table 22:

Table 22: Correlations Among SFR Classes

Some SFR classes with relatively high correlations are:

FAU FCO FCS FDP FIA FMT FPR FPT FRU FTA FTPFAU 1.00 -0.06 -0.12 0.10 0.32 0.38 0.02 0.15 0.11 0.30 -0.04FCO -0.06 1.00 0.15 0.35 0.31 0.12 0.27 0.17 0.09 0.05 0.15FCS -0.12 0.15 1.00 0.54 0.34 0.34 0.24 0.37 0.09 0.09 0.41FDP 0.10 0.35 0.54 1.00 0.47 0.45 0.41 0.57 0.17 0.08 0.52FIA 0.32 0.31 0.34 0.47 1.00 0.51 0.28 0.42 -0.03 0.24 0.28FMT 0.38 0.12 0.34 0.45 0.51 1.00 0.21 0.32 0.12 0.43 0.28FPR 0.02 0.27 0.24 0.41 0.28 0.21 1.00 0.38 0.16 -0.03 0.04FPT 0.15 0.17 0.37 0.57 0.42 0.32 0.38 1.00 0.22 0.13 0.45FRU 0.11 0.09 0.09 0.17 -0.03 0.12 0.16 0.22 1.00 0.21 0.11FTA 0.30 0.05 0.09 0.08 0.24 0.43 -0.03 0.13 0.21 1.00 0.10FTP -0.04 0.15 0.41 0.52 0.28 0.28 0.04 0.45 0.11 0.10 1.00Avg 0.20 0.24 0.31 0.42 0.38 0.38 0.27 0.38 0.20 0.24 0.30

Page 75: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

62

• FDP vs. FCS: SFRs in FDP targets on user data confidentiality or integrity,

which requires encryption in some security products.

• FDP vs. FIA: Access control SFRs in FDP require identification and sometimes

authentication.

• FDP vs. FMT: Access control SFRs in FDP requires management of roles and

security attributes.

• FDP vs. FPT: For security products with high expectation on data confidentiality,

SFRs in FPT such as domain separation (FPT_SEP_ and reference mediation

(FPT_RVM) are required.

• FDP vs. FTP: For security products where there are communications from

remote users or other IT-trusted products, it is important to have secure

channels/path between for these communications.

• FIA vs. FMT: Since password is one of the security attributes, SFRs in FIA class

such as authentication requirement also need requirement of security attributes

management in FMT.

The last row in the table shows the average correlation value for each SFR class.

Some SFR classes such as FAU, FCO, FPR, and FRU have relatively low correlation

compared with others. However, the correlation among different SFR classes is not

obvious since the highest correlation value is around 0.57. For developers that are

not familiar with CC, the correlations among SFR classes may look less meaningful.

Page 76: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

63

Another observation is that most correlations are related with SFR class FDP. The

major reason is that the SFRs in FDP cover confidentiality, integrity and

recoverability of user data; hence it is more easily correlated with other SFR classes.

To discover the correlations among SFRs further, the second dataset is created based

on table in section 2.2.3.1. Instead of grouping SFRs as classes defined in CC, SFRs

are grouped for each security objective in this dataset. In Figure 12, each row and the

first two columns have the same meaning as which in Figure 11. Each column from

I&A to IDR represents the number of SFRs for each security objective (e.g.,

Identification and Authentication) that are included in a security product.

CaseNum Project I&A Conf Integ Ava Non-R SM Priv Acc Rec IDR1 ACDS 3 8 3 0 0 6 0 0 0 02 ACDS 3 8 3 0 0 4 0 0 0 03 ACDS 5 3 0 0 0 1 0 2 0 04 ACDS 10 15 8 0 0 8 0 8 0 05 ACDS 0 2 0 0 0 4 0 4 0 26 ACDS 2 13 0 0 0 6 0 0 0 07 ACDS 2 5 0 0 0 1 0 0 0 18 ACDS 7 6 0 0 0 6 0 8 0 19 ACDS 6 3 0 0 0 6 0 8 0 0

10 ACDS 5 7 3 0 0 4 0 7 0 011 BPDS 3 7 2 0 3 4 0 3 1 012 BPDS 0 5 2 0 0 8 0 1 0 113 BPDS 3 9 0 0 0 9 2 7 0 014 BPDS 3 7 0 0 0 4 0 4 0 215 BPDS 3 8 0 0 0 5 0 4 0 016 BPDS 0 9 2 0 0 14 0 4 0 1

Figure 12: Dataset 2: Number of SFRs by SO in STs

Several notes on the creation of this dataset are listed:

• Identification & authentication, security management and privacy have one to

one relationship to FIA, FMT and FPR, hence data in this dataset for these three

Page 77: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

64

security objectives are the same as those for FIA, FMT and FPR in the first

dataset.

• Only SFRs that directly support each security objective are counted to obviate

the false-correlation.

• Although reference mediation (FPT_RVM) and domain separation (FPT_SEP)

indirectly support all security objectives, they are more closely related with

confidentiality because they enforce security policies (Access control policies in

most cases) to be un-obviated and separate the part of TSF enforcing security

policies from other parts. Hence these two SFRs are included in the count of

number of SFRs for confidentiality.

• There are 6 SFRs that do not directly support any of the security objectives,

hence are not included in this dataset: Abstract machine testing (FPT_AMT),

state synchrony protocol (FPT_SSP), limitation on scope of selectable attributes

(FTA_LSA), limitation on multiple concurrent sessions (FTA_MCS), TOE

access banners (FTA_TAB), TOE access history (FTA_TAH). These SFRs only

used in few security products, hence should not affect the overall accuracy of the

correlation observation result. The user of these SFRs will be discussed

specifically when exploring security requirement patterns in each security

product domain in section 6.

Since this dataset is not directly derived from the STs, the correctness of it needs to

be verified. Security objectives for security product can be found in section 3 of ST,

but they are represented very differently since CC does not provide a standard in

Page 78: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

65

defining security objectives. For example, one security product has

O.Access_control, while the other has O.confidentiality. However, security objective

for each TOE still be able to derived based on the used keywords such as

identification, confidentiality and integrity in them. The result table is then compared

with the second dataset for the differences in selected security objectives. There is a

100% match for all the security objectives except for integrity,

• FDP_ITT.1 and FPT_ITT.1 are SFRs mapping with both confidentiality and

integrity, because they protect inter TOE user/TSF data transfer from disclosure

or modification. However, some security products select FDP_ITT.1 or

FPT_ITT.1 only for confidentiality, which causes the mistakes in identifying

integrity as security objectives in some security products. There are around 15%

of security products are misidentified to include integrity as security objective. It

won’t have big effect on the dataset since it only cause one SFR difference.

The correlations among security objectives are shown in table below:

Table 23: Correlations Among Security Objectives

I&A CONF INTEG AVA NON-R SM PRIV ACC REC IDRI&A 1.00 0.53 0.39 -0.05 0.34 0.51 0.28 0.29 0.38 0.22

CONF 0.53 1.00 0.87 0.16 0.43 0.53 0.38 -0.01 0.60 0.26INTEG 0.39 0.87 1.00 0.21 0.46 0.39 0.38 -0.13 0.58 0.29AVA -0.05 0.16 0.21 1.00 0.09 0.09 0.12 0.04 0.13 0.09

NON-R 0.34 0.43 0.46 0.09 1.00 0.18 0.46 -0.11 0.36 0.11SM 0.51 0.53 0.39 0.09 0.18 1.00 0.21 0.37 0.26 0.16

PRIV 0.28 0.38 0.38 0.12 0.46 0.21 1.00 -0.08 0.34 0.28ACC 0.29 -0.01 -0.13 0.04 -0.11 0.37 -0.08 1.00 -0.13 0.06REC 0.38 0.60 0.58 0.13 0.36 0.26 0.34 -0.13 1.00 0.30IDR 0.22 0.26 0.29 0.09 0.11 0.16 0.28 0.06 0.30 1.00Avg 0.39 0.48 0.44 0.19 0.33 0.37 0.34 0.13 0.38 0.28

Page 79: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

66

We can see that there are some higher correlations among SFRs if they are

grouped by security objectives. With consideration in correlations among SFR

classes and security objectives, some rules for design can be derived as following:

• In most cases, SFRs for access control are dependent on SFRs for identification&

authentication.

• It is OK to have all SFRs support confidentiality implemented in one component.

However, when a security product needs to provide both confidentiality and

integrity, it should consider SFRs for encryption (FCS) since they support both

security objectives. In these cases, SFRs for encryption should be implemented in

the different component with other SFRs that support confidentiality or integrity.

• Data recovery is one aspect of recoverability and can be satisfied by some

SFRs.that also support integrity. In the cases where security products include

both recoverability and integrity, SFRs for data recovery should be implemented

in a different component with SFRs for function recovery.

• Security management SFRs can be implemented in the same component with

SFRs for confidentiality of integrity. It is true in most security products in our

dataset.

• SFRs for availability, non-repudiation, privacy, accountability and intrusion

detection & response have relatively low correlation with other security

objectives, which matches with the previous correlation result for FAU, FCO,

Page 80: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

67

FPR and FRU class. Hence SFRs for each of these security objectives can be

implemented in one component, without having many coupling relationship with

other components.

It is also interesting to see what the correlations among security objectives are for

different security product domains. For those domains with relatively large number

of security products, I ran the same analysis on them and got the results as shown in

the tables below:

Table 24: Correlations Among Security Objectives in BPDS

Table 25: Correlations Among Security Objectives in ICSCRS

I&A CONF INTEG AVA NON-R SM PRIV ACC REC IDRI&A 1.00 0.57 0.04 -0.13 0.00 0.15 -0.05 0.70 0.00 0.23

CONF 0.57 1.00 0.72 0.31 -0.04 0.32 0.05 0.42 -0.04 0.46INTEG 0.04 0.72 1.00 0.70 0.05 0.16 -0.08 -0.07 0.05 0.33AVA -0.13 0.31 0.70 1.00 -0.02 -0.01 -0.03 -0.11 -0.02 -0.10

NON-R 0.00 -0.04 0.05 -0.02 1.00 -0.09 -0.03 -0.11 1.00 -0.10SM 0.15 0.32 0.16 -0.01 -0.09 1.00 0.26 0.33 -0.09 0.16

PRIV -0.05 0.05 -0.08 -0.03 -0.03 0.26 1.00 0.18 -0.03 0.11ACC 0.70 0.42 -0.07 -0.11 -0.11 0.33 0.18 1.00 -0.11 0.24REC 0.00 -0.04 0.05 -0.02 1.00 -0.09 -0.03 -0.11 1.00 -0.10IDR 0.23 0.46 0.33 -0.10 -0.10 0.16 0.11 0.24 -0.10 1.00

I&A CONF INTEG AVA NON-R SM PRIV ACC REC IDRI&A 1.00 0.78 0.73 -0.34 0.64 0.75 0.62 0.21 0.60 0.65

CONF 0.78 1.00 0.95 -0.08 0.64 0.90 0.53 0.10 0.81 0.49INTEG 0.73 0.95 1.00 0.03 0.66 0.87 0.55 0.11 0.82 0.44AVA -0.34 -0.08 0.03 1.00 0.02 0.01 -0.21 0.38 0.08 -0.27

NON-R 0.64 0.64 0.66 0.02 1.00 0.55 0.63 0.17 0.49 0.18SM 0.75 0.90 0.87 0.01 0.55 1.00 0.56 0.13 0.70 0.47

PRIV 0.62 0.53 0.55 -0.21 0.63 0.56 1.00 0.08 0.33 0.48ACC 0.21 0.10 0.11 0.38 0.17 0.13 0.08 1.00 0.21 -0.01REC 0.60 0.81 0.82 0.08 0.49 0.70 0.33 0.21 1.00 0.43IDR 0.65 0.49 0.44 -0.27 0.18 0.47 0.48 -0.01 0.43 1.00Avg 0.56 0.61 0.62 0.06 0.50 0.59 0.46 0.24 0.55 0.38

Page 81: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

68

Table 26: Correlations Among Security Objectives in NNRDS

Table 27: Correlations Among Security Objectives in OS

In Table 27, there are no correlations between non-repudiation with other security

objectives because none of the security products in OS domain has non-repudiation

as security objective. Some observations are discussed as following:

• The high correlation between confidentiality and integrity happens in every

domain, which matches our result with the previous correlation analysis result

using the whole dataset.

• Accountability is used in a high percentage of security products in BPDS,

NNRDS and OS domains. Hence, in these domains, we can see a relatively high

correlation between identification& authentication and accountability, which

does not show in the previous correlation analysis result.

I&A CONF INTEG AVA NON-R SM PRIV ACC REC IDRI&A 1.00 0.16 -0.06 0.21 -0.16 0.46 0.34 0.80 0.28 0.62

CONF 0.16 1.00 0.82 0.14 0.09 0.35 0.15 0.29 0.18 0.11INTEG -0.06 0.82 1.00 0.00 0.18 0.09 0.02 0.04 -0.03 -0.01AVA 0.21 0.14 0.00 1.00 -0.10 0.03 0.21 0.39 0.79 0.06

NON-R -0.16 0.09 0.18 -0.10 1.00 0.13 -0.10 -0.03 -0.11 -0.11SM 0.46 0.35 0.09 0.03 0.13 1.00 0.23 0.22 0.07 0.19

PRIV 0.34 0.15 0.02 0.21 -0.10 0.23 1.00 0.31 0.49 0.32ACC 0.80 0.29 0.04 0.39 -0.03 0.22 0.31 1.00 0.35 0.56REC 0.28 0.18 -0.03 0.79 -0.11 0.07 0.49 0.35 1.00 0.04IDR 0.62 0.11 -0.01 0.06 -0.11 0.19 0.32 0.56 0.04 1.00Avg 0.36 0.33 0.21 0.27 0.08 0.28 0.30 0.39 0.31 0.28

I&A CONF INTEG AVA SM PRIV ACC REC IDRI&A 1.00 0.37 0.30 -0.45 0.61 -0.17 0.66 0.23 0.51

CONF 0.37 1.00 0.93 0.14 0.62 -0.08 0.44 0.03 0.58INTEG 0.30 0.93 1.00 0.05 0.51 -0.05 0.34 -0.12 0.49AVA -0.45 0.14 0.05 1.00 0.02 0.07 -0.21 0.06 0.10SM 0.61 0.62 0.51 0.02 1.00 -0.12 0.41 0.02 0.76

PRIV -0.17 -0.08 -0.05 0.07 -0.12 1.00 -0.09 -0.12 -0.13ACC 0.66 0.44 0.34 -0.21 0.41 -0.09 1.00 0.21 0.38REC 0.23 0.03 -0.12 0.06 0.02 -0.12 0.21 1.00 0.45IDR 0.51 0.58 0.49 0.10 0.76 -0.13 0.38 0.45 1.00Avg 0.34 0.45 0.38 0.09 0.43 0.03 0.35 0.20 0.46

Page 82: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

69

• The high correlations from non-repudiation and recoverability are only shown in

ICSCRS, which is because they are used in many security products in this

domain. The high correlations between non-repudiation with confidentiality and

integrity do not seem reasonable for me since there is no theories support for

them.

• The high correlation between recoverability and availability is shown in NNRDS

domain. Security products in this domain tend to have these two security

objectives at the same time.

5.2 SFR Patterns in Domains

5.2.1 Access Control Devices and Systems (ACDS)

Number of data points: 10

Security products in this domain mainly target on identity management,

authentication and access control functionalities. The primary and optional security

objectives for access control devices and systems are shown in table below:

Primary Security Objectives

Identification & authentication, confidentiality, security management

Optional Security Objectives

Accountability, integrity, intrusion detection and response, recoverability

Table 28: Security Objectives in ACDS

SFR Patterns for primary security objectives are shown in table below:

I&A Confidentiality Security Management

ATD.1, UAU.1/UAU.2, UID.1/UID.2

FCS_COP.1, FDP_ACC.1/2, FDP_ACF.1, FPT_RVM.1

MSA.1, MSA.3, MTD.1, REV.1, SMR.1, SMF.1

Table 29: SFR Patterns for Primary Security Objectives in ACDS

Page 83: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

70

Although majority security products include SFRs in FIA class to achieve

identification and authentication objective, there is exceptional case that security

product targets on cryptographic functions to achieve access control. Another

exceptional case is that security product requires users to provide smart card for

authentication purpose. Security pattern in confidentiality is relatively clear

comparing with other security objectives. Security product

60% of security products have accountability as one of their security objectives.

However, there are no clear patterns shown in the use of this security objective,

except all of them include audit data generation (FAU_GEN). Four security products

in this domain use the same SFRs (FCS_COP, FDP_ITT, FPT_ITT) to achieve

integrity with those to achieve confidentiality. One security product uses audit data

automatically analysis and response (FAU_ARP.1 and FAU_SAA.1). Two other

security products use physically protection (FPT_PHP). These SFRs support security

objective – intrusion detection and response. For recoverability, only one security

product in this domain has requirement on failure with preservation of secure state

(FPT_FLS.1).

5.2.2 Boundary Protection Devices and Systems (BPDS)

Number of data points: 42

Security products in this domain sit on the boundary of network to provide

protection on resources inside the network. Examples of security products are

Firewall, email filter and secure switch/routers. Among 42 security products in this

Page 84: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

71

domain, 40 of them are firewalls. 1 security products is designed for controlling

information flow, which can be treated as a very simplified firewall. 1 security

product is a mechanic switch that controls the connection between two separate

networks. Although some elder version of firewall may rely IT-environment or

physical environment for identification & authentication or security management,

identification & authentication is necessary for protecting security policies defined in

firewall. The primary and optional security objectives for firewall are shown in table:

Primary Security Objectives

Identification & authentication, confidentiality, security management, accountability

Optional Security Objectives

Integrity, intrusion detection and response, availability, recoverability, non-repudiation

Table 30: Security Objectives in BPDS

Considering the BBDS domain contains a relatively huge number of STs compared

with other domains, I am able to do multiple analyses on this dataset. Firstly, instead

of only analyzing the whole dataset, I randomly group 42 STs into three sets, each

set contain 14 STs. Pattern 1 is derived by set 1 plus set 2; pattern 2 is derived by set

2 plus set 3; and pattern 3 is derived by set 1 plus set 3. Because SFRs for optional

security objectives are only selected on minority of STs, there is no need to analysis

them using different sets. SFR patterns are explored in primary security objectives,

which are selected in majority of STs.

Page 85: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

72

The results are shown in table below:

I&A Confidentiality Security Management

Accountability

Pattern 1

ATD.1, UAU.1/UAU.2, UID.1/UID.2

FDP_IFC.1, FDP_IFF.1, FPT_RVM.1, FPT_SEP.1

MOF.1, MSA.1, MSA.3, SMR.1

GEN.1, SAR.1, SAR.3, STG.3/STG.4, FPT_STM.1

Pattern 2

AFL.1, ATD.1, UAU.1/UAU.2, UID.1/UID.2

FDP_IFC.1, FDP_IFF.1, FPT_RVM.1, FPT_SEP.1

MOF.1, MSA.1, MSA.3, SMR.1, MTD.1

GEN.1, SAR.1, SAR.3, STG.1, STG.3/STG.4, FPT_STM.1

Pattern 3

N/A FDP_IFC.1, FDP_IFF.1, FPT_RVM.1, FPT_SEP.1

MOF.1, MSA.1, MSA.3, SMR.1, MTD.1

FAU_GEN.1, FAU_SAR.1, FAU_SAR.3, FPT_STM.1

Table 31: SFR Patterns for Primary Security Objectives in BPDS

Identification and Authentication: The big difference of SFR pattern for these sets is

because many STs in set 1 and set 3 are elder version of firewalls, which tend to rely

on IT-environment or physical protection for identification & authentication.

Firewall should have requirement of basic identification and authentication, and

maintain the list of security attributes of users.

Confidentiality: SFR patterns for confidentiality are consistent in three sets. Firewall

should provide information flow policy and function to control the

inbound/outbound flow mediation. It also needs to ensure the non-bypassability of

the information flow functions. TSF needs to maintain a separate domain that

protects it from being compromised by un-trusted users.

Security Management: Management of functions in TSF, static initiation and

management of security attributes, management of security roles and management of

TSF data are required in this domain for security management.

Page 86: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

73

Accountability: Audit generation without user identity, audit data selectable review

and reliable time stamps appear in patterns in all three sets. It is recommended to has

requirement of action in cases of audit data loss or prevention of audit data loss.

For SFR patterns in optional security objectives, this paragraph provides some

observations on them. Around 30% security products have basic requirement on

intrusion detection and response: Potential violation analysis (FAU_SAA.1) and

alarm response (FAU_ARP.1). Around 10% security products have basic

requirement on preventing compromise of integrity, which selects internal TOE

transfer (FDP_ITT.1) and/or internal TOE TSF data transfer (FPT_ITT.1). Less than

10% of security products have requirements in integrity by protecting data exchange

integrity from TSF and other trusted-IT products (FDP_UIT.1). Availability,

recoverability, and non-repudiation are rare security objectives to be selected in

firewalls. Only one security product has availability, which requires the operation of

all TOE capabilities with certain failures (FRU_FLT.2). Only two security products

have requirement on failure with preservation of secure state (FPT_FLS.1), and one

of them also has requirement on automatically recovering to a secure state

(FPT_RCV.2). The same product also has the requirement that the decision part

needs to prove the origin of the message came from policy server (FCO_NRO.2),

because the firewall policy server sits on a different host with the part that makes

decisions. This security product obviously has stronger treatment than others on

threats that target on firewall itself instead of what the firewall protects.

Page 87: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

74

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, none of them are selected in this domain except that abstract

machine testing (FPT_AMT.1) is used in less than 3% of security products.

5.2.3 Database (DB)

Number of data points: 11

Security products in this domain facilitate the creation and maintenance of a

database or databases in a secured manner, and the execution of computer programs

using the database or databases. A Database is defined as a set of data that is required

for a specific purpose or is fundamental to a system, project, or enterprise. Security

products in this domain run as an application on operating system. The primary and

optional security objectives for database domain are shown in table:

Primary Security Objectives

Identification & authentication, confidentiality, security management, accountability

Optional Security Objectives

Availability, recoverability

Table 32: Security Objectives in DB

SFR Patterns for primary security objectives are shown in table below:

I&A Confidentiality Security Management

Accountability

ATD.1, UAU.1/UAU.2, UID.1/UID.2, USB.1

FDP_ACC.1/ FDP_ACC.2, FDP_ACF.1, FDP_RIP.1/ FDP_RIP.2, FPT_SEP.1, FPT_RVM.1

MSA.1, MSA.3, MTD.1, REV.1, SMR.1, SMF.1

GEN.1, GEN.2, SAR.1, SAR.3, SEL.1 STG.1, STG.3/STG.4,

Table 33: SFR Patterns for Primary Security Objectives in DB

6 out of 11 security products has requirement on limitation on the maximum quota

of resources that subjects can use (FRU_RSA.1), which supports availability. For

Page 88: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

75

recoverability, one product has requirement on basic rollback (FDP_ROL.1), which

allows rollback of operations with certain boundaries or limits. Another product has

stronger recoverability, where it includes advanced rollback (FDP_ROL.2), which

permits the rollback of all the operations on a certain list of objects, and function

recovery (FPT_RCV.4).

FAU_GEN.2 should be excluded if the system has privacy requirement of no

exposure of users’ identities. No clear pattern shown in audit data logging. However,

no security products in this domain choose FAU_STG.2, which guarantees of audit

data availability. FAU_SAR.2 should be excluded if any user can have read access to

part of the audit data if not all. Only one security product selects FDP_ITC and

FDP_ETC. It provides secured import and export operations that allow user to load

data to database, and extract data from database to a certain form of file.

FIA_AFL.1 (authentication failures) and FIA_SOS.1 (specification of secrets) are

optional requirements to increase strength of function when implementing user

authentication function. Only one security product does not have user identification

function, but it still implements FIA_ATD.1, which defines and maintains user

security attributes.

FMT_SMF.1 is a new SFR defined in CCv2.3. It allows TOE to provide the

specification of the management functions, security attribute management, TSF data

management, or security function management.

Page 89: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

76

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, none of them are selected in this domain except that basic

limitation on multiple concurrent sessions (FTA_MCS.1) is used in 5 security

products. Some security products also have requirement on relying TSF to deny the

session establishment based on certain criteria (FTA_TSE.1).

5.2.4 Data Protection (DP)

Number of data points: 16

Security products in this domain provide three main levels of protection for data:

Basic encryption, advanced encryption and secure erase. Basic encryption is mainly

used for protecting confidentiality of the existing data. Advanced encryption address

confidentiality and integrity of the existing data. Secure erase targets on the

confidentiality of data that is no longer in use hence it does not care about the

accessibility of data. Since encryption is included in many security products in this

domain, the major threats for them are highly related with the cryptographic keys:

Key disclosure, key derive, key distortion, crypto forgery (forge output data like

digital signature), incomplete overwrite, eavesdrop, etc. The primary and optional

security objectives for data protection domain are shown in table:

Primary Security Objectives

Identification & authentication, confidentiality, security management

Optional Security Objectives

Integrity, availability, accountability, recoverability, ID&R

Table 34: Security Objectives in DP

Page 90: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

77

SFR Patterns for primary security objectives are shown in table below:

I&A Confidentiality Security Management

UAU.1/UAU.2, UID.1/UID.2

FCS_COP.1, FCS_CKM.1, FCS_CKM.4, FDP_ACC.1/ FDP_ACC.2, FDP_ACF.1,

MOF.1, MSA.1, MSA.2, MSA.3, SMR.1

Table 35: SFR Patterns for Primary Security Objectives in DP

Most security products in this domain have basic requirements on identification&

authentication security objective. For around 30% of security products,

authentication failure handling (FIA_AFL.1), user attribute definition (FIA_ATD.1),

verification of secrets (FIA_SOS.1), and protected authentication feedback

(FIA_UAU.7) are also selected for identification& authentication for achieving

stronger security mechanisms. Confidentiality is mainly achieved by encryption

requirements in this domain as we can see in the table. Security management is

focused on management of security functions (FMT_MOF.1), security attributes

management (FMT_MSA) and management of security roles (FMT_SMR.1).

Around 20% security projects have accountability security objective, mainly

achieved by security audit data generation (FAU_GEN), security audit review

(FAU_SAR) and security audit event storage (FAU_STG). Around 30% security

projects have intrusion detection & response security objective, which is achieved by

TSF physical protection (FPT_PHP), replay detection (FPT_RPL) or user session

locking (FPT_SSL). Availability is seldom considered in security products in this

domain. Only two security products have availability, and they both select fail secure

(FPT_FLS) and fault tolerance (FRU_FLT) for achieving availability security

objective. Around 30% security products have recoverability security objective,

Page 91: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

78

which is achieved by trusted recovery (FPT_RCV) and stored data integrity

monitoring and action (FDP_SDI.2). Integrity is chosen in around 50% security

products in this domain and is partly achieved by SFRs for confidentiality, such as

encryption SFRs: FCS_COP, FCS_CKM, and SFRs for recoverability, such as

FDP_SDI.2.

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, abstract machine testing (FPT_AMT) is used by 25% of

security products. TOE access banners (FTA_TAB) and TOE access history

(FTA_TAH) are used in one security product to fulfill special application needs.

5.2.5 Detection Devices (DD)

Number of data points: 7

Security products in this domain emphasize on detecting attacks or abnormalities

by observing system behavior or collecting network packets. Security products

usually have two main functionalities: Collect security audit data and analyze

security audit data. The primary and optional security objectives for data protection

domain are shown in table below:

Primary Security Objectives

Identification & authentication, security management, accountability, ID&R

Optional Security Objectives

Confidentiality, integrity, availability

Table 36: Security Objectives in DD

Page 92: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

79

SFR Patterns for primary security objectives are shown in table below:

I&A Security Management

Accountability ID&R

UAU.1/UAU.2, UID.1/UID.2

MOF.1, MTD.1, SMR.1, SMF.1

GEN.1, SAR.1, SAR.2, SAR.3, SEL.1

IDS_SDC.1, IDS_ANL.1, IDS_RCT.1

Table 37: SFR Patterns for Primary Security Objectives in DD

Most security products in this domain have basic requirements on identification&

authentication security objective. Around 30% security products have additional

SFRs for identification& authentication, which are authentication failure handling

(FIA_AFL.1) and user attribute definition (FIA_ATD.1). For security management,

all security products select management of security functions (FMT_MOF.1) and

management of TSF data (FMT_MTD.1). Most security products also have security

roles management (FMT_SMR.1) and security management functions

(FMT_SMF.1). Only one security product provides security attributes management

by selecting FMT_MSA requirements. Security audit data generation (FAU_GEN)

and security audit review (FAU_SAR) are selected by most security products to

provide functionalities of audit data collection and analysis. Selective audit

(FAU_SEL.1) is also selected by many security products to filter the irrelevant

events, hence to increase the efficient in detecting valid attacks. There is a special

case for intrusion detection& response security objective in this domain. It is

satisfied by an explicated SFR class IDS (Intrusion detection system components

requirement), which is not defined in CC as discussed in section 5.1.10. Most

security products select which contains requirements on system data collection

Page 93: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

80

(IDS_SDC.1); analyser analysis (IDS_ANL.1) and analyzer react (IDS_RCT.1) for

achieving ID&R security objective.

Around 30% security products select availability. They want to satisfy a defined

availability metric for inter-TSF exported data (FPT_ITA.1). Around 50% security

products want to protect TSF data confidentiality and integrity by selecting some

SFRs in FPT class, such as confidentiality of exported TSF data (FPT_ITC.1), inter-

TSF detection of modification (FPT_ITI.1), basic internal TSF data transfer

protection (FPT_ITT.1), non-bypassability of the TSP (FPT_RVM.1), TSF domain

separation (FPT_SEP.1) and reliable time stamps (FPT_STM.1).

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, none of them are selected by security products in this domain.

5.2.6 ICs, Smart Cards & Related Services (ICSCRS)

Number of data points: 36

Security products in this domain are mostly smart cards, which are used to store

sensitive information, such as identification and authentication data. They usually are

portable devices, hence it is important to have some level of physical protection on

them. A well-known example of smart cards is credit card that we almost use

everyday. . The primary and optional security objectives for this domain are shown

in table below:

Primary Security Objectives

Confidentiality, integrity, security management, ID&R

Optional Security Objectives

Identification & authentication, availability, non-repudiation, accountability, recoverability, privacy

Table 38: Security Objectives in ICSCRS

Page 94: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

81

Since number of STs in this domain is relatively large, similarly with what I did in

BPDS domain, STs in this domain are grouped into 3 sets. Each set contains 12 STs.

Pattern 1 is derived by set 1 plus set 2; pattern 2 is derived by set 2 plus set 3; and

pattern 3 is derived by set 1 plus set 3. SFR Patterns for primary security objectives

for the combinations of sets are shown in table below:

Confidentiality Integrity Security Management

ID&R

Pattern 1

FCS_CKM.4, FCS_COP.1, FDP_ACC.1/2, FDP_ACF.1, FDP_IFC.1, FPT_SEP.1

FCS_CKM.4, FCS_COP.1, FDP_SDI.1/2, FPT_TST.1

MSA.1, MSA.3, MTD.1, SMR.1

FPT_PHP.3

Pattern 2

FCS_CKM.1, FCS_COP.1, FDP_ACC.1/2, FDP_ACF.1, FDP_IFC.1, FPT_SEP.1

FCS_CKM.1, FCS_COP.1, FDP_SDI.1/2, FPT_TST.1

MSA.1, MSA.3, SMR.1

FPT_PHP.3

Pattern 3

FCS_CKM.1, FCS_CKM.4, FCS_COP.1, FDP_ACC.1/2, FDP_ACF.1, FDP_IFC.1, FPT_SEP.1

FCS_CKM.1, FCS_CKM.4, FCS_COP.1, FDP_SDI.1/2, FPT_TST.1

MOF.1, MSA.1, MSA.3, MTD.1, SMR.1

FAU_SAA.1, FPT_PHP.3

Table 39: SFR Patterns for Primary Security Objectives in ICSCRS

Confidentiality: Three derived patterns for confidentiality all have the same

requirements on access control policies and functions, information flow policies, and

TSF domain separation. The difference is on crypto key management requirements,

whether the TOE has requirements on both crypto key generation and destruction, or

leave the key generation or destruction to the IT environment.

Integrity: SFR patterns for integrity is similar with what looks like in confidentiality.

They include the same SFRs except the difference in FCS_CKM requirement as

discussed in confidentiality.

Page 95: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

82

Security Management: Three SFR patterns are quite different for security

management, although they have one commonality on security attributes

management and management of security roles. Pattern 1 has extra requirement on

management of TSF data compared with pattern 2. Pattern 3 has the strongest

security mechanisms among these three patterns, and it also has requirement on

management of TSF functions.

Intrusion Detection& Response: Three derived patterns all include requirement on

physical protection on TSF. Only difference is pattern 3 also includes requirement on

security audit data automatic analysis.

Security products in this domain cover all security objectives discussed in section

5. Besides the 4 primary security objectives that are chosen by majority of security

products, the rest 6 security objectives can be divided into three groups. The first

group includes identification& authentication and recoverability, which are selected

by around 70% of security products. The second group includes availability,

accountability and privacy, which are selected by around 45% of security products.

The third group includes only non-repudiation, which is selected by around 20% of

security products. For security products having identification& authentication, they

have medium to high requirement on it, by having authentication failure handling

(FIA_AFL.1), unforgeable authentication (FIA_UAU.3) and single-use

authentication mechanisms (FIA_UAU.4). Recoverability is mostly achieved by

having failure with preservation of secure state (FPT_FLS.1) and TSF function

recovery (FPT_RCV). Security products in this domain have low requirements on

Page 96: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

83

accountability, which having protected audit storage. Many security products in this

domain have requirements on high fault tolerance (FAU_FLT.2) and resource

maximum quotas (FAU_RSA.1). Unobservability (FPR_UNO.1) is also important in

many security products because they don’t want users to gain extra information (e.g.,

crypto key) by observing the behaviors of some operations, such as encryption

operations. There are security products also provide the proof of origin for

transmitted information (FCO_NRO). For example, attackers may forge a credit card.

However, the security application is able to recognize that it is a forged one because

it cannot provide the proof of origin that will be accepted by the security application.

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, abstract machine testing (FPT_AMT.1), limitation on scope of

selectable attributes (FTA_LSA.1) and default TOE access banners (FTA_TAB.1)

are selected by around 5% of security products.

5.2.7 Key Management (KM)

Number of data points: 13

Security products in this domain emphasize on crypto key generation, management,

store and/or assignment. The primary and optional security objectives for data

protection domain are shown in table below:

Primary Security Objectives

Identification & authentication, confidentiality, integrity, security management, accountability

Optional Security Objectives

Availability, non-repudiation, recoverability, ID&R

Table 40: Security Objectives in KM

Page 97: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

84

SFR Patterns for primary security objectives are shown in table below:

I&A Confidentiality Integrity Security Management

Accountability

AFL.1, UAU.1/2, UID.1/2

FDP_ACC.1/2, FDP_ACF.1, FPT_RVM.1

N/A MOF.1, MTD.1

GEN.1, (GEN.2)

Table 41: SFR Patterns for Primary Security Objectives in KM

Security products in this domain are quite different with each other in selecting

SFRs. Although majority of the security products have the listed primary security

objective shown in the above table, they choose quite different SFRs to achieve them.

There are no clear patterns in these primary security objectives compared with other

domains, which will be shown in the SFR pattern effectiveness analysis in section 6.

For example, there are 10 out of 13 security products have security objective on

integrity. But none of these SFRs, such as stored data integrity monitoring

(FDP_SDI.1) and inter-TSF detection of modification (FPT_ITI.1), which are

selected for achieving integrity, are used by more than 50% of security products.

Security products in this domain achieve confidentiality in all three aspects: Access

control, encryption and residual protection, where access control is used by majority

of security products as shown in the above table.

There are around 50% security products have requirement on non-repudiation of

origin (FCO_NRO.1, 2). These security products have functionalities on assigning

keys; hence provide the evidence for the originator of the keys. Two security

products have TSF manual or automated recovery (FPT_RCV.1, 2) for recoverability.

Around 40% security products have requirement on intrusion detection& response

by selecting SFRs such as TSF physical protection (FPT_PHP.1), replay detection

Page 98: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

85

(FPT_RPL.1) and session locking (FTA_SSL). Only one security product selects

failure with preservation of TSF secure state (FPT_FLS.1) and degraded fault

tolerance (FRU.FLT.1) for achieving availability security objective.

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, only abstract machine testing (FPT_AMT.1) is used by one

security product with availability as security objective.

5.2.8 Network and Network Related Devices and Systems (NNRDS)

Number of data points: 28

Security products in this domain are applications securing information and

communication over network, a good example of which is Virtual Private Network

(VPN). This domain has little overlap with two domains discussed before: Boundary

protection devices& systems domain and detection devices domain. Few products in

this domain are hardware-centered, such as router and switch with security

objectives, which is also ok to be included in the boundary protection devices&

systems domain. There are also several security products monitor the status and

events of network to detect potential misbehaviors or attacks, which can also be

grouped into detection devices domain. The rest of security products are like VPN,

which protect the confidentiality and/or integrity of transmitted information over a

public network.

Page 99: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

86

The primary and optional security objectives for data protection domain are shown

in table below:

Primary Security Objectives

Identification & authentication, confidentiality, security management, accountability

Optional Security Objectives

Integrity, availability, non-repudiation, recoverability, ID&R, privacy

Table 42: Security Objectives in NNRDS

Since number of STs in this domain is relatively large, similarly with what I did

before, STs in this domain are grouped into 3 sets. First two sets contain 9 STs and

the third set contains 10 STs. Pattern 1 is derived by set 1 plus set 2; pattern 2 is

derived by set 2 plus set 3; and pattern 3 is derived by set 1 plus set 3. SFR Patterns

for primary security objectives for the combinations of sets are shown in table below:

I&A Confidentiality Security Management

Accountability

Pattern 1

ATD.1, UAU.1/2, UID.1/2

ACC.1/2, ACF.1, IFC.1/2, IFF.1, FPT_SEP.1

MOF.1, MSA.1, MSA.3, MTD.1, SMR.1

FAU_GEN.1, FAU_SAR.1, FPT_STM.1

Pattern 2

ATD.1, UAU.1/2, UID.1/2

IFC.1/2, IFF.1, FPT_RVM.1, FPT_SEP.1

MOF.1, MSA.1, MTD.1, SMR.1

FAU_GEN.1, FAU_SAR.1, FPT_STM.1

Pattern 3

ATD.1, UAU.1/2, UID.1/2

IFC.1/2, IFF.1, FPT_RVM.1, FPT_SEP.1

MOF.1, MSA.1, MSA.3, MTD.1, SMR.1, SMF.1

FAU_GEN.1, FAU_SAR.1, FPT_STM.1

Table 43: SFR Patterns for Primary Security Objectives in NNRDS

Identification& Authentication: Three patterns are identical in this security objective.

Requirements on basic identification& authentication and user attributes definition

are selected.

Confidentiality: Pattern 2 and 3 are identical with each other. Pattern 1 has two

differences with them. The first is having requirements on access control policy and

functions. The second is lacking requirement on non-bypassability of the TSP. The

Page 100: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

87

major reason is because some security products that derive pattern 2 and 3 are in the

overlap range between this domain and the Boundary Protection Devices and

Systems (BPDS) domain. Hence pattern 2 and 3 for confidentiality in this domain

are identical to the derived patterns for confidentiality in BPDS domain.

Security Management: Three patterns are different with each other for this security

objective except the commonality on management of security functions behavior,

management of security attributes, management of TSF data and security roles

management. Pattern 1 also one more requirement on the static security attribute

initialization. Pattern 3 has the strongest requirement on security management

compared with the rest two patterns. It also includes requirement on specification of

management functions, which allows authorized users to define/modify the attributes

that control security-related operations.

Accountability: Three patterns are consistent in this security objective. Basic audit

data generation and review are selected. TSF also needs to provide a reliable

timestamp to ensure the validity of the generated audit data and add more

information onto it.

Besides the four primary security objectives, security products in this domain

cover all the rest six security objectives. Since security products in this domain are

network-related, it is possible that different parts of TSF are located on different

network nodes. For example, the part of TSF for collecting network information can

be allocated on several network nodes, and the part of TSF for analyzing network

Page 101: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

88

information and making decisions is allocated on another network node. Both parts

need to secure the message communicated between them. For this kind of security

products, they often have requirements on inter-TSF user data integrity transfer

protection (FDP_UIT) and/or inter-TSF detection of modification of TSF data

(FPT_ITI). Around 30% of security products also choose cryptographic operations to

achieve integrity. Around 50% of security products have intrusion detection&

response as one of their security objectives. Intrusion detection is mainly achieved by

having requirements on audit data automatic analysis (FAU_SAA) and response

(FAU_ARP), and physical protection of TSF. Intrusion response is mainly achieved

by having requirements on TSF-initiated termination (FTA_SSL.3) and TOE session

establishment (FTA_TSE.1). Two security products select requirements defined in

IDS, which is an explicated SFR class and used by many products in detection

devices domain. Availability, non-repudiation, recoverability and privacy are each

selected by less than 15% of security products. Availability is achieved by selecting

inter-TSF availability within a defined availability metric (FPT_ITA.1), degraded

fault tolerance (FRU_FLT.1) and limited priority of service (FRU_PRS.1). There are

two security products that choose privacy. One has requirement on anonymity

(FPR_ANO.1). The other has requirement on pseudonymity (FPR_PSE.1). Security

products achieve recoverability by selecting basic rollback (FDP_ROL.1), failure

with preservation of secure state (FPT_FLS.1) and manual/automated TSF recovery

(FPT_RCV.1/2). There are two security products selecting enforced proof of origin

(FCO_NRO.2).

Page 102: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

89

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, abstract machine testing (FPT_AMT.1), basic limitation on

multiple concurrent sessions (FTA_MCS.1) and default TOE access banners

(FTA_TAB.1) are selected by few security products.

5.2.9 Operating Systems (OS)

Number of data points: 26

Security products in this domain are mainly different type of operating systems

(OS), such as Windows, Linux, Solaris, IBM i5/OS, etc. For a secure operating

system, one of the critical tasks is to handle user accounts and the privileges

associated with the account, such as file access and change OS configurations.

Accountability is also important for operating system to generate error message and

provide the administrator system log to track the errors. Besides manual detection of

attack by administrators, some operating systems may provide security schemes of

automatic detection of security attack. The primary and optional security objectives

for data protection domain are shown in table below:

Primary Security Objectives

Identification & authentication, confidentiality, security management, accountability

Optional Security Objectives

Integrity, availability, recoverability, ID&R, privacy

Table 44: Security Objectives in OS

Since number of STs in this domain is relatively large, similarly with what I did

before, STs in this domain are grouped into 3 sets. First two sets contain 9 STs and

the third set contains 8 STs. Pattern 1 is derived by set 1 plus set 2; pattern 2 is

Page 103: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

90

derived by set 2 plus set 3; and pattern 3 is derived by set 1 plus set 3. SFR Patterns

for primary security objectives for the combinations of sets are shown in table below:

I&A Confidentiality Security Management

Accountability

Pattern 1

ATD.1, SOS.1, UAU.1/2, UAU.7, UID.1/2, USB.1

FDP_ACC.1/2, FDP_ACF.1, FDP_RIP.1/2, FPT_RVM.1, FPT_SEP.1

MSA.1, MSA.3, MTD.1, REV.1, SMR.1, SMF.1

FAU_GEN.1, 2, FAU_SAR.1, 2, 3, FAU_SEL.1, FAU_STG.1, 3, 4, FPT_STM.1

Pattern 2

ATD.1, SOS.1, UAU.1/2, UAU.7, UID.1/2, USB.1

FDP_ACC.1/2, FDP_ACF.1, FDP_RIP.1/2, FPT_RVM.1, FPT_SEP.1

MSA.1, MSA.3, MTD.1, REV.1, SMR.1, SMF.1

FAU_GEN.1, 2, FAU_SAR.1, 2, 3, FAU_SEL.1, FAU_STG.1, 3, 4, FPT_STM.1

Pattern 3

ATD.1, SOS.1, UAU.1/2, UAU.7, UID.1/2, USB.1

FDP_ACC.1/2, FDP_ACF.1, FDP_RIP.1/2, FPT_RVM.1, FPT_SEP.1

MSA.1, MSA.3, MTD.1, REV.1, SMR.1, SMF.1

FAU_GEN.1, 2, FAU_SAR.1, 2, 3, FAU_SEL.1, FAU_STG.1, 3, 4, FPT_STM.1

Table 45: SFR Patterns for Primary Security Objectives in OS

Identification& Authentication: Three patterns are identical in this security objective.

Security products in this domain have medium-high requirement on identification&

authentication by having user attribute definition, verification of secrets and

protected authentication feedback.

Confidentiality: Three patterns are identical in this security objective. Most security

products have access control and residual data protection for achieving

confidentiality. Around 25% of security products also provide encryption

functionalities. Non-bypassability of the TSP and TSF domain separation are also

selected by most of the security products because it is important for operating

systems to separate the running space of critical applications with other user

applications, and enforce the TSP to all the applications.

Page 104: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

91

Security Management: Three patterns are identical in this security objective. Security

products in this domain have medium-high requirements on security management.

They need to provide many customizations ways for authorized users (E.g.,

administrator) to adjust the strength of security mechanisms. For example,

administrator may change the privileges of a particular group of users or turn off the

guest account.

Accountability: Three patterns are identical in this security objective. Security

products in this domain have two extremely choices on accountability. They either

do not have accountability as one of its security objectives, or have extremely strong

SFRs for achieving accountability. Security products with accountability as their

security objective have almost every SFRs that are discussed in section 5.1.8 except

guarantees of audit data availability, which is much harder and more expensive to

implement compared with other SFRs.

Integrity is considered in around 30% of security products, which include inter-

TSF user data exchange integrity (FDP_UIT.1) and TSF self-testing (FPT_TST.1).

Encryption requirements are also used for integrity in some security products.

Around 25% of security products select degraded fault tolerance (FRU_FLT.1) or

resource maximum quotas (FRU_RSA.1), which achieve the basic level of

availability. Around 20% of security products have recoverability and intrusion

detection& response as their security objectives, mainly achieved by failure with

preservation of secure state (FPT_FLS.1) and TSF functional recovery (FPT_RCV),

session locking (FTA_SSL) and TOE session establishment (FTA_TOE.1). Only two

Page 105: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

92

security products have unobservability, which prohibit the users from exceeding their

privileges by observing some operations, such as encryption operations.

For the 6 SFRs that are not covered by SFR packages for security objectives

defined in section 5, abstract machine testing (FPT_AMT.1) is used in many security

products that have availability or recoverability as their security objectives.

Limitation on scope of selectable attributes (FTA_LSA.1), basic limitation on

multiple concurrent sessions (FTA_MCS.1), default TOE access banners

(FTA_TAB.1), and TOE access history (FTA_TAH.1) are selected by only one or

two security products.

Page 106: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

93

Chapter 6: Validation Approach

Validation in this research falls into two major parts:

1. Validation SFR packages and variations defined in section 5

2. Validation SFR patterns discussed in section 6

6.1 SFR Packages Validation

The validation of proposed SFR packages for security objectives is achieved in

section 5.1.11. The first step is to review section 4 in each ST for identifying security

objectives for each product. The result is then compared with the list of security

objectives generated by the proposed SFR packages for security objectives. The

second step of validation is to review the actual used SFR packages for security

objectives described in section 6 in each ST, and compare them with the SFR

packages proposed in section 5. Validations results show that there are no

inconsistencies except in the proposed SFR package for integrity. Basic internal user

data transfer protection (FDP_ITT.1) and basic TSF data internal transfer protection

(FPT_ITT.1) are considered in the proposed SFR packages for both confidentiality

and integrity. However, around 15% of security products only consider them for

confidentiality. Please refer 5.1.11 for the details.

Page 107: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

94

6.2 SFR Patterns Validation

For domains containing relatively large number of security products (E.g., bigger

than 24), I group them into three sets. Security pattern is then generated using two of

these three sets, and is validated using the third set. Hence three security patterns are

generated for these domains. The effectiveness of these security patterns is evaluated

to help the decision. For domains containing relatively small number of security

products, security pattern is explored using the whole set of security products.

Effectiveness of the security pattern is evaluated as the quality metrics of it.

The effectiveness E is evaluated by checking the difference rate between the

explored security patterns for each security objective with the actual SFR package a

security product uses if it has the corresponding security objective. For example, the

explored pattern is (SFR.A, SFR.B, SFR.C). If the actual used set of SFRs is (SFR.A,

SFR.B) or (SFR.A, SFR.B, SFR.C, SFR.D), the difference D is 1. If the actual used

set of SFRs is (SFR.A, SFR, B, SFR.E), the difference D is 2. Effectiveness of the

SFR pattern for certain security objective can be calculated using the formula:

E j = (1- i, j / (n j * m)) *100%

E j represents for the effectiveness of SFR pattern appears in jth security objective.

It is represented as a percentage number. Di, j represents the difference between this

SFR pattern with the actual used set of SFRs for security product i for security

objective j. nj represents the number of SFR components that are mapping with the jth

Page 108: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

95

security objective as defined in section 5. m represents the total number of security

products that are included in this set.

Table shows the j and n that correspond to each security objective as defined in

section 5.

Iden

tific

atio

n &

Aut

hent

icat

ion

Con

fiden

tialit

y

Inte

grity

Ava

ilabi

lity

Non

-rep

udia

tion

Secu

rity

M

anag

emen

t

Priv

acy

Acc

ount

abili

ty

Rec

over

abili

ty

ID&

R

j 1 2 3 4 5 6 7 8 9 10

n 14 36 24 7 11 13 10 11 11 13 (21)

Table 46: Number of Total SFRs for Supporting Security Objectives

Let us see an example for testing effectiveness of SFR pattern for accountability in

database domain. In database domain, the defined SFR pattern for accountability as

shown in section 5.2.3 is:

(GEN.1, GEN.2, SAR.1, SAR.3, SEL.1, STG.1, STG.3 /STG.4)

The next step is to compare each security product’s selected SFRs for

accountability with this derived pattern for difference. In security product No.1 in

database domain, the selected SFRs for accountability is:

(GEN.1, GEN.2, SAR.1, SAR.2, SAR.3, SEL.1, STG.1, STG.3)

From table, j = 8 for accountability. The difference between the selected SFRs and

the defined SFR pattern is only one SFR, which is SAR.2, hence D1, 8 = 1. Similarly,

Page 109: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

96

I can get Di, 8 for the rest security products. There are total 11 security products in

database domain, hence m=11. The sum of D of all security products is: i, 8 =

25. From table, we can see that n=11 for accountability security objective.

Now we can calculate E accountability = (1- 25/11/11) * 100%= 79.3%.

6.2.1 SFR Pattern Validation Result in BPDS Domain

For security patterns discovered in section 5.2.1 for BPDS domain, the

effectiveness E of them are shown in the table below:

Effectiveness of Security

Pattern

Test Set Identity & Authenticatio

n

Confidentiality

Security Management

Accountability

Pattern 1 Set 1+2 85.7% 92% 85.2% 82.5% Set 3 84.7% 91.5% 82.4% 82.5% Set 1+2+3 85.4% 91.8% 84.2% 82.5%

Pattern 2 Set 2+3 85.2% 91.8% 84.6% 85.1% Set 1 81.6% 91.7% 81.9% 76% Set 1+2+3 84% 91.8% 83.7% 82%

Pattern 3 Set 1+2 82.9% 91.6% 83.8% 79.5% Set 2 77.5% 92.3% 83.5% 77.3% Set 1+2+3 81.6% 91.8% 83.7% 78.8%

Table 47: Effectivness of Security Patterns in BPDS

Security pattern 1 explored by set 1 and set 2 in BPDS domain should be chosen

since it has the best overall effectiveness compared with other two security patterns.

Page 110: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

97

The percentages of security products that fit in different ranges of effectiveness are

shown in the table below:

Percentage of Security Products within Range of Effectiveness

Effectiveness of Security Pattern

Identification& Authentication

Confidentiality

Security Management

Accountability

<=10% 26.2% 69.0% 38.1% 52.4% <=20% 61.9% 97.6% 66.7% 73.8% <=30% 100.0% 100.0% 85.7% 85.7% Table 48: Range of Effectiveness of BPDS Security Pattern

Confidentiality has the clearest SFR pattern compared with other primary security

objectives in this domain.

6.2.2 SFR Pattern Validation Result in ICSCRS Domain

This section validates the derived SFR patterns for ICs, Smart Cards & Related

Services (ICSCRS) domain in section 5.2.8 by evaluating the effectiveness E for

patterns.

Effectiveness of Security

Pattern

Test Set Confidentiality

Integrity Security Management

Intrusion Detection& Response

Pattern 1 Set 1+2 84.7% 85.4% 80.8% 92% Set 3 82.9% 84.4% 78.8% 90.4% Set 1+2+3 84.1% 85.1% 80.1% 91.5%

Pattern 2 Set 2+3 91.9% 92.9% 90.1% 91.3% Set 1 83.3% 83.7% 77.6% 91.7% Set 1+2+3 89% 89.8% 85.9% 91.5%

Pattern 3 Set 1+2 83.7% 85.1% 79.8% 91% Set 2 85.2% 85.1% 80.8% 89.7% Set 1+2+3 84.2% 85.1% 80.1% 90.6%

Table 49: Effectivness of Security Patterns in ICSCRS

Security pattern 2 explored by set 2 and set 3 in ICSCRS domain should be chosen

since it has the best overall effectiveness compared with other two security patterns.

Page 111: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

98

The percentages of security products that fit in different ranges of effectiveness are

shown in the table below.

Percentage of Security Products within Range of Effectiveness Effectiveness of Security

Pattern

Confidentiality

Integrity Security Management

Intrusion Detection& Response

<=10% 16.7% 16.7% 13.9% 58.3% <=20% 75% 83.3% 55.6% 91.7% <=30% 100.0% 100% 72.2% 100% Table 50: Range of Effectiveness of ICSCRS Security Pattern

Intrusion detection& response has the clearest pattern compared with other

primary security objectives in this domain.

6.2.3 SFR Pattern Validation Result in NNRDS Domain

This section validates the derived SFR patterns for Network and Network Related

Devices and Systems (NNRDS) domain in section 5.2.8 by evaluating the

effectiveness E for patterns. Since three derived SFR patterns for identification&

authentication and accountability are identical in NNRDS domain, we only calculate

effectiveness E once for each of these two security objectives using all 28 security

products in this domain:

Effectiveness of SFR Patterns Identity& Authentication Accountability Pattern 1, 2, 3 88.8% 81.5%

Table 51: Effectiveness of Security Patterns for Two SOs

Page 112: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

99

For confidentiality and security management, since three patterns are different, we

need to calculate effectiveness E once for each of them using different test set, as

shown in table below.

Effectiveness of Security Pattern

Test Set Confidentiality Security Management

Pattern 1 Set 1+2 85.2% 84.2% Set 3 85% 79.2% Set 1+2+3 85.1% 82.4%

Pattern 2 Set 2+3 91.8% 89.5% Set 1 81.5% 77.8% Set 1+2+3 88.5% 85.7%

Pattern 3 Set 1+2 86.1% 82.2% Set 2 84.5% 82.1% Set 1+2+3 85.1% 82.1%

Table 52: Effectiveness of Security Patterns in NNRDS

Security pattern 2 explored by set 2 and set 3 in BPDS domain should be chosen

since it has the best overall effectiveness compared with other two security patterns.

The percentages of security products that fit in different ranges of effectiveness are

shown in the table below.

Percentage of Security Products within Range of Effectiveness Effectiveness of Security Pattern

Identification & Authentication

Confidentiality

Security Management

Accountability

<=10% 57.1% 32.1% 28.6% 25% <=20% 75% 78.6% 60.7% 39.3% <=30% 96.4% 100% 82.1% 75% Table 53: Range of Effectiveness of NNRDS Security Pattern

Identification& authentication and confidentiality have the clearest security

patterns compared with other primary security objectives in this domain.

Page 113: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

100

6.2.4 SFR Pattern Validation Result in OS Domain

This section validates the derived SFR patterns for Operating Systems (OS)

domain in section 5.2.9 by evaluating the effectiveness E for patterns. Since three

derived SFR patterns for all the primary security objectives are identical in OS

domain, we only calculate effectiveness E once for each of these four security

objectives using all 26 security products in this domain:

Effectiveness of SFR Patterns

Identification&

Authentication

Confidentiality Security Management

Accountability

Pattern 1, 2, 3 88.5% 91.8% 84.9% 72.4% Table 54: Effectivness of Security Patterns in OS

The percentages of security products that fit in different ranges of effectiveness are

shown in the table below.

Percentage of Security Products within Range of Effectiveness

Effectiveness of Security Pattern

Identification & Authentication

Confidentiality

Security Management

Accountability

<=10% 53.8% 65.4% 53.8% 53.8% <=20% 76.9% 92.3% 69.2% 61.5% <=30% 88.5% 100.0% 76.9% 65.4%

Table 55: Range of Effectiveness of OS Security Pattern

From the data shown in the table, the effectiveness of the primary security

objectives do not seem very good compared with other domains. However, there are

clear SFR patterns for these security objectives in OS domain. It is because some

security products in this domain have 0 SFR for the primary security objectives. For

those security products that have the listed primary security objectives, their

selections of SFRs are quite consistent with each other. Hence, it is important for

Page 114: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

101

developers to think about whether to include any of these listed primary security

objectives when developing any security product from this domain.

6.2.5 SFR Pattern Validation in Other Domains

For security patterns discovered in section 5.2.1 for access control domain, the

effectiveness E of them are shown in the table below:

Identity & Authentication Confidentiality Security

Management Effectiveness

of SFR Pattern 81.4% 90% 75.4%

Table 56: Effectivness of Security Patterns in AC

For security patterns discovered in section 5.2.3 for database domain, the

effectiveness E of them are shown in the table below:

Identity & Authentication

Confidentiality

Security Management

Accountability

Effectiveness of SFR Pattern 86.4% 94.9% 86% 79.3%

Table 57: Effectivness of Security Patterns in DB

For security patterns discovered in section 5.2.4 for data protection domain, the

effectiveness E of them are shown in the table below:

Identity & Authentication Confidentiality Security

Management Effectiveness

of SFR Pattern 86.2% 90.1% 80.8%

Table 58: Effectivness of Security Patterns in DP

Page 115: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

102

For security patterns discovered in section 5.2.5 for detection devices domain, the

effectiveness E of them are shown in the table below:

Identity & Authentication

Accountability Security Management

Intrusion Detection& Response

91.8% 71.4% 94.5% 84.4% Table 59: Effectivness of Security Patterns in DD

For security patterns discovered in section 5.2.7 for key management domain, the

effectiveness E of them are shown in the table below:

Identity & Authentication

Confidentiality Security Management

Accountability

81.3% 89.1% 75.7% 81.8% Table 60: Effectiveness of Security Patterns in KM

Some observations are drawn from above effectiveness analysis as following:

• All the domains have security patterns on confidentiality except detection

devices domain.

• All the domains have security patterns on identification& authentication

except IC and smart card domain.

• Although there are total 36 SFRs support confidentiality, only few of them

are frequently used in security products, hence the effectiveness of SFR

pattern for confidentiality is usually higher than the others.

• Effectiveness of SFR pattern for security management in different domains

differ a lot, which is because SFRs in FMT class do not have clear rigor level

difference like other SFR classes, such as FDP and FIA. Hence security

products in the same domain may still differ a lot in choosing SFRs for

security management. The only exceptions are domains with single main

Page 116: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

103

functionality such as detection devices, which has clear and simple

requirement on security management.

Page 117: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

104

Chapter 7: Contributions and Future Work

In this section, I will summarize the contributions of the SFR pattern analysis for

developing secure software and present some thoughts on the future research fields

related with this topic.

7.1 Contributions

The contributions of this thesis is listed as following:

1. This work builds up a database containing information of security functional

requirements, assurance level and other information of 242 security products

published on the common criteria portal website, which can be used for other

statistic analysis in the future.

2. This work provides a mapping scheme between SFRs and security objectives,

which is validated by the Security Target files of 242 security products. The

mapping scheme can save developer’s time by reduce the range of candidate

SFRs when they have the information on security objectives of the security

product.

3. This work shows the analysis result of correlations among SFR classes defined in

CC and correlations among security objectives. It also discusses what can be

derived from the analysis result, which can guide developers in designing the

architecture of security products.

Page 118: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

105

4. This work shows the trend analysis between EAL and number of SFRs of the 242

security products in this dataset, which shows one aspect of the fact that leads to

a clear direction for further discussion and explorations in the future.

5. This work presents the SFR patterns for nine domains of security products and

provides a method of evaluating the effectiveness of patterns. Developers choose

the applicable patterns and customize them for the use on specific security

application.

7.2 Future Work

This thesis focuses on defining the mapping between SFRs and security objectives,

analyzing the correlations among security objectives and discovering SFR patterns

for difference security product domains. Several suggested areas of future work

include:

1. More detail analysis in different types (E.g., business application, military

application) of security products inside each domain to explore the suitable SFR

patterns.

2. Modifications on the current work to make it suitable for the newest version of

CC.

3. Keep expanding the dataset to include the newest published STs of security

products on common criteria portal website.

4. This thesis solves the path from security objectives to SFRs. In the future it is

valuable to explore a path from potential threats, security assumptions to security

Page 119: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

106

objectives, which provides a more complete guidance in helping developers

select the right set of SFRs.

5. Research on presentation of this work to have a clearer input & output

parameters and format, which can help developers more efficiently use this work.

Page 120: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

107

References

[1] Alexander, C., “The Timeless Way of Building”. Oxford University Press, 1979

[2] Alexander, C., Ishikawa, S., Silverstein, M., Jacobson, M., Fiksdahl-King, I., Angel, S., A Pattern Language: Towns-Buildings-Constructions, Oxford University Press, 1977

[3] Arc Software http://www.stat.umn.edu/arc/software.html

[4] Boehm, B., et al., An Overview of the COCOMO 2.0 Software Cost Model, Software Technology Conference, April 1995

[5] Boehm, B., et al., Model-Based (System) Architecting and Software Engineering (MBASE). Center for Software and System Engineering (CSSE), University of Southern California, 1997

[6] Boehm, B., Egyed, A., Kwan, J., Port, D., Shah, A., Madachy, R., Using the WinWin Spiral Model: A Case Study, IEEE Computer, July 1998, Page: 33-44

[7] Boehm, B., Port, D., Balancing Discipline and Flexibility With the Spiral Model and MBASE, CrossTalk, the Journal of Defense Software Engineering, Vol 12 No. 12, December 2001

[8] Brown, F. L. Jr., DiVietri, J., Villegas, G. D., Fernandez, E. D., The Authenticator Pattern, In: Proceedings of Pattern Language of Programs (PloP), August 1999

[9] Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P., Stal, M., Pattern Oriented Software Architecture: a System of Patterns, Wiley, Chichester 1996

[10] Chidamber, S. R., Kemerer, C. F., Towards a Metrics Suite for object-oriented Design, In Proceeding of OOPSLA '91, 1991

[11] Common Criteria for Information Technology Security Evaluation (CC), version 1.0, January 1996

[12] Common Criteria for Information Technology Security Evaluation (CC), version 2.1, August 1999

[13] Common Criteria for Information Technology Security Evaluation (CC), version 2.3, ISO/IEC 15408:2005, August 2005

[14] Common Criteria for Information Technology Security Evaluation (CC), version 3.1 Revision 1, September 2006

[15] Common Criteria Portal http://www.commoncriteriaportal.org/public/expert/

Page 121: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

108

[16] Cook, R. D., Weisberg, S., Applied Regression Including Computing and Graphics, ISBN 0-471-31711-X, John Wiley and Sons, Inc , August 1999

[17] Curphey, M., et.al., A Guide to Building Secure Web Applications, the Open Web Application Security Project (OWASP), September 2002

[18] Evans, D. L., Bond, P. J., Bement, A. L., Standards for Security Categorization of Federal information and Information Systems, National Institute of Standards and Technology (NIST) Federal Information Processing Standards (FIPS) 199, February 2004

[19] Fenton, N. E., Software Metrics - A Rigorous Approach, Chapman & Hall, 1992

[20] Fernandez, E. B., Sorgente, T., Larrondo-Petrie, M. M., Even more patterns for secure operating systems, Conference on Pattern Languages of Programs (PLoP), 2006

[21] Ferraiolo, D., Kuhn, R., Role-Based Access Control, 15th NIST-NCSC National Computer Security Conference, 1992

[22] Gamma, E., Helm, R., Johnson, R., Vlissides, J., Design Patterns: Elements of Reusable Object-Oriented Software, Addison-Wesley-Longman, New York 1995

[23] Gilliam, D. P., Wolfe, T. L., Sheirf, J. S., Software Security Checklist for the Software Life Cycle. Proceedings of the 12th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE), 2003

[24] Grance, T., Hash, J., Stevens, M., Security Considerations in the Information System Development Life Cycle, National Institute of Standards and Technology (NIST) Special Publication 800-64 Rev.1, June 2004

[25] Hayes R., B., Pfleger, K., Lalanda, P., Morignot, P., Balabanovic, M., A domain-specific software architecture for adaptive intelligent systems, IEEE Transactions on Software Engineering, Volume 21, Page 288--301, April 1995

[26] Herrmann, D. S., Using the Common Criteria for IT Security Evaluation, ISBN 0-8493-1404-6, Auerbach Publications, 2002

[27] Information Technology Security Evaluation Criteria (ITSEC), Department of Trade and Industry, London, June 1991

[28] Information Technology – System Security Engineering – Capability Maturity Model, ISO/IEC 21827, March 2002

[29] INFOSEC Assurance Capability Maturity Model (IA-CMM), version 3.0, INFOSEC, October 2003

Page 122: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

109

[30] John H., et al., “Integrating IT Security into the Capital Planning and Investment Control Process”, National Institute of Standards and Technology (NIST) Special Publication 800-65, January 2005

[31] Kerth, N. L., Cunningham, W., Using Patterns to Improve Our Architectural Vision, IEEE Software, 14(1): 53-59, January 1997

[32] Macro, A., Buxton, J., The Craft of Software Engineering, Addison-Wesley, 1987

[33] Meszaros, G., Doble, J., A pattern Language for Pattern Writing, http://hillside.net/patterns/writing/patternwritingpaper.htm, 1996

[34] Romanosky, S., Enterprise Security Patterns, Information Systems Security Association Journal, March 2003

[35] Schumacher, M., Security Engineering with Patterns: Origins, Theoretical Model, and New Applications, LNCS 2754, Springer-Verlag Berlin Heidelberg, New York, 2003

[36] Steel, C., Nagappan, R., Lai, R., Core Security Patterns: Best Practices and Strategies for J2EE™, Web Services, and Identity Management, ISBN-10: 0-13-146307-1, Prentice Hall PTR, October 2005

[37] Stoneburner, G., Goguen, A., and Feringa, A., Risk Management Guide for Information Technology Systems, National Institute of Standards and Technology (NIST) Special Publication 800-30, July 2002

[38] Swanson, M., Hash, J., Bowen, P., Guide for Developing Security Plans for Federal Information Systems, National Institute of Standards and Technology (NIST) Special Publication 800-18 Revision 1, February 2006

[39] Tracz, W., An Outline for a Domain-Specific Software Architecture Engineering Process, In Fourth Annual Workshop on Software Reuse, Reston, VA, 1991

[40] Tracz, W., DSSA (Domain-Specific Software Architecture): pedagogical example, ACM SIGSOFT Software Engineering Notes, Volume 20 , Issue 3, Pages: 49 – 62, July 1995

[41] Troy, D. A., Zweben, S. H., Measuring the Quality of Structured Designs. Journal of Systems and Software”, Vol. 2, 1981

[42] Trusted Computer System Evaluation Criteria (TCSEC), DoD 5200.28 – STD, December 1985

[43] Wheeler, D. W., Secure Programming for Linux and Unix HOWTO, http://www.dwheeler.com/secure-programs/, 2002

[44] Wilson, M., Hash, J., Building an Information Technology Security Awareness and Training Program, National Institute of Standards and Technology (NIST) Special Publication 800-50, October 2003

Page 123: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

110

[45] Wu, D., Naeymi, R. I., Colbert, E., Extending MBASE to Support the Development of Secure Systems, Accepted by Software Process Workshop (SPW), Beijing, China, May 2005

[46] Yoder, J., Barcalow, J., Architectural patterns for enabling application security, In Proceedings of the Pattern Languages of Programming (PLoP) Workshop, September 1997

[47] Yourdon, E., Constantine, L., Structured Design: Fundamentals of a Discipline of Computer Program and Systems Design, Prentice-Hall, Yourdon Press, 1979

Page 124: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

111

Appendices

SFR abbreviations and full names

Requirement Class Name (Abbreviation)

Requirement Family Name (Abbreviation)

Security audit (FAU) Security audit automatic response (FAU_ARP)

Security audit data generation (FAU_GEN)

Security audit analysis (FAU_SAA)

Security audit review (FAU_SAR)

Security audit event selection (FAU_SEL)

Security audit event storage (FAU_STG)

Communication (FCO) Non-repudiation of origin (FCO_NRO)

Non-repudiation of receipt (FCO_NRR)

Cryptographic support (FCS) Cryptographic key management (FCS_CKM)

Cryptographic operation (FCS_COP)

User data protection (FDP) Access control policy (FDP_ACC)

Access control functions (FDP_ACF)

Data authentication (FDP_DAU)

Export to outside TSF control (FDP_ETC)

Information flow control policy (FDP_IFC)

Information flow control functions (FDP_IFF)

Import from outside TSF control (FDP_ITC)

Internal TOE transfer (FDP_ITT)

Residual information protection (FDP_RIP)

Rollback (FDP_ROL)

Stored data integrity (FDP_SDI)

Page 125: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

112

Requirement Class Name (Abbreviation)

Requirement Family Name (Abbreviation)

Inter-TSF user data confidentiality transfer protection (FDP_UCT)

Inter-TSF user data integrity transfer protection (FDP_UIT)

Identification and authentication (FIA)

Authentication failures (FIA_AFL)

User attribute definition (FIA_ATD)

Specification of secrets (FIA_SOS)

User authentication (FIA_UAU)

User identification (FIA_UID)

User-subject binding (FIA_USB)

Security management (FMT) Management of functions in TSF (FMT_MOF)

Management of security attributes (FMT_MSA)

Management of TSF data (FMT_MTD)

Revocation (FMT_REV)

Security attribute expiration (FMT_SAE)

Security management roles (FMT_SMR)

FPR: Privacy Anonymity (FPR_ANO)

Pseudonymity (FPR_PSE)

Unlinkability (FPR_UNL)

Unobservability (FPR_UNO)

Protection of the TSF (FPT) Underlying abstract machine test (FPT_AMT)

Fail secure (FPT_FLS)

Availability of exported TSF data (FPT_ITA)

Confidentiality of exported TSF data (FPT_ITC)

Integrity of exported TSF data (FPT_ITI)

Page 126: SECURITY FUNCTIONAL REQUIREMENTS ANALYSIS FOR … · gave me the best love and care in the world. My lovely younger sister, I will be My lovely younger sister, I will be always loving

113

Requirement Class Name (Abbreviation)

Requirement Family Name (Abbreviation)

Internal TOE TSF data transfer (FPT_ITT)

TSF physical protection (FPT_PHP)

Trusted recovery (FPT_RCV)

Replay detection (FPT_RPL)

Reference mediation (FPT_RVM)

Domain separation (FPT_SEP)

State synchrony protocol (FPT_SSP)

Time stamps (FPT_STM)

Inter-TSF TSF data consistency (FPT_TDC)

Internal TOE TSF data replication consistency (FPT_TRC)

TSF self test (FPT_TST)

Resource utilization (FRU) Fault tolerance (FRU_FLT)

Priority of service (FRU_PRS)

Resource allocation (FRU_RSA)

TOE access (FTA) Limitation on scope of selectable attributes (FTA_LSA)

Limitation on multiple concurrent sessions (FTA_MCS)

Session locking (FTA_SSL)

TOE access banners (FTA_TAB)

TOE access history (FTA_TAH)

TOE session establishment (FTA_TSE)

Trusted path/channels (FTP) Inter-TSF trusted channel (FTP_ITC)

Trusted path (FTP_TRP)


Recommended