home *** CD-ROM | disk | FTP | other *** search
/ Hackers Toolkit v2.0 / Hackers_Toolkit_v2.0.iso / HTML / archive / Rainbow / ncsc / vbluencsc.txt < prev    next >
Text File  |  1999-11-04  |  62KB  |  1,428 lines

  1. NCSC-TG-009 - Computer Security Subsystems
  2.  
  3.      Library No. S230,512 
  4.      Version 1 
  5.  
  6. FOREWORD
  7.  
  8. This publication is issued by the National Computer Security Center (NCSC)
  9. as part of its program to promulgate technical computer security
  10. guidelines. This interpretation extends the Department of Defense Trusted
  11. Computer System Evaluation Criteria (DOD 5200.28-STD) to computer security
  12. subsystems. 
  13.  
  14. This document will be used for a period of at least one year after date of
  15. signature. During this period the NCSC will gain experience using the
  16. Computer Security Subsystem Interpretation in several subsystem
  17. evaluations. After this trial period, necessary changes to the document
  18. will be made and a revised version issued. 
  19.  
  20. Anyone wishing more information, or wishing to provide comments on the
  21. usefulness or correctness of the Computer Security Subsystem
  22. Interpretation may contact: Chief Technical Guidelines Division, National
  23. Computer Security Center, Fort George G. Meade, MD 20755-6000, ATTN: Cll. 
  24.  
  25. PATRICK R GALLAGHER, JR. 16 September 1988 
  26.  
  27. Director National Computer Security Center 
  28.  
  29. Computer Security Subsystems ACKNOWLEDGEMENT 
  30.  
  31. ACKNOWLEDGEMENT
  32.  
  33. Acknowledgment is extended to the members of the working group who
  34. produced this Interpretation. Members were: Michael W. Hale, National
  35. Computer Security Center (Chair); James P. Anderson; Terry Mayfie!d,
  36. Institute For Defense Analyses; Alfred W. Arsenault, NCSC; William Geer,
  37. NCSC; John C. Inglis, NCSC; Dennis Steinauer, National Bureau of
  38. Standards; Mario Tinto, NCSC; Grant Wagner, NCSC; and Chris Wilcox, NCSC. 
  39.  
  40. Acknowledgement is further extended to those individuals who conducted
  41. thorough reviews and and provided constructive comments on this document.
  42. Reviewers included: Steve Lipner, Earl Boebert, Virgil Gligor, Debbie
  43. Downs, Len Brown, Doug Hardie, Steve Covington, Jill Sole and Bob Morris. 
  44.  
  45. 1. INTRODUCTION
  46.  
  47. This document provides interpretations of the Department of Defense
  48. Trusted Computer System Evaluation Criteria (DoD 5200.28-STD or TCSEC) for
  49. computer security subsystems. A computer security subsystem (subsystem) is
  50. defined, herein, as hardware, firmware and/or software which can be added
  51. to a computer system to enhance the security of the overall system. A
  52. subsystem's primary utility is to increase the security of a computer
  53. system. The computer system that the subsystem is to protect is referred
  54. to as the protected system in this Interpretation. 
  55.  
  56. When incorporated into a system environment, evaluated computer security
  57. subsystems may be very effective in reducing or eliminating certain types
  58. of vulnerabilities whenever entire evaluated systems are unavailable or
  59. impractical. 
  60.  
  61. 1.1 PURPOSE
  62.  
  63. This Interpretation has been prepared for the following purposes: 
  64.  
  65.      1. to establish a standard for manufacturers as to what security
  66.      features and assurance levels to build into their new and planned
  67.      computer security subsystem products to provide widely available
  68.      products that satisfy trust requirements for sensitive applications; 
  69.      2. to provide a metric to evaluate the degree of trust that can be
  70.      placed in a subsystem for protecting classified and sensitive
  71.      information; 
  72.      3. to lend consistency to evaluations of these products by explicitly
  73.      stating the implications that are in the TCSEC; and 
  74.      4. to provide the security requirements for subsystems in acquisition
  75.      specifications. 
  76.  
  77. 1.2 BACKGROUND
  78.  
  79. The Department of Defense Trusted Computer System Evaluation Criteria (DoD
  80. 5200.28-STD or TCSEC) was developed to establish uniform DoD policy and
  81. security requirements for "trusted, commercially available, automatic data
  82. processing (ADP) systems." Evaluation criteria defined in the TCSEC
  83. provides a standard to manufacturers as to what security features to build
  84. into their commercial products to satisfy trust requirements for sensitive
  85. applications, and serves as a metric with which to evaluate the degree of
  86. trust that can be placed in a computer system for the secure processing of
  87. classified or other sensitive information. 
  88.  
  89. The TCSEC specifies a variety of features that a computer system must
  90. provide to constitute a complete security system. The security
  91. requirements specified in the TCSEC depend on and complement one another
  92. to provide the basis for effective implementation of a security policy in
  93. a trusted computer system. The effectiveness of any one security feature
  94. present within a system is, therefore, dependent to some degree on the
  95. presence and effectiveness of other security features found within the
  96. same system. Because it was intended to be used only for systems which
  97. incorporated all the security features of a particular evaluation class,
  98. the TCSEC does not, in all cases, completely specify these
  99. interdependencies among security features. 
  100.  
  101. In addition to the class of trusted system products, there exists a
  102. recognized need for a class of computer security products which may not
  103. individually meet all of the security features and assurances of the
  104. TCSEC. Instead, these products may implement some subset of the features
  105. enumerated in the TCSEC and can potentially improve the security posture
  106. in existing systems. These products are collectively known as computer
  107. security subsystems. 
  108.  
  109. Evaluation of computer security subsystems against a subset of the
  110. requirements given in the TCSEC has proven an extremely difficult task
  111. because of the implied dependencies among the various features discussed
  112. in the TCSEC. As a consequence, interpretations of these interdependencies
  113. and the relative merits of specific subsystem implementations have been
  114. highly subjective and given to considerable variation. 
  115.  
  116. This document provides interpretations of the TCSEC for computer security
  117. subsystems in an effort to lend consistency to evaluations of these
  118. products by explicitly stating the implications in the TCSEC. 
  119.  
  120. Evaluations can be divided into two types: (l) a product evaluation can be
  121. perforrned on a subsystem from a perspective that excludes the application
  122. environment, or (2) a certification evaluation can be done to assess
  123. whether appropriate security measures have been taken to permit an entire
  124. system to be used operationally in a specific environment. The product
  125. evaluation type is done by the National Computer Security Center (NCSC)
  126. through the Trusted Product Evaluation Process using this interpretation
  127. for subsystems. The certification type of evaluation lS done in support of
  128. a formal accreditation for a system to operate in a specific environment
  129. using the TCSEC. 
  130.  
  131. 1.3 SCOPE
  132.  
  133. This document interprets the security feature, assurance and documentation
  134. requirements of the TCSEC for subsystem evaluations. In this
  135. interpretation, the functional requirements of the TCSEC are divided into
  136. four general categories: 
  137.  
  138.      1. Discretionary Access Control (DAC) 
  139.      2. Object Reuse (OR). 
  140.      3. Identification and Authentication (I&A) 
  141.      4. Audit (AUD) 
  142.  
  143. These categories form the basis for classifying products to be evaluated
  144. as computer security subsystems. 
  145.  
  146. The document, in addition to this introductory section, is organized into
  147. three major sections and a glossary. Section 2 contains the feature
  148. requirements for each of the above four categories on which subsystems
  149. evaluations are based. The requirements in this section are listed in
  150. increments, with only new or changed requirements being added for each
  151. subsequent class of the same feature. All requirements that are quoted
  152. from the TCSEC are in bold print for easy identification and are
  153. clarified, in the context of subsystems, by interpretation paragraphs. 
  154.  
  155. Section 3 contains the assurance requirements for all subsystems. The
  156. assurances that are relevant to each category are listed here in the same
  157. format as the requirements in Section 2. Section 4 contains the
  158. requirements and interpretations for subsystem documentation, again, in
  159. the same forrnat as Section 2. 
  160.  
  161. The TCSEC-related feature and assurance requirements described herein are
  162. intended for the evaluation of computer security subsystems designed to
  163. protect sensitive information. This Interpretation, like the TCSEC,
  164. assumes that physical, administrative, and procedural protection measures
  165. adequate to protect the inforrnation being handled are already in place. 
  166.  
  167. This Interpretation can be used to support a certification evaluation. In
  168. fact, it would be helpful whenever subsystems are a part of the overall
  169. system being certified. 
  170.  
  171. 1.4 EVALUATION OF SUBSYSTEMS
  172.  
  173. 1.4.1 Basis for Evaluation
  174.  
  175. Subsystems are evaluated for the specific security-relevant functions they
  176. perforrn. This Interpretation interprets the relevant TCSEC requirements
  177. for each function evaluated. So the function(s) for which subsystems are
  178. evaluated will be identified within its ratings. Each function has its own
  179. set of ratings as identified in Table 1.1. Subsystems that are evaluated
  180. for more than one function will receive a separate rating for each
  181. function evaluated. 
  182.  
  183. TABLE 1.1. Possible Subsystem Ratings 
  184.  
  185. SUBSYSTEM FUNCTION                   POSSIBLE RATINGS                      
  186.  
  187. Discretionary Access Control         DAC/D, DAC/Dl, DAC/D2, DAC/D3         
  188.  
  189. Object Reuse                         OR/D,OR/D2                            
  190.  
  191. Identification & Authentication      I&A/D, I&A/Dl, I&A/D2                 
  192.  
  193. Audit                                AUD/D, AUD/D2, AUD/D3                 
  194.  
  195.  
  196.  
  197. Although the requirements for subsystems are derived from the TCSEC, the
  198. ratings for subsystems will not directly reflect the TCSEC class they are
  199. derived from. Since subsystems, by their very nature, do not meet all of
  200. the requirements for a class Cl or higher computer system, it is most
  201. appropriate to associate subsystem ratings with the D division of the
  202. TCSEC. This Interpretation defines the Dl, D2 and D3 classes within the D
  203. division for subsystems. The Dl class is assigned to subsystems that meet
  204. the interpretations for requirements drawn from the Cl TCSEC class.
  205. Likewise, the D2 class consists of requirements and interpretations that
  206. are drawn from the C2 TCSEC class. The D3 subsystem class is reserved for
  207. DAC subsystems and audit subsystems that meet the B3 functionality
  208. requirements for those functions. 
  209.  
  210. In addition to meeting the functionality requirements and interpretations,
  211. subsystems must also meet the assurance and documentation requirements in
  212. sections 3 and 4 of this document. The Dl and D2 classes have requirements
  213. and interpretations for ~ssurances and documentation as well as
  214. functionality. 
  215.  
  216. The D3 class contains additional requirements and interpretations only for
  217. functionality, not for assurances or documentation. So, subsystems with
  218. this rating will adhere to the D2 assurance and documentation requirements
  219. and interpretations. 
  220.  
  221. Like the classes within the TCSEC, the Dl, D2 and D3 classes are ordered
  222. hierarchically. Subsystems being evaluated for the Dl class must meet the
  223. requirements and interpretations for the Dl class. Subsystems being
  224. evaluated for the D2 class must meet the requirements and interpretations
  225. for the Dl class plus the additional requirements and interpretations for
  226. the D2 class. Subsystems being evaluated for the D3 class must meet the
  227. additional requirements and interpretations associated with the
  228. functionality at D3. 
  229.  
  230. Although the subsystem requirements and interpretations are derived
  231. directly from the TCSEC, subsystems are not considered to be complete
  232. computer security solutions. There is no general algorithm to derive a
  233. system rating from an arbitrary collection of computer security
  234. subsystems. Any collection of individually evaluated subsystems must be
  235. evaluated as a whole to determine the rating of the resulting system. The
  236. ratings of the individual subsystems in a complete system are not a factor
  237. in the rating of that system. 
  238.  
  239. 1.4.2 Integration Requirements
  240.  
  241. Because all of the TCSEC requirements for a given rating class were
  242. intended to be implemented in a complete computer security system, many of
  243. the security features are dependent upon each other for support within the
  244. system. This poses a certain degree of difficulty with extracting only the
  245. relevant requirements from the TCSEC for a given feature. Further, this
  246. poses a fundamental problem for subsystems because there is an explicit
  247. dependency between security features that restricts the "independent"
  248. incorporation of subsystems into the system's environment. The problem has
  249. been handled in this Interpretation by discussing the integration
  250. requirements for each type of subsystem. The requirements for integration
  251. are discussed for each type of subsystem in a sub-section entitled, "Role
  252. Within Complete Security System." Furthermore, explicit requirements for
  253. integration are stated in the interpretations at appropriate points. The
  254. developer must show, and the evaluation shall validate, that the subsystem
  255. can be integrated into a system to fulfill its designated role. 
  256.  
  257. Most all computer security subsystems will rely on other security-relevant
  258. functions in the enviromnent where they are implemented. Audit subsystems,
  259. for example, depend on an identification and authentication function to
  260. provide the unique user identities that are necessary for individual
  261. accountability. Also, it is important to realize that some of these
  262. functions may be dependent on each other in a cyclic fashion (e.g., I&A
  263. depends on DAC and DAC depends on I&A). In these cases, the cyclic
  264. dependencies should be removed either by complete integration of the
  265. functions or by modularizing the functions in a way that allows linear
  266. dependencies. Tl~is latter method is termed "sandwiching" and it requires
  267. the splitting of one function and surroundmg the other dependent function
  268. with the two functions resulting from the split. For example, in the case
  269. of DAC and I&A cyclic dependencies, one might split I&A into two parts so
  270. that there is a system I&A, a DAC subsystem, and a DAC module containing
  271. its own I&A functionality. 
  272.  
  273. With the exception of object reuse, all functions implemented by
  274. subsystems will be dependent on other functions as shown in Table 1.2. The
  275. functions upon which any subsystem is dependent will be referred to as
  276. that subsystem's required supporting functions. These required supporting
  277. functions must be present in the subsystem's environment for the effective
  278. integration of the subsystem. 
  279.  
  280. TABLE 1.2. Required Supporting Functions 
  281.  
  282. SUBSYSTEM FUNCTION                   REQUIRED SUPPORTING FUNCTIONS         
  283.  
  284. Discretionary Access Control         I&A, Audit                            
  285.  
  286. Object Reuse                         None                                  
  287.  
  288. Identification & Authentication      Audit,DAC2, Audit, I&A, DAC2          
  289.  
  290.  
  291.  
  292. Subsystems that are not self-sufficient in providing required supporting
  293. functions must, at a minimum, provide an interface to their required 
  294.  
  295. supporting functions. The evaluation team will perform tests to show
  296. whether the interface to the required supporting functions is reliable and
  297. works properly. The robustness of the required supporting functions on the
  298. other side of the interface will not be tested, as the scope of the
  299. subsystem evaluation is bounded by the interface. 
  300.  
  301. A more integrated solution is for subsystems to be self- su~cient in
  302. providing all of their required supporting functions. Such subsystems
  303. w_ill be evaluated and assigned a separate rating for each function they
  304. provide. Unlike the previous solution, where only an interface is
  305. provided, each required supporting function is performed by the subsystem
  306. and must be a part of the subsystem evaluation. 
  307.  
  308. The audit supporting functions are required at D2. 2 Audit and/or
  309. authentication data must be protected through domain isolation or DAC. 
  310.  
  311. 1.4.3 WARNING
  312.  
  313. An overan system rating, such as that provided by the TCSEC, cannot be
  314. inferred from the application of one or more separately-rated subsystems.
  315. Mechanisms, interfaces, and the extent of required supporting functions
  316. for each subsystem may differ substantiany and may introduce significant
  317. vulnerabilities that are not present in systems where security features
  318. are designed with fun knowledge of interfaces and host system support.
  319. Therefore, incorporation of an evaluated subsystem into any system
  320. environment does not automaticany confer any rating to the resulting
  321. system. 
  322.  
  323. 2. FEATURE REQUIREMENTS
  324.  
  325. 2.1 DISCRETIONARY ACCESS CONTROL DAC) SUBSYSTEMS
  326.  
  327. 2.1.1 Global Description of Subsystem Features
  328.  
  329. 2.1.1.1 Purpose
  330.  
  331. This subsystem provides user-specified, controlled sharing of resources. 
  332.  
  333. This control is established from security policies which define, given
  334. identified subjects and objects, the set of rules that are used by the
  335. system to determine whether a given subject is authorized to gain access
  336. to a specific object. 
  337.  
  338. DAC features include the means for restricting access to objects; the
  339. means for instantiating authorizations for objects; and the mechanisms for
  340. distribution, review, and revocation of access privileges, especially
  341. during object creation and deletion. 
  342.  
  343. 2.1.1.2 Role Within Complete Security System
  344.  
  345. The requirement is to give individual users the ability to restrict access
  346. to objects created or controlled by them. Thus, given identified subjects
  347. and objects, DAC includes the set of rules (group-oriented and/or
  348. individually-oriented) used by the subsystem to ensure that only specified
  349. users or groups of users may obtain access to data (e.g., based on a
  350. need-to-know). 
  351.  
  352. A DAC subsystem controls access to resowces. As such, it shall be
  353. integrable with the operating system of the protected system and shall
  354. mediate all accesses to the protected resources. To fully protect itself
  355. and the resources it controls, the DAC subsystem must be interfaced to the
  356. protected system in such a way that it is tamperproof and always invoked. 
  357.  
  358. DAC subsystems use the identifiers of both subjects and DAC-controlled
  359. objects as a basis for access control decisions. Thus, they must be
  360. supplied with the identifiers in a reliable manner. The DAC subsystem may
  361. supply subject identification for itself or it may rely on an I&A
  362. mechanism in the protected system or in another subsystem. It is also
  363. essential that DAC subsystems be implemented in an environment where the
  364. objects it protects are well defined and uniquely identified. 
  365.  
  366. At the DAC/D2 class, the DAC subsystem must interface with an auditing
  367. mechanism. This auditing mechanism can be included within the DAC
  368. subsystem, or it may reside elsewhere in the subsystem's environment. 
  369.  
  370. 2.1.2 Evaluation of DAC Subsystems
  371.  
  372. Subsystems which are designed to implement discretionary access controls
  373. to assist a host in controlling the sharing of a collection of objects
  374. must comply with all of the TCSEC requirements as outlined below for
  375. features, assurances and documentation. Compliance with these requirements
  376. will assure that the subsystem can enforce a specifically defined
  377. group-oriented and/or individually-oriented discretionary access control
  378. policy. 
  379.  
  380. As a part of the evaluation, the subsystem vendor shall set up the
  381. subsystem in a typical functional configuration for security testing. This
  382. will show that the subsystem interfaces correctly with the protected
  383. system to meet all of the feature requirements in this section and ali of
  384. the assurance and documentation requirements in Sections 3 and 4. It will
  385. also show that the subsystem can be integrated into a larger system
  386. environment. 
  387.  
  388. The interpretations for applying the feature requirements to DAC
  389. subsystems are explained in the subsequent interpretations sections. The
  390. application of the assurances requirements and documentation requirements
  391. is explained in Sections 3 and 4, respectively. 
  392.  
  393. 2.1.3 Feature Requirements For DAC Subsystems
  394.  
  395. 2.1.3.1 DAC/Dl
  396.  
  397.      TCSEC Quote: 
  398.  
  399. "Cl: New: The TCB shall define and control access between named users and
  400. named objects (e.g., files and programs) in the ADP system. The
  401. enforcement mechanism (e.g., self/group/public controls, access control
  402. lists) shall allow users to special and control sharing of those objects
  403. by named indinduals or defined groups or both." 
  404.  
  405.      Interpretation: 
  406.  
  407. In the TCSEC quote, "TCB" is interpreted to mean "DAC subsystem". 
  408.  
  409. 2.1.3.1.1 Identified users and objects
  410.  
  411. DAC subsystems must use some mechanism to determine whether users are
  412. authorized for each access attempted. At DAC/Dl, this mechanism must
  413. control access by groups of users. The mechanisms that can meet this
  414. requirement include, but are not limited to: access control lists,
  415. capabilities, descriptors, user profiles, and protection bits. The DAC
  416. mechanism uses the identification of subjects and objects to perform
  417. access control decisions. This implies that the DAC subsystem must
  418. interface with or provide some I&A mechanism. The evaluation shall show
  419. that user identities are available to DAC. 
  420.  
  421. 2.1.3.1.2 User-specified object sharing
  422.  
  423. The DAC subsystem must provide the capability for users to specify how
  424. other users or groups may access the objects they control. This requires
  425. that the user have a means to specify the set of authorizations (e.g.,
  426. access control list) of all users or groups permitted to access an object
  427. and/or the set of all objects accessible to a user or group (e.g.,
  428. capabilities). 
  429.  
  430. 2.1.3.1.3 Mediation
  431.  
  432. The checking of the specified authorizations of a user prior to granting
  433. access to an object is the essential function of DAC which must be
  434. provided. Mediation either allows or disallows the access. 
  435.  
  436. 2.1.3.2 DAC/D2
  437.  
  438.      TCSEC Quote: 
  439.  
  440. "C2: Change: The enforcement mechanism (e.g. self/group/public controls,
  441. access control lists) shall allow users to specify and control sharing of
  442. those objects by named individuals, or defined groups of individuals, or
  443. by both, and shan provide controls to limit propagation of access rights."
  444.  
  445. "C2: Add: The discretionary access control mechamsm shan, either by
  446. explicit user action or by default, provide that objects are protected
  447. from unauthorized access. These access controls s~ll be capable of
  448. including or excluding access to the granularity of a single wer. Access
  449. permission to an object by users not already possessing access pernlission
  450. shan only be assigned by authorized users." 
  451.  
  452.      Interpretation: 
  453.  
  454. The following interpretations, in addition to the interpretations for the
  455. DAC/Dl Class, shall be satisfied at the DAC/D2 Class. 
  456.  
  457. 2.1.3.2.1 DAC/D2
  458.  
  459. The DAC/D2 class requires mdividual access controls; therefore, the
  460. granularity of user identification must enable the capabili~ to discern an
  461. individual user. That is, access control based upon group identi~ alone is
  462. insufflcient. To comply with the requirement, the DAC subsystem must
  463. either provide unique user identities through its own I&A mechanism or
  464. Mterface with an I&A mechanism that provides unique user identities. The
  465. DAC subsystem must be able to interface to an auditing mechanism that
  466. records data about access mediation events. The evaluation shall show that
  467. audit data is created and is available to the auditing mechanism. 
  468.  
  469. 2.1.3.2.2 Authorized user-specified object sharing
  470.  
  471. The ability to propagate access rights to objects must be lirnited to
  472. authorized users. This additional feature is incorporated to limit access
  473. rights propagation. This distribution of privileges encompasses granting,
  474. reviewing, and revoking of access. The ability to grant the right to grant
  475. propagation of access will itself be limited to authorized users. 
  476.  
  477. 2.1.3.2.3 Default protection
  478.  
  479. The DAC mechanism must deny all users access to objects when no explicit
  480. action has been taken by the authorized user to allow access. 
  481.  
  482. 2.1.3.3 DAC/D3
  483.  
  484.      ₧ TCSEC Quote: 
  485.  
  486. "B3: Change: The enforcement mechanism (e.g., access control lists) shall
  487. allow users to specify and control sharing of those objects, and shall
  488. provide controls to limit propagation of access rights. These access
  489. controls shall be capable of specifying, for each named object, a list of
  490. named individuals and a list of groups of named individuals with their
  491. respective modes of access to that object." 
  492.  
  493. "Add: Furtherrnore, for each such named object, it shall be possible to
  494. specify a list of named individuals and a list of groups of named
  495. individuals for which no access to the object is to be given." 
  496.  
  497.      ₧ Interpretation: 
  498.  
  499. The following interpretation, in addition to the interpretations and 
  500.  
  501. requirements for the DAC/D2 class, shall be satisfied for the DACID3
  502. class. 
  503.  
  504. 2.1.3.3.1 Access control lists for each object
  505.  
  506. The DAC subsystem shan anow users to specify the list of individuals or
  507. groups of individuals who can access each object. The list shan
  508. additionally specify the mode(s) of access that is anowed each user or
  509. group. This implies that access control lists associated with each object
  510. is the only acceptable mechanism to satisfy the DAC/D3 requirement. 
  511.  
  512. 2.1.4 Assurance Requirements for DAC Subsystems
  513.  
  514. DAC subsystems must comply with an of the assurance requirements for their
  515. given class as indicated below. The interpretations for these assurance
  516. requirements are contained in Section 3. 
  517.  
  518. Subsystems at the DAC/Dl class must comply with: 
  519.  
  520.      ₧ System Architecture (Dl) 
  521.      ₧ System Integrity (Dl) 
  522.      ₧ Security Testing (Dl) 
  523.  
  524. Subsystems at the DAC/D2 and DAC/D3 classes must comply with: 
  525.  
  526.      ₧ System Architecture (D2) 
  527.      ₧ System Integrity (D2) 
  528.      ₧ Security Testing (D2) 
  529.  
  530. 2.1.5 Documentation Requirements for DAC Subsystems
  531.  
  532. DAC subsystems must meet the documentation requirements listed below for
  533. their target rating class. The interpretations for these documentation
  534. requirements are contained in Section 4. 
  535.  
  536. Subsystems at the DAC/Dl class must comply with: 
  537.  
  538.      ₧ Security Features User's Guide (Dl) 
  539.      ₧ Trusted Facility Manual (Dl) 
  540.      ₧ Test Documentation (Dl) 
  541.      ₧ Desi~ Documentation (Dl) 
  542.  
  543. Subsystems at the DAC/D2 and DAC/D3 classes must comply with: 
  544.  
  545.      ₧ Security Features User's Guide (D2) 
  546.      ₧ Trusted Facility Manual (D2) 
  547.      ₧ Test Documentation (D2) 
  548.      ₧ Design Documentation (D2) 
  549.  
  550. 2.2 OBJECT REUSE SUBSYSTEMS
  551.  
  552. 2.2.1 Global Description of Subsystem Features
  553.  
  554. 2.2.1.1 Purpose
  555.  
  556. Object reuse subsystems clear storage objects to prevent subjects from
  557. scavenging data from storage objects which have been previously used. 
  558.  
  559. 2.2.1.2 Role Within the Complete Security System
  560.  
  561. Object reuse can be used to prevent information scavenging by erasing
  562. information residue contained in previously used storage objects that have
  563. been released by the storage management system. Object reuse subsystems
  564. are most effective in environments where some security policy is
  565. implemented on the system. 
  566.  
  567. To prevent scavenging of information from previously used storage objects,
  568. object reuse subsystems must be fully integrable with the operating system
  569. of the protected system. The object reuse subsystem must perform its
  570. function for all reusable storage objects on the protected system (i.e.,
  571. main memory, disk storage, tape storage, I/O buffers, etc.). 
  572.  
  573. Object reuse subsystems must be interfaced with the protected system in
  574. such a way that they are tamperproof and always invoked. 
  575.  
  576. 2.2.2 Evaluation of Object Reuse Subsystems
  577.  
  578. Subsystems which implement object reuse must comply with all of the TCSEC
  579. requirements as outlined below for features, assurances, and
  580. documentation. Compliance with these requirements will show that the
  581. subsystem can enforce object reuse adequately to receive an OR/D2 rating
  582. for object reuse. 
  583.  
  584. As a part of the evaluation, the subsystem vendor shall set up the
  585. subsystem in a typical functional connguration for security testing. This
  586. will show that the subsystem interfaces correctly with the protected
  587. system to meet all of the feature requirements in this section and all of
  588. the assurance and documentation requirements in Sections 3 and 4. It will
  589. also show that the subsystem can be integrated into a larger system
  590. environment. 
  591.  
  592. The interpretations for applying the feature requirements of object reuse
  593. subsystems are explained in the subsequent interpretations section. The
  594. application of the assurance requirements listed below is explained in
  595. Sections 3 and 4, respectively. 
  596.  
  597. 2.2.3 Feature Requirements for Object Reuse Subsystems
  598.  
  599. 2.2.3.1 OR/D2
  600.  
  601.      TCSEC Quote: 
  602.  
  603. "C2: New: all authorizations to the information contained within a storage
  604. object shall be revoked prior to initial assignment, allocation or
  605. reallocation to a subject from the TCB's pool of unused storage objects.
  606. No information, including encrypted representations of information,
  607. produced by a prior subject's actions is to be available to any subject
  608. that obtains access to an object that has been released back to the
  609. system." 
  610.  
  611.      Interpretation: 
  612.  
  613. In the TCSEC quote, "TCB" is interpreted to mean "protected system".
  614. Otherwise, this requirement applies as stated. The object reuse subsystem
  615. shall perform its function for all storage objects on the protected system
  616. that are accessible to users. 
  617.  
  618.      Rationale/Discussion: 
  619.  
  620. Object reuse subsystems must assure that no previously used storage
  621. objects (e.g., message buffers, page frames, disk sectors, magnetic tape,
  622. memory registers, etc.) can be used to scavenge residual information.
  623. Information remaining in previously used storage objects can be destroyed
  624. by overwriting it with meaningless or unintelligible bit patterns. An
  625. alternative way of approaching the problem is to deny read access to
  626. previously used storage objects until the user who has just acquired them
  627. has overwritten them with his own data. 
  628.  
  629. Object reuse subsystems do not equate to systems used to eliminate
  630. magnetic remnance. 
  631.  
  632. 2.2.4 Assurance Requirements for Object Reuse Subsystems
  633.  
  634. Object reuse subsystems must comply with all of the assurance requirements
  635. shown below for the D2 class. The interpretations for these assurance
  636. requirements for Object Reuse subsystems are contained in Section 3. 
  637.  
  638.      ₧ System Architecture (D2) 
  639.      ₧ System Integrity (D2) 
  640.      ₧ Security Testing (D2) 
  641.  
  642. 2.2.5 Documentation Requirements for Object ReuseSubsystems 
  643.  
  644. Object reuse subsystems must meet the documentation requirements shown
  645. below for the D2 class. The interpretations for these documentation
  646. requirements are contained in Section 4. 
  647.  
  648.      ₧ Security Features User's Guide (D2) 
  649.      ₧ Trusted Facility Manual (D2) 
  650.      ₧ Test Documentation (D2) 
  651.      ₧ Design Documentation (D2) 
  652.  
  653. 2.3 IDENTICATION & AUTHENTICATION (I&A) SUBSYSTEMS 
  654.  
  655. 2.3.1 Global Description of Subsystem Features
  656.  
  657. 2.3.1.1 Purpose
  658.  
  659. This subsystem provides the authenticated identification of a user seeking
  660. to gain access to any resources under the control of the protected system.
  661.  
  662. 2.3.1.2 Role Within Complete Security System
  663.  
  664. The I&A subsystem provides an authenticated user identification needed to
  665. provide accountability for and control access to the protected system. The
  666. granularity of user identification is determined by the requirements in
  667. this interpretation. The granularity increases from group identification
  668. at I&A/Dl to individual identification at I&A/D2. 
  669.  
  670. The requirement is to be able to accurately authenticate the claimed
  671. identity of a user. The I&A subsystem must determine whether a user is
  672. authorized to use the protected system. For all authorized users, the I&A
  673. subsystem communicates the identity of the user to the protected system.
  674. This identity can then be used by the protected system or other subsystems
  675. to provide accountability for use of the system and access controls to
  676. protected objects on the system. To be effective and to protect the
  677. authentication data it uses, the I&A subsystem must be tamperproof and
  678. always invoked. 
  679.  
  680. At I&A/D2, it is important that all uses of the I&A subsystem be recorded
  681. in an audit trail. The auditing of these actions may be performed entirely
  682. by the auditing mechanism on the I&A subsystem, or through an interface
  683. with an auditing mechanism in the protected system or another subsystem. 
  684.  
  685. 2.3.2 Evaluation of I&A Subsystems
  686.  
  687. Subsystems which are designed to implement I&A must comply with all of the
  688. TCSEC requirements outlined below for features, assurances, and
  689. documentation. Compliance with these requirements will assure that the
  690. subsystem can enforce, either wholly or in part, a specific I&A policy. As
  691. a part of the evaluation, the subsystem vendor shall set up the subsystem
  692. in a typical functional configuration for security testing. This will show
  693. that the subsystem interfaces correctly with the protected system to meet
  694. all of the feature requirements in this section and all of the assurance
  695. and documentation requirements in Sections 3 and 4. It will also show that
  696. the subsystem can be integrated into a larger system environment. 
  697.  
  698. The interetations for applying the feature requirements to I&A subsystems
  699. are explained in the subsequent interpretations sections. The application
  700. of the assurance requirements and documentation requirements listed in the
  701. next section is explained in Sections 3 and 4, respectively. 
  702.  
  703. 2.3.3 Feature Requirement for I&A Subsystems
  704.  
  705. 2.3.3.1 I&A/Dl
  706.  
  707.      TCSEC Quote: 
  708.  
  709. "Cl: New: The TCB shall require users to identify themselves to it before
  710. beginning to perform any other actions that the TCB is expected to
  711. mediate. Furthermore, the - TCB shall use a protected mechanism (e.g.,
  712. passwords) to authenticate the user's identity. The TCB shall protect
  713. authentication data so that it cannot be accessed by any unauthorized
  714. user." 
  715.  
  716.      Interpretation: 
  717.  
  718. The I&A subsystem shall require users to identify themselves to it before
  719. beginning to perforrn any other actions that the system is expected to
  720. mediate. Furthermore, the I&A subsystem shall use a protected mechanism
  721. (e.g., passwords) to authenticate the user's identity. The I&A subsystem
  722. shall protect authentication data so that it cannot be accessed by any
  723. unauthorized user. 
  724.  
  725. The I&A subsystem shall, at a minimum, identify and authenticate system
  726. users. At I&A/Dl, users need not be individually identified. 
  727.  
  728.      Rationale/Discussion: 
  729.  
  730. Identification and Authentication must be based on at least a two-step
  731. process, which is derived from a combination of something the user
  732. possesses (e.g., smart card, magnetic stripe card), some physical
  733. attribute about the user (e.g., fingerprint, voiceprint), something the
  734. user knows (e.g., password, passphrase). The claimed identification of a
  735. user must be authenticated by an explicit action of the user. It is not
  736. acceptable for one step to be used as both identification and
  737. authentication. The claimed identity can be public. The measure used for
  738. authentication must be resistant to forging, guessing, and fabricating. 
  739.  
  740. The I&A subsystem must interface to the protected system in such a way
  741. that it can reliably pass authenticated user identities to the protected
  742. system. The evaluation shall show that authenticated user identities can
  743. be passed to the protected system. 
  744.  
  745. 2.3.3.2 I&A/D2
  746.  
  747.      TCSEC Quote: - 
  748.  
  749. "C2: Add: The TCB shan be able to enforce individual accountability by
  750. providing the capability to uniqueb identify each individual ADP system
  751. user. The TCB shall also ; provide the capabmty of associa~ ~is identity
  752. ~nth an auditable actiol~ taken by ; that indindual." 
  753.  
  754.      Interpretation ~ 
  755.  
  756. The following interpretations, in addition to those interpretations for
  757. I&A/Dl, shall be satisfied at the I&A/D2 Class. 
  758.  
  759. In the TCSEC quote, "TCB" is interpreted to mean "I&A subsystem." The I&A
  760. subsystem shall pass to the protected system a unique identifier for each
  761. individual. 
  762.  
  763. The I&A subsystem shall be able to uniquely identify each individual user.
  764. This includes the ability to identify individual members within an
  765. authorized user group and the ability to identify specific system users
  766. such as operators, system administrators, etc. 
  767.  
  768. The I&A subsystem shall provide for the audit logging of security-relevant
  769. I&A events. For I&A, the origin of the request (e.g., terminal ID, etc.),
  770. the date and time of the event, user ID (to the extent recorded), type of
  771. event, and the success or failure of the event shall be recorded. The I&A
  772. subsystem may meet this requirement either through its own auditing
  773. mechanism or by providing an interface for passing the necessary data to
  774. another auditing mechanism. , 
  775.  
  776.      Rationale/Discussion: 
  777.  
  778. The intent of this requirement is for the I&A subsystem to supply a unique
  779. identity for each user to the protected system. The subsystem supplies a
  780. unique user identity which may or may not be used by an auditing
  781. mechanism. This auditing support is : required to maintain consistency
  782. with the C2 level of trust as defined by the TCSEC. 
  783.  
  784. 2.3.4 Assurance Requirements for I&A Subsystems
  785.  
  786. I&A subsystems must comply with all of the assurance requirements listed
  787. below for their given class. The interpretations for these assurance
  788. requirements to I&A subsystems are contained in Section 3. 
  789.  
  790. Subsystems at the I&A/Dl class shall comply with: 
  791.  
  792.      ₧ System Architecture (Dl) 
  793.      ₧ System Integrity (Dl) 
  794.      ₧ Security Testing (Dl) . 
  795.  
  796. Subsystems at the I&A/D2 class shall comply with: 
  797.  
  798.      ₧ System Architecture (D2) 
  799.      ₧ System Integrity (D2) 
  800.      ₧ Security Testing(D2) 
  801.  
  802. 2.3.5 Documentation Requirements for I&A Subsystems
  803.  
  804. I&A subsystems must meet the documentation requirements listed below for
  805. their target rating class. The interpretations for these documentation
  806. requirements are contained in Section 4. 
  807.  
  808. Subsystems at the I&A/Dl class shall comply with: 
  809.  
  810.      ₧ Security Features User's Guide (Dl) 
  811.      ₧ Trusted Facility Manual (Dl) 
  812.      ₧ Test Documentation (Dl) 
  813.      ₧ Design Documentation (Dl) 
  814.  
  815. Subsystems at the I&A/D2 class shall comply with: 
  816.  
  817.      ₧ Security Features User's Guide (D2) 
  818.      ₧ Trusted Facility Manual (D2) 
  819.      ₧ Test Documentation (D2) 
  820.      ₧ Design Documentation (D2) 
  821.  
  822. 2.4 AUDlT SUBSYSTEMS
  823.  
  824. 2.4.1 Global Description of Subsystem Features
  825.  
  826. 2.4.1.1 Purpose
  827.  
  828. Accountability is partly achieved through auditing. That is, data from
  829. security- relevant events is captured and passed to the audit mechanism to
  830. be recorded for use in detecting possible security breaches and providing
  831. a trace to the party responsible. 
  832.  
  833. 2.4.1.2 Role Within Complete Security System
  834.  
  835. The requirement is to be able to record security-relevant events in a
  836. manner that will allow detection and/or after-the-fact investigations to
  837. trace security violations to the responsible party. 
  838.  
  839. An auditing subsystem must be capable of recording all security-relevant
  840. actions -i - that take place throughout the computer system. To accomplish
  841. this goal, it must integrate itself into the mechanisms that mediate
  842. access and perform user identification and authentication, and capture
  843. data about the events they control. Additionally, an audit subsystem must
  844. be interfaced with the protected system in such a way that it is
  845. tamperproof and always invoked. 
  846.  
  847. The auditing subsystem must be provided all of the necessary data
  848. associated with actions as specified in Section 2.4.3. The necessary data
  849. includes the unique identity of the user that is responsible for each
  850. action. This implies that an auditing subsystem must be augmented by an
  851. identification and authentication mechanism either within the subsystem
  852. itself or elsewhere on the system. 
  853.  
  854. 2.4.2 Evaluation of Auditing Subsystems
  855.  
  856. Subsystems which are designed to implement audit data collection and
  857. control functions for a host must comply with all of the TCSEC
  858. requirements as outlined below for features, assurances and documentatioi.
  859. Compliance with these features will assure that the subsystem, through its
  860. integration, can detect or generate the relevant audit data or can record
  861. all relevant audit data passed to it by the host or other subsystems. 
  862.  
  863. As a part of the evaluation, the subsystem vendor shall set up the
  864. subsystem in a typical functional configuration for security testing. This
  865. will show that the subsystem interfaces correctly with the protected
  866. system to meet all of the feature requirements in this section and all of
  867. the assurance and documentation requirements in Sections 3 and 4. It will
  868. also show that the subsystem can be integrated into a larger system
  869. environrnent. 
  870.  
  871. The interpretations for applying the feature requirements to auditing
  872. subsystems are explained in the subsequent interpretations sections. The
  873. application of the assurance requirements and documentation requirements
  874. is explained in Sections 3 and 4, respectively. 
  875.  
  876. 2.4.3 Feature Requirements For Auditing Subsystems
  877.  
  878. 2.4.3.1 AUD/D2
  879.  
  880.      TCSEC Quote: 
  881.  
  882. "C2: New: The TCB shan be able to create, maintain, and protect from
  883. modification or unauthorized access or destruction an audit trail of
  884. accesses to the objects it protects. The audit data shan be protected by
  885. the TCB so that read access to it is limited to those who are authorized
  886. for audit data. The TCB shall be able to record the following types of
  887. events: use of identification and authentication mechanisms introduction
  888. of objects into a user's address space (e.g., file open, program ~.
  889. initiation), deletion of objects, actions taken by computer operators and
  890. system administrators and/or system security officers, and other security
  891. relevant events. For each recorded event, the audit record shall identify:
  892. date and time of the event, ~ user, type of event, and success or failure
  893. of the event. For identincation/authentication events the origin of
  894. request (e.g., terminal ID) shan be - included in the audit record. For
  895. events that introduce an object into a user's address space and for object
  896. deletion events the audit record shall include the name of the object. rne
  897. ADP system administrator shall be able to selectively audit the actions of
  898. any one or more users based on individual identity." 
  899.  
  900.      Interpretations: 
  901.  
  902. The following subsections provide interpretations of the TCSEC
  903. requirements which shall be satisfied by auditing subsystems at AUD/D2. 
  904.  
  905. 2.4.3.1.1 Creation and management of audit trail
  906.  
  907. The auditing subsystem shall create and manage the audit trail of
  908. security-relevant " events in the system. If the other portions of the
  909. system are unable to capture data about such events, the auditiug
  910. subsystem shaU coutain the necessary interfaces into the system to perform
  911. this function. Alternatively, the auditing subsystem might simply accept
  912. and store data about events if the other portions of the system are
  913. capable of creating such data and passing them on. 
  914.  
  915.      Rationale/Discussion: 
  916.  
  917. To meet this requirement, it is sufficient that the audit subsystem
  918. provides a set of calls which permit the system to supply the needed data
  919. as parameters that the audit subsystem puts into a data structure and
  920. routes to audit storage (or transmits securely to an audit logger). 
  921.  
  922. 2.4.3.1.2 Protection of audit data
  923.  
  924. It shall be demonstrated that the audit data is protected from
  925. unauthorized modification. This protection will be provided either by the
  926. subsystem itself or by its integration with the protected system. 
  927.  
  928.      Rationale/Discussion: 
  929.  
  930. The auditing subsystem might store the audit data in a dedicated data
  931. storage area that cannot be accessed by any subject on the system except
  932. the auditing subsystem itself and the system security officer (or system
  933. administrator through the auditing subsystem. Or, if the protected system
  934. has adequate access control facilities, the audit data might be stored on
  935. the protected system, using its access control mechanisms for protection. 
  936.  
  937. 2.4.3.1.3 Access control to audit
  938.  
  939. The audit mechanism, auditing parameters, and the audit data storage media
  940. shall be protected to ensure access is allowed only to authorized
  941. individuals. Individuals who are authorized to access the audit data shall
  942. be able to gain access only through the auditing subsystem. 
  943.  
  944.      Rationale/Discussion: 
  945.  
  946. This interpretation assumes that discretionary access controls or physical
  947. controls will be in place to keep unauthorized individuals from gaining
  948. access to the audit data. 
  949.  
  950. 2.4.3.1.4 Specific types of events
  951.  
  952. Data about all security relevant events must be recorded. The other
  953. portions of the system shall be able to pass data concerning these events
  954. to the auditing subsystem, or the auditing subsystem shall have the
  955. necessary code integrated into the other portions of the system to pass
  956. the data to the collection point. 
  957.  
  958. 2.4.3.1.5 Specific infolmation per event
  959.  
  960. All of the specific information enumerated in the TCSEC quote shall be
  961. captured for each recorded event. Of particular concern, is the recording
  962. of the user identity with each recorded event. 
  963.  
  964.      Rationale/Discussion: 
  965.  
  966. This implies that the audit subsystem must be able to acquire user
  967. identities from an I&A mechanism, which may be provided on the audit
  968. subsystem itself, on the protected system, or in a separate I&A subsystem.
  969. Whichever is the case, the evaluation shall show that the audit subsystem
  970. has a working interface to an I&A mechanism. 
  971.  
  972. 2.4.3.1.6 Ability to selectively audit individuals
  973.  
  974. The auditing subsystem shall have the ability to perform selection of
  975. audit data based on individual users. 
  976.  
  977.      Rationale/Discussion: 
  978.  
  979. This requirement can be satisfied by pre-selection of the information to
  980. be recorded in the audit log (selective logging) and/or by post-selection
  981. of information to be extracted from the audit log (selective reduction).
  982. The reduction of the audit log must be able to show all of the
  983. security-relevant actions performed by any specified individual. The
  984. intent of selective logging is to reduce the volume of audit data to be
  985. recorded by only recording audit data for those specific individuals that
  986. the systcm security officer (or system administrator) specifies. The
  987. intent of selective reduction is to reduce the large volume of audit data
  988. into a collection of intelligible information which can be more
  989. efficiently used by the system administrator. 
  990.  
  991. 2.4.3.2 AUD/D3
  992.  
  993.      ₧ TCSEC Quote: 
  994.  
  995. "B3: Add: The TCB shal~ contain a mechanism that is able to monitor the
  996. occurrence or accumulation of security auditable events that may indicate
  997. an imminent violation of security policy. This mechanism shall be able to
  998. immediately notify the security administrator when thresholds are exceeded
  999. and, if the occurrence or accumulation of these securib relevant events
  1000. continues, the system shall take the least disruptive action to terminate
  1001. the event." 
  1002.  
  1003.      ₧ Interpretation: The following interpretation, in addition to the
  1004.      interpretation and requirement for AUD/D2, shall be satisfied for the
  1005.      AUD/D3 class. 
  1006.  
  1007. 2.4.3.2.1 Real-time alarms
  1008.  
  1009. The auditing subsystem shall provide the capability for the
  1010. security administrator to set thresholds for certain auditable
  1011. events. Furthermore, when the thresholds are exceeded, the audit
  1012. subsystem shall immediately notify the security administrator of
  1013. an imminent security violation. 
  1014.  
  1015. 2.4.4 Assurance Requirements for Auditing Subsystems
  1016.  
  1017. Audit subsystems, whether being evaluated at AUD/D2 or AUD/D3, must comply
  1018. with the assurance requirements listed below for the D2 class. The
  1019. interpretations for these assurance requirements are contained in Section
  1020. 3. 
  1021.  
  1022.      ₧ System Architecture (D2) 
  1023.      ₧ System Integrity (D2) 
  1024.      ₧ Security Testing (D2) 
  1025.  
  1026. 2.4.5 Documentation Requirements for Auditing Subsystems
  1027.  
  1028. Audit subsystems, whether being evaluated at AUD/D2 or AUD/D3, must meet
  1029. the documentation requirements listed below for the D2 class. The
  1030. interpretations for these documentation requirements are contained in
  1031. Section 4. 
  1032.  
  1033.      ₧ Security Features User's Guide (D2) 
  1034.      ₧ Trusted Facility Manual (D2) 
  1035.      ₧ Test Documentation (D2) 
  1036.      ₧ Design Documentation (D2) 
  1037.  
  1038. 3. ASSURANCE REQUIREMENTS
  1039.  
  1040. Rated subsystems must provide correct and accurate operations. Assurance
  1041. must be provided that correct implementation and operation of the
  1042. subsystem's function exist throughout the subsystem's life cycle. The
  1043. objective in applying these assurance requirements is to develop
  1044. confidence that the subsystem has been implemented correctly and that it
  1045. is protected from tampering and circumvention. 
  1046.  
  1047. The requirement is that the subsystem must contain hardware/software
  1048. mechanisms that can be independently evaluated through a combination of
  1049. inspection and testing to provide sufficient assurance that the subsystem
  1050. features enforce or support the functions for which the subsystem is
  1051. intended. To receive a rating, a subsystem must meet the assurance
  1052. requirements at the same level of trust as it has I met the requirements
  1053. for functionality. The assurances must be applied to the different types
  1054. of subsystems as described in the previous sections. 
  1055.  
  1056. 3.1 SUBSYSTEM ARCHITECTURE
  1057.  
  1058. Subsystem architecture evaluation is designed to provide operational
  1059. assurances with regard to the design and implementation of the protection
  1060. mechanisms of the subsystem and its interfaces to the host/host TCB. 
  1061.  
  1062. 3.1.1 Arch:D1
  1063.  
  1064.      TCSEC Quote: 
  1065.  
  1066. "Cl: New: The TCB shall maintain a domain for its own execution that
  1067. protects it from external interference or tampering (e.g., by modification
  1068. of its code or data structures). Resources controned by the TCB may be a
  1069. defined subset of the subjects and objects in the ADP system." 
  1070.  
  1071.      Interpretation: 
  1072.  
  1073. This requirement applies to all subsystems evaluated at all classes,
  1074. regardless of the function(s) they perform. There are two specific
  1075. elements of this requirement: Execution Domain Protection and Defined
  1076. Subsets. 
  1077.  
  1078. 3.1.1.1 Execution Domain Protection
  1079.  
  1080. Protection of the subsystem's mechanism and data from external
  1081. interference or tampering must be provided. The code and data of the
  1082. subsystem may be protected' through physical protection (e.g., by the
  1083. subsystem's dedicated hardware base) or by 
  1084.  
  1085. logical isolation (e.g., using the protected system's domain mechanism). 
  1086.  
  1087.      Rationale and Discussion: 
  1088.  
  1089. The subsystem may be contained entirely on its own hardware base which
  1090. must protect the operational elements of the mechanisms. Alternatively,
  1091. all or a portion of the subsystem may be implemented on the hardware of
  1092. the host, in which case the host system's architecture must protect this
  1093. portion from external interference or tampering. 
  1094.  
  1095. 3.1.1.2 Defined Subsets
  1096.  
  1097. I&A subsystems, when used for the system's I&A, define the subset of
  1098. subjects under the control of the system's TCB. DAC subsystems may protect
  1099. a subset of the total collection of objects on the protected system. 
  1100.  
  1101. 3.1.2 Arch:D2
  1102.  
  1103.      TCSEC Quotes: 
  1104.  
  1105. "C2: Add: The TCB shall isolate the resources to be protected so that they
  1106. are subject to the access control and auditing requirements." 
  1107.  
  1108.      Interpretation: 
  1109.  
  1110. In the TCSEC quote, "TCB" is interpreted to mean "subsystem". 
  1111.  
  1112. This requirement applies to all subsystems evaluated at the D2 class or
  1113. the D3 class. The following interpretations explain how this requirement
  1114. applies to specific functions performed by subsystems. 
  1115.  
  1116.      ₧ Interpretation for DAC Subsystems: 
  1117.  
  1118. All named objects which are in the defined subset of protected objects
  1119. shall be isolated such that the DAC subsystem mediates all access to those
  1120. objects. 
  1121.  
  1122.      ₧ Interpretation for Auditing Subsystems: 
  1123.  
  1124. The system's architecture shall ensure that the auditing mechanism cannot
  1125. be bypassed by any subjects accessing those objects under the system's
  1126. control. 
  1127.  
  1128.      ₧ Interpretation for Object Reuse Subsystems 
  1129.  
  1130. The notion of subsetting objects is not applicable to object reuse
  1131. subsystems. Object reuse subsystems shall perform their function for all
  1132. storage objects on the protected system that are accessible to users. 
  1133.  
  1134.      ₧ Interpretation for I&A Subsystems: 
  1135.  
  1136. This requirement applies to I&A subsystems. Authentication data shall be
  1137. protected from unauthorized access. Access to the authentication data
  1138. shall also be recorded in the audit trail. 
  1139.  
  1140. 3.2 SUBSYSTEM INTEGRITY
  1141.  
  1142. Subsystem integrity evaluation is designed to provide operational
  1143. assurances with regard to the correct operation of the protection
  1144. mechanisms of the subsystem and its interfaces to the protected system. 
  1145.  
  1146. 3.2.1 Integity:D1
  1147.  
  1148.      TCSEC Quote 
  1149.  
  1150. "Cl: New: Hardware and/or software features shan be provided that can be
  1151. used to periodicany ~aUdate the correct operation of the on site hardware
  1152. and firmware elements of the TCB." 
  1153.  
  1154.      Interpretation: 
  1155.  
  1156. In the TCSEC quote, "TCB" is interpreted to mean "subsystem". 
  1157.  
  1158. This requirement applies to an subsystems evaluated at any class,
  1159. regardless of the functions they perform. 
  1160.  
  1161.      Rationale/Discussion 
  1162.  
  1163. The capability must exist to validate the correct operation of all
  1164. hardware and firrnware elements of the system regardless of whether they
  1165. reside within the subsystem, the protected system, or other interfacing
  1166. subsystems. If the hardware and/or firmware elements of the protected
  1167. system or other interfacing subsystems play an integral role in the
  1168. protection and/or correct operation of the subsystem, then they must
  1169. comply with this requirement as though they were part of the subsystem. 
  1170.  
  1171. 3.2.2 Integrity:D2
  1172.  
  1173. There are no additional requirements for System Integrity at D2. 
  1174.  
  1175. 3.3 SECURITY TESTING
  1176.  
  1177. Testing, as part of the evaluation, is designed to provide life cycle
  1178. assurances with regard to the integrity of the subsystem. Further, testing
  1179. provides additional assurances regarding the correct operation of the
  1180. protection mechanisms of the subsystem and the subsystem's interfaces to
  1181. the protected system. These mechanisms and their interfaces to the
  1182. protected system, are termed the Subsystem's Security- Relevant Portion
  1183. (SRP). 
  1184.  
  1185. 3.3.1 Test:Dl
  1186.  
  1187.      TCSEC Quote: 
  1188.  
  1189. "Cl: New: The securib mechanisms of the ADP system shan be tested and
  1190. found to work as claimed in the system documentation. Testing shan be done
  1191. to assure that there are no ob~ious ways for an unauthorized wer to bypass
  1192. or otherwise defeat the security protection mechanisms of the TCB. (See
  1193. the Security Testing Guidelines.) " 
  1194.  
  1195.      Interpretation 
  1196.  
  1197. This requirement applies to all subsystems evaluated at any class,
  1198. regardless of the function(s) they perform. In the TCSEC quote, "TCB" is
  1199. interpreted to mean subsystem. 
  1200.  
  1201. The subsystem's SRP shall be tested and found to work as claimed in the
  1202. subsystem's documentation. The addition of a subsystem to a protected
  1203. system shall not cause obvious flaws to the resulting system. _ 
  1204.  
  1205. Test results shall show that there are no obvious ways for an unauthorized
  1206. user to bypass or otherwise defeat the subsystem's SRP. 
  1207.  
  1208.      Rational/Discussion: 
  1209.  
  1210. Security testing is a very important part of subsystem evaluations. It is
  1211. essential that the subsystem be demonstrated to operate securely. 
  1212.  
  1213. 3.3.2 Test:D2
  1214.  
  1215.      TCSEC Quote: 
  1216.  
  1217. "C2: Add: Testing shan also include a search for obvious flaws that would
  1218. anow nolation of resource isolation, or that would permit unauthorized
  1219. access to the audit or authentication data." 
  1220.  
  1221.      Interpretation: 
  1222.  
  1223. This requirement applies to the testing of the SRP of any subsystem
  1224. evaluated at the D2 class or the D3 class. 
  1225.  
  1226.      Rationale/Discussion 
  1227.  
  1228. The requirement as written in the TCSEC quote is directly applicable. This
  1229. requirement is to ensure that subsystems at D2 cannot be circumvented or
  1230. tampered with. 
  1231.  
  1232. 4. DOCUMENTATION REQUIREMENTS
  1233.  
  1234. Documentation shan produce evidence that the subsystem can and does
  1235. provide specified security features. The evaluation will focus on the
  1236. completeness of this evidence through inspection of documentation
  1237. structure and content and through a mapping of the documentation to the
  1238. subsystem's implementation and its operation. 
  1239.  
  1240. 4.1 SECURITY FEATURES USER'S GUIDE
  1241.  
  1242. 4.1.1 SFUG:Dl
  1243.  
  1244.      TCSEC Quote: 
  1245.  
  1246. "Cl: New: A single summaIy, chapter, or manual in user documentation shall
  1247. describe the protection mechanisms provided by the TCB, guidelines on
  1248. their use, and how they interact with one another." 
  1249.  
  1250.      Interpretation: 
  1251.  
  1252. All subsystems shall meet this requirement in that they shall describe the
  1253. protection mechanisms provided by the subsystem. 
  1254.  
  1255.      Rationale/Discussion: 
  1256.  
  1257. It is recognized that some subsystems may be partially or completely
  1258. transparent to the general user. In such cases, this requirement can be
  1259. met by documenting the functions the subsystem performs so users will be
  1260. aware of what the subsystem does. Other subsystems which have a very
  1261. limited user interface may not need to be accompanied by more than a
  1262. pocketsize card available to every user. In short, the documentation
  1263. required to meet this requirement need not be elaborate, but must be clear
  1264. and comprehenslve. 
  1265.  
  1266. 4.1.2 SFUG:D2
  1267.  
  1268.      Interpretation: 
  1269.  
  1270. There are no additional requirements at the D2 class. 
  1271.  
  1272. 4.2 TRUSTED FACILITY MANUAL
  1273.  
  1274. 4.2.1 TFM:Dl
  1275.  
  1276.      TCSEC Quote : 
  1277.  
  1278. "Cl: New: A manual addressed to the ADP system admmistrator shan present
  1279. cautions about functions and prvileges that should be controlled when
  1280. running a secure facility." 
  1281.  
  1282.      Interpretation: 
  1283.  
  1284. This requirement applies to all subsystems in that the manual shall
  1285. present cautions about functions and privileges provided by the subsystem.
  1286. Further, this manual shall present specific and precise direction for
  1287. effectively integrating the subsystem into the overall system. 
  1288.  
  1289. 4.2.2 TFM:D2
  1290.  
  1291.      TCSEC Quote: 
  1292.  
  1293. "C2: Add: The procedures for examining and maintaMing the audit files as
  1294. well as the detailed audit record structure for each type of audit event
  1295. shall be given." 
  1296.  
  1297.      Interpretation: 
  1298.  
  1299. This requirement applies directly to all auditing subsystems and to other
  1300. subsystems that maintain their own audit data concerning events that
  1301. happen under their control. For subsystems that create audit data and pass
  1302. it to an external auditing collection and maintenance facility, the audit
  1303. record structure shall be documented; however, the procedures for
  1304. examination and maintenance of audit files may be left to the external
  1305. auditing facility. 
  1306.  
  1307. 4.3 TEST DOCUMENTATION
  1308.  
  1309. 4.3.1 TD:Dl
  1310.  
  1311.      TCSEC Quote: 
  1312.  
  1313. "Cl: New: The system developer shall provide to the evaluators a document
  1314. that describes the test plan, test procedures that show how the securib
  1315. mechanisms were tested, and results of the security mechanisms' functional
  1316. testing." 
  1317.  
  1318.      Interpretation: 
  1319.  
  1320. The document shall explain the exact configuration used for security
  1321. testing. All mechanisms supplying the required supporting functions shall
  1322. be identified. All interfaces between the subsystem being tested, the
  1323. protected system, and other subsystems shall be described. 
  1324.  
  1325. 4.3.2 TD:D2
  1326.  
  1327.      Interpretation 
  1328.  
  1329. There are no additional requirements at the D2 class. 
  1330.  
  1331. 4.4 DESIGN DOCUMENTATION
  1332.  
  1333. 4.4.1 DD:Dl
  1334.  
  1335.      TCSEC Quote: 
  1336.  
  1337. "Cl: New: Documentation shall be available that provides a description of
  1338. the manufacturer's philosophy of protection and an explanation of how this
  1339. philosophy is translated into the TCB. If the TCB is composed of distinct
  1340. modules, the interfaces between these modules shall be described. " 
  1341.  
  1342.      Interpretation: 
  1343.  
  1344. This requirement applies directly to all subsystems. Specifically, the
  1345. design documentation shall state what types of threats the subsystem is
  1346. designed to protect against (e.g., casual browsing, determined attacks,
  1347. accidents). This documentation shan show how the protection philosophy is
  1348. translated into the subsystem's SRP. Design documentation shan also
  1349. specify how the subsystem is to interact with the protected system and
  1350. other subsystems to provide a complete computer security system. If the
  1351. SRP is modularized, the interfaces between these modules shall be
  1352. described. 
  1353.  
  1354. 4.4.2 DD:D2
  1355.  
  1356. There are no additional requirements for Design Documentation at the D2
  1357. class. 
  1358.  
  1359. 5- GLOSSARY
  1360.  
  1361. Accreditation - The offlcial authorization that is granted to an ADP
  1362. system to process sensitive information in its operational environment,
  1363. based upon , comprehensive security evaluation of the system's hardware,
  1364. firmware, and software . security design, configuration and implementation
  1365. of the other system procedural, administrative, physical, TEMPEST,
  1366. personnel, and comrnunications controls. 
  1367.  
  1368. Audit - The procedure of capturing, storing, maintaining, and managing
  1369. data concerning security-relevant events that occur on a computer system.
  1370. The data recorded are intended for use in detecting security violations
  1371. and tracing thosc violations to the responsible individual. 
  1372.  
  1373. Audit trail - A set of records that collectively provide documentary
  1374. evidence of processing users to aid in tracing from original transactions
  1375. forward to related records and reports, and/or backwards from records and
  1376. reports to their component source transactions. 
  1377.  
  1378. Authenticate - To establish the validity of a claimed identity. 
  1379.  
  1380. Authorization - Permission which establishes right to access information. 
  1381.  
  1382. Certification evaluation - The technical evaluation of a system's security
  1383. features, made as part of and in support of the approval/accreditation
  1384. process, that establishes " the extent to which a particular computer
  1385. system's design and implementation meet a set of specified security
  1386. requirements. 
  1387.  
  1388. Computer security subsystem - Hardware, firmware and/or software which are
  1389. added to a computer system to enhance the security of the overall system. 
  1390.  
  1391. Group user - A user of a computer system whose system identification is
  1392. the name of a defined group of users on that system. 
  1393.  
  1394. Individual user - A user of a computer system whose system identification
  1395. is unique, in that no other user on that system has that same
  1396. identification. 
  1397.  
  1398. Named object - An object which is directly manipulable at the TCB
  1399. interface. Thc object must have meaning to more than one process. 
  1400.  
  1401. Product evaluation - Thc technical evaluation of a product's security
  1402. features to determine the level of trust that can be placed in that
  1403. product as defined by thc NCSC. evaluation criteria for that type of
  1404. product (e.g., operating system, database management system, computer
  1405. network, computer security subsystem). Product evaluations do not consider
  1406. the application of the product in the evaluation. 
  1407.  
  1408. Protected system - The system being protected. In the context of computer
  1409. security subsystems, a stand-alone computer system or a computer network
  1410. to which a subsystem is attached to pronde some computer security
  1411. function. 
  1412.  
  1413. Security Relevant Portion (SRP) - The protection-critical mechanism of the
  1414. subsystem, the subsystem's interface(s) to the protected system, and
  1415. interfaces to the mechanisms providing required supporting functions. For
  1416. most cases, the SRP encompasses the entire subsystem. 
  1417.  
  1418. Subsystem - See "computer security subsystem." 
  1419.  
  1420. System - The combination of the protected system and the computer security
  1421. subsystem. 
  1422.  
  1423. *U.S. GOVERNMENT PRINTING OFFICE: 1989-225-703 
  1424.  
  1425.  
  1426.  
  1427.  
  1428.