SCAP Working Group D. Waltermire Internet Draft NIST Intended status: Informational October 18, 2010 Expires: April 18, 2011 The Extensible Configuration Checklist Description Format (XCCDF) Version 1.1.4 draft-waltermire-scap-xccdf-00.txt Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. This document may not be modified, and derivative works of it may not be created, except to publish it as an RFC and to translate it into languages other than English. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html This Internet-Draft will expire on April 18, 2009. Copyright Notice Copyright (c) 2010 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this Waltermire Expires April 18, 2011 [Page 1] Internet-Draft XCCDF Version 1.1.4 October 2010 document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Abstract This document specifies the data model and Extensible Markup Language (XML) representation for the Extensible Configuration Checklist Description Format (XCCDF) Version 1.1.4. An XCCDF document is a structured collection of security configuration rules for some set of target systems. The XCCDF specification is designed to support information interchange, document generation, organizational and situational tailoring, automated compliance testing, and compliance scoring. The specification also defines a data model and format for storing results of security guidance or checklist compliance testing. The intent of XCCDF is to provide a uniform foundation for expression of security checklists and other configuration guidance, and thereby foster more widespread application of good security practices. Table of Contents 1. Introduction...................................................5 2. Conventions used in this document..............................6 3. Background.....................................................6 3.1. Motivation................................................7 3.2. Vision for Use............................................8 3.3. Summary of Changes since Version 1.0......................9 4. High-Level Requirements for XCCDF..............................9 4.1. Structure and Tailoring Requirements.....................11 4.2. Inheritance and Inclusion Requirements...................13 4.3. Document and Report Formatting Requirements..............14 4.4. Rule Checking Requirements...............................14 4.5. Test Results Requirements................................15 4.6. Metadata and Security Requirements.......................16 5. Data Model....................................................17 5.1. Benchmark Structure......................................19 5.1.1. Inheritance.........................................20 5.2. Object Content Details...................................21 5.2.1. Benchmark...........................................21 5.2.2. Item................................................24 5.2.2.1. Group::Item....................................26 5.2.2.2. Rule::Item.....................................28 5.2.2.3. Value::Item....................................33 5.2.3. Profile.............................................36 5.2.4. TestResult..........................................38 Waltermire Expires April 18, 2011 [Page 2] Internet-Draft XCCDF Version 1.1.4 October 2010 5.2.4.1. TestResult/rule-result.........................41 5.3. Processing Models........................................44 5.3.1. Loading Processing Sequence.........................45 5.3.2. Traversal Processing Sequence.......................48 5.3.2.1. Benchmark Processing Algorithm.................48 5.3.2.2. Item Processing Algorithm......................49 5.3.3. Substitution Processing.............................51 5.3.4. Rule Application and Compliance Scoring.............51 5.3.5. Scoring and Results Model...........................52 5.3.6. Score Computation Algorithms........................54 5.3.6.1. The Default Model..............................54 5.3.6.2. The Flat Model.................................55 5.3.6.3. The Flat Unweighted Model......................56 5.3.6.4. The Absolute Model.............................56 5.3.7. Multiply-Instantiated Rules.........................56 6. XML Representation............................................57 6.1. XML Document General Considerations......................57 6.2. XML Element Dictionary...................................58 6.2.1. .........................................59 6.2.2. .............................................59 6.2.3. ..............................................61 6.2.4. .............................................62 6.2.5. ...........................................63 6.2.6. ........................................64 6.2.7. Other Elements and Attributes.......................65 6.2.7.1. ....................................66 6.2.7.2. ........................................66 6.2.7.3. .................................67 6.2.7.4. .................................68 6.2.7.5. ................................68 6.2.7.6. ............................68 6.2.7.7. ......................................69 6.2.7.8. .......................................69 6.2.7.9. ................................70 6.2.7.10. ...................................71 6.2.7.11. ....................................72 6.2.7.12. .....................................72 6.2.7.13. .................................72 6.2.7.14. ........................................73 6.2.7.15. .........................................73 6.2.7.16. .....................................76 6.2.7.17. ................................77 6.2.7.18. .......................................77 6.2.7.19. ....................................77 6.2.7.20. ...............................78 6.2.7.21. ....................................79 6.2.7.22. .................................80 Waltermire Expires April 18, 2011 [Page 3] Internet-Draft XCCDF Version 1.1.4 October 2010 6.2.7.23. .......................................80 6.2.7.24. .....................................81 6.2.7.25. ....................................81 6.2.7.26. .......................................82 6.2.7.27. ..................................83 6.2.7.28. ......................................83 6.2.7.29. ..................................83 6.2.7.30. ................................84 6.2.7.31. ....................................84 6.2.7.32. .......................................85 6.2.7.33. ..................................86 6.2.7.34. ....................................86 6.2.7.35. ......................87 6.2.7.36. , ........................................................87 6.2.7.37. .....................................88 6.2.7.38. ................................88 6.2.7.39. ....................................88 6.2.7.40. ...................................89 6.2.7.41. .................................89 6.2.7.42. ...................................89 6.2.7.43. .................................90 6.2.7.44. ................................91 6.2.7.45. ......................................92 6.2.7.46. ....................................92 6.2.7.47. ......................................93 6.2.7.48. .................................93 6.2.7.49. .......................................94 6.2.7.50. This element is part of a Profile; it overrides the selected attribute of a Rule or Group. Two attributes MUST be given with this element: the id of a Rule or Group (idref), and a boolean value (selected). If the boolean value is given as true, then the Rule or Group SHALL be selected for this Profile, otherwise it SHALL be unselected for this Profile. o Content: none o Cardinality: 0-n o Parent Elements: Profile o Attributes: idref+, selected+ o Child Elements: none The 'idref' attribute MUST match the id attribute of a Group or Rule in the Benchmark, or the cluster id assigned to one or more Rules or Groups. The 'idref' attribute values of sibling select element children of a Profile MUST be different. Waltermire Expires April 18, 2011 [Page 94] Internet-Draft XCCDF Version 1.1.4 October 2010 6.2.7.51. This element specifies a value for a Value object. It MAY appear as part of a Profile; in that case it overrides the value property of a Value object. It MAY appear as part of a TestResult; in that case it supplies the value used in the test. o Content: string o Cardinality: 0-n o Parent Elements: Profile, TestResult o Attributes: idref+ o Child Elements: none In the content of a Profile, the identifier given for the 'idref' attribute MAY be a cluster id, in which case it applies only to the Value item members of the cluster; in the context of a TestResult, the identifier MUST match the id of a Value object in the Benchmark. The 'idref' attribute values of sibling set-value element children of a Profile MUST be different. 6.2.7.52. This element MAY hold an enveloped digital signature expressed according to the XML Digital Signature standard [6]. This element MUST contain exactly one element, Signature from the XML-Signature namespace. o Content: elements o Cardinality: 0-1 o Parent Elements: Benchmark, Rule, Group, Value, Profile, TestResult o Attributes: none o Child Elements: Signature* (in XML-Signature namespace) At most one enveloped signature MAY appear in an XCCDF document. If multiple signatures are needed, others MUST be detached signatures. The Signature element SHOULD contain exactly one Reference to the block enclosing the signature. The Reference URI SHOULD be a Waltermire Expires April 18, 2011 [Page 95] Internet-Draft XCCDF Version 1.1.4 October 2010 relative URI to the Id attribute value of the enclosing object. For example, if the Id="abc", then the Reference URI would be "#abc". 6.2.7.53. The source element contains a URI indicating where a tailoring or benchmarking tool might obtain the value, or information about the value, for a Value object. XCCDF does not attach any meaning to the URI; it MAY be an arbitrary community or tool-specific value, or a pointer directly to a resource. o Content: none o Cardinality: 0-n o Parent Elements: Value o Attributes: uri o Child Elements: none If several values for the source property appear, then they represent alternative means or locations for obtaining the value, in descending order of preference (i.e., most preferred first). 6.2.7.54. This element provides a revision or standardization status for a Benchmark, along with the date at which the Benchmark attained that status. It MUST appear at least once in a Benchmark object, and MAY appear once or more than once in any Item. If an Item does not have its own status element, its status SHALL be that of its parent element. The permitted string values for status are "accepted", "deprecated", "draft", "interim", and "incomplete". o Content: string (enumerated choices) o Cardinality: 0-n o Parent Elements: Benchmark, Rule, Group, Value, Profile o Attributes: date o Child Elements: none Waltermire Expires April 18, 2011 [Page 96] Internet-Draft XCCDF Version 1.1.4 October 2010 6.2.7.55. This element represents a reference to a parameter value that MAY be set during tailoring. The element SHALL NOT have any content, and MUST have its single attribute, idref. The idref attribute MUST equal the id attribute of either a Value object or a plain-text definition. o Content: none o Cardinality: 0-n o Parent Elements: description, fix, fixtext, front-matter, rationale, rear-matter, title, warning o Attributes: idref+ o Child Elements: none 6.2.7.56. This element gives the name or description of a target system to which a Benchmark test was applied. It SHALL only appear as a child of a TestResult element. o Content: string o Cardinality: 1 o Parent Elements: TestResult o Attributes: none o Child Elements: none 6.2.7.57. This element gives the network address of a target system to which a Benchmark test was applied. It SHALL only appear as a child of a TestResult element. o Content: string o Cardinality: 0-n o Parent Elements: TestResult Waltermire Expires April 18, 2011 [Page 97] Internet-Draft XCCDF Version 1.1.4 October 2010 o Attributes: none o Child Elements: none 6.2.7.58. The TestResult object can hold an arbitrary set of facts about the target of a test. This element holds those facts, each one of which is a fact element. It is an OPTIONAL member of TestResult. o Content: string o Cardinality: 0-1 o Parent Elements: TestResult o Attributes: none o Child Elements: fact 6.2.7.59. This element provides the descriptive title for a Benchmark, Rule, Group, or Value. Multiple instances MAY appear with different languages (different values of the xml:lang attribute). o Content: string o Cardinality: 0-n o Parent Elements: Benchmark, Value, Group, Rule, Profile, TestResult o Attributes: xml:lang, override o Child Elements: none This element SHALL NOT contain XHTML markup. The 'override' attribute controls how the title property is inherited, if the Item in which it appears extends another Item. 6.2.7.60. <upper-bound> This element MAY appear one or more times as a child of a Value element. It is used to constrain value input during tailoring, when the Value's type is "number". It contains a number; values supplied Waltermire Expires April 18, 2011 [Page 98] Internet-Draft XCCDF Version 1.1.4 October 2010 by the user for tailoring the Benchmark MUST be no greater than this number. This element MAY have a selector tag attribute, which identifies it for Value refinement by a Profile. If more than one upper-bound element appears as the child of a Value, at most one MAY omit the selector attribute. o Content: number o Cardinality: 0-n o Parent Elements: Value o Attributes: selector o Child Elements: none 6.2.7.61. <value> This string element is used to hold the value of a Value object. It MUST appear as the child of a Value element. This element MAY have a selector tag attribute, which identifies it for Value refinement by a Profile. This element MAY appear more than once, but at most one of the sibling instances of this element MAY omit the selector tag. o Content: String o Cardinality: 1-n o Parent Elements: Value o Attributes: Selector o Child Elements: None 6.2.7.62. <version> This element gives a version number for a Benchmark, Group, Rule, Value, or Profile. The version number content MAY be any string. This element MAY have a time attribute, which is a timestamp of when the Object was defined. This element MAY also have an update attribute, which SHOULD be the URI specifying where updates to the Object may be obtained. o Content: string o Cardinality: 1 (Benchmark), 0-1 (all others) Waltermire Expires April 18, 2011 [Page 99] Internet-Draft XCCDF Version 1.1.4 October 2010 o Parent Elements: Benchmark, Group, Rule, Value, Profile o Attributes: time, update o Child Elements: none 6.2.7.63. <warning> This element provides supplementary descriptive text for a Benchmark, Rule, Group, or Value. Multiple warning elements MAY appear; processing tools SHOULD concatenate them for generating reports or documents (see also Section 6.3). o Content: mixed o Cardinality: 0-n o Parent Elements: Benchmark, Group, Rule, Value o Attributes: xml:lang, override o Child Elements: sub, xhtml elements* This element is intended to convey important cautionary information for the Benchmark user (e.g., "Complying with this rule will cause the system to reject all IP packets"). Processing tools MAY present this information specially in generated documents. 6.3. Handling Text and String Content This sub-section provides additional information about how XCCDF processing tools MUST handle textual content in Benchmarks. 6.3.1. XHTML Formatting and Locale Some text-valued XCCDF elements MAY contain formatting specified with elements from the XHTML Core Recommendation. Many of the string and textual elements of XCCDF are listed as appearing multiple times under the same parent element. These elements, listed below, MAY have an xml:lang attribute that specifies the natural language locale for which they are written (e.g., "en" for English, "fr" for French). A processing tool SHOULD employ these attributes when possible during tailoring, document generation, and producing compliance reports, to create localized output. An example of using the xml:lang attribute is shown below. Waltermire Expires April 18, 2011 [Page 100] Internet-Draft XCCDF Version 1.1.4 October 2010 <cdf:Value id="web-server-port" type="number"> <cdf:title>Web Server Port</cdf:title> <cdf:question xml:lang="en"> What is the web server's TCP port? </cdf:question> <cdf:question xml:lang="fr"> Quel est le port du TCP du web serveur? </cdf:question> <cdf:value>80</cdf:value> </cdf:Value> Multiple values for the same property in a single Item are handled differently, as described below. Multiple instances with different values of their xml:lang attribute SHALL be permitted; an Item with no value for the xml:lang attribute SHALL be taken to have the same language as the Benchmark itself (as given by the xml:lang attribute on the Benchmark element). ----------------------------------------------------------------- Elements Inheritance Behavior ----------------------------------------------------------------- description, title, fixtext, At most one instance per language; rationale, question, inherited values with the same front-matter, rear-matter language get replaced ----------------------------------------------------------------- warning, reference, notice Multiple instances treated as an ordered list; inherited instances prepended to the list ----------------------------------------------------------------- The platform element MAY also appear multiple times, each with a different id, to express the notion that a Rule, Group, Benchmark, or Profile applies to several different products or systems. 6.3.2. String Substitution and Reference Processing There are three kinds of string substitution and one kind of reference processing that XCCDF document generation and reporting tools MUST support. Waltermire Expires April 18, 2011 [Page 101] Internet-Draft XCCDF Version 1.1.4 October 2010 1. XCCDF sub element - The sub element supports substitution of information from a Value object, or the string content of a plain-text definition. The formatting for a sub element reference to a Value object is implementation-dependent for document generation, as described in Section 5.3. Formatting for a sub element reference to a plain-text definition is very simple: the string content of the plain-text definition replaces the sub element. 2. XHTML object element - The object element supports substitutions of a variety of information from another Item or Profile, or the string content of a plain-text definition. To avoid possible conflicts with uses of an XHTML object that should not be processed specially, all XCCDF object references MUST be a relative URI beginning with "#xccdf:". The following URI values can be used to refer to things from an "object" element, using the "data" attribute: o #xccdf:value:id - Insert the value of the plain-text block, Value, or fact with id id:. When a URI of this form is used, the value of the reference SHOULD be substituted for the entire "object" element and its content (if any). In keeping with the standard semantics of XHTML, if the id cannot be resolved, then the textual content of the "object" element SHOULD be retained. o #xccdf:title:id - Insert the string content of the "title" child of the Item with id id. Use the current language value locale setting, if any. When a URI of this form is used, the title string SHOULD be substituted for the entire "object" element and its content (if any). In keeping with the standard semantics of XHTML, if the id cannot be resolved, then the textual content of the "object" element SHOULD be retained. 3. XHTML anchor (a) element - The anchor element MAY be used to create an intra-document link to another XCCDF Item or Profile. To avoid possible conflicts with uses of the XHTML anchor element that should not be processed specially, all XCCDF anchor references MUST be a relative URI beginning with "#xccdf:". The following URI values can be used to refer to things from an anchor ("a") element, using the 'href' attribute: o #xccdf:link:id - Create an intra-document link to the point in the document where the Item id is described. The content of the element SHOULD be the text of the link. Waltermire Expires April 18, 2011 [Page 102] Internet-Draft XCCDF Version 1.1.4 October 2010 7. Security Considerations In most situations XCCDF is not security sensitive. An XCCDF checklist may expose information about the configuration of a system that attackers can use. In these cases confidentiality would be desireable; however, there is no mechanism to encrypt information. If confidentiality is needed, use TLS or other forms of external encryption. XML signature MAY be used within the XCCDF data model to add integrity and origin authentication. If you are using this for origin authentication, minimum key sizes SHOULD be RSA 1024 bit and SHA1. Implemetations SHOULD provide support for RSA 2048 bit or SHA256. 8. IANA Considerations This document requires no action by IANA. 9. This draft defines common URLs and URNs for use within this data model as defined in Appendix A. Uniqueness and semantics for these URLs and URNs has been handled as part of XCCDF maintenance. Future standards based upon XCCDF would be required to establish IANA registries for these values. The URLs and URNs in Appendix A would be the initial values for those registries.Conclusions The XCCDF specification defines a means for expressing security guidance documents in a way that should foster development of interoperable tools and content. It is designed to permit the same document to serve in several roles: o Source code for generation of publication documents and hardcopy o Script for eliciting local security policy settings and values from a user o Structure for containing and organizing code that drives system analysis and configuration checking engines o Source code for text to appear in security policy compliance reports o A record of a compliance test, including the results of applying various rules Waltermire Expires April 18, 2011 [Page 103] Internet-Draft XCCDF Version 1.1.4 October 2010 o Structure for expressing compliance scoring/weighting decisions. XCCDF 1.1 was designed as a compatible extension of 1.0, based on suggestions from early adopters and potential users. Many features have been added, but every valid 1.0 document SHOULD be a valid 1.1 document, once the namespace is adjusted. The forward compatibility will help ensure that content written for XCCDF 1.0 will not be made obsolete by the 1.1 specification. XCCDF 1.1.4 is a minor update of the specification and schema of XCCDF 1.1, mainly to add clarity and fix problems identified by initial users. Adoption of a common format should permit security professionals, security tool vendors, and system auditors to exchange information more quickly and precisely, and also permit greater automation of security testing and configuration checking. 10. References 10.1. Normative References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] Marsh, J. and Orchard, D., "XML Inclusions (XInclude) Version 1.0", W3C Candidate Recommendation, April 2004. [3] Baker, M. et al, "XHTML Basic", W3C Recommendation, December 2000. [4] Biron, P. and Malhotra, A., "XML Schema Part 2: Datatypes", W3C Recommendation, May 2001. [5] Buttner, A., and Ziring, N., "Common Platform Enumeration (CPE) - Specification, Version 2.2", MITRE Corporation, March 2009. [6] Bartel, M. et al, "XML - Signature Syntax and Processing", W3C Recommendation, February 2002. [7] Mell, P., Romanosky, S., and Scarfone, K., "A Complete Guide to the Common Vulnerability Scoring System Version 2.0", FIRST, June 2007. [8] Davis, M., "Unicode Regular Expressions", Unicode Technical Recommendation No. 18, version 9, January 2004. Waltermire Expires April 18, 2011 [Page 104] Internet-Draft XCCDF Version 1.1.4 October 2010 [9] T. Berners-Lee, R. Fielding, L. Masinter, "Uniform Resource Identifier (URI): Generic Syntax", STD 66, RFC 3986, January 2005. 10.2. Informative References [10] Quinn, S. et al, "National Checklist Program for IT Products - - Guidelines for Checklist Users and Developers", NIST Special Publication 800-70 Revision 1, September 2009. [11] "OVAL - The Open Vulnerability and Assessment Language", The MITRE Corporation, September 2006. [12] Johnston, P. and Powell, A., "Guidelines for Implementing Dublin Core in XML", DCMI, April 2003. [13] Hillmann, D., "Using Dublin Core", DCMI, August 2003. 11. Acknowledgments This draft is based on the NIST Interagency Report (IR) 7275 revision 3 authored by Neal Ziring of the NSA and Stephen D. Quinn of NIST. This document is the result of the collective effort of a large number of people including the following individuals who contributed to the initial definition and development of XCCDF: David Proulx, Mike Michnikov, Andrew Buttner, Todd Wittbold, Adam Compton, George Jones, Chris Calabrese, John Banghart, Murugiah Souppaya, John Wack, Trent Pitsenbarger, and Robert Stafford. Peter Mell and Matthew Wojcik contributed to Revisions 1, 2, and 3 of the NISTIR 7275. Karen Scarfone provided editorial comments and changes to all historic revisions and to this draft. Ryan Wilson of Georgia Institute of Technology also made substantial contributions. Thanks also go to the DISA Field Security Office (FSO) Vulnerability Management System (VMS)/Gold Disk team for extensive review and many suggestions. This document was prepared using 2-Word-v2.0.template.dot. Waltermire Expires April 18, 2011 [Page 105] Internet-Draft XCCDF Version 1.1.4 October 2010 Appendix A. Pre-Defined URIs The following URLs and URNs are defined for XCCDF 1.1. A.1. Long-Term Identification Systems These URIs may appear as the value of the system attribute of an ident element (see page 59). http://cve.mitre.org/ - MITRE's Common Vulnerabilities and Exposures - the identifier value should be a CVE number or CVE candidate number. http://cce.mitre.org/ - This specifies the Common Configuration Enumeration identifier scheme. http://www.cert.org/ - CERT Coordination Center - the identifier value should be a CERT advisory identifier (e.g. "CA-2004-02"). http://www.us-cert.gov/cas/techalerts/ - US-CERT technical cyber security alerts - the identifier value should be a technical cyber security alert ID (e.g., "TA05-189A") http://www.kb.cert.org/ - US-CERT vulnerability notes database - the identifier values should be a vulnerability note number (e.g., "709220"). http://iase.disa.mil/IAalerts/ - DISA Information Assurance Vulnerability Alerts (IAVA) - the identifier value should be a DOD IAVA identifier. A.2. Check Systems These URIs may appear as the value of the system attribute of a check element (see p. 50). http://oval.mitre.org/XMLSchema/oval - MITRE's Open Vulnerability Assessment Language (see [11]). http://www.cisecurity.org/xccdf/interactive/1.0 - Center for Internet Security interactive query check system, used for asking the user questions about the target system during application of a security guidance document. Other check systems are being developed and used to support many use cases. This listing includes publicly released check systems available at the release of this draft. Waltermire Expires April 18, 2011 [Page 106] Internet-Draft XCCDF Version 1.1.4 October 2010 A.3. Scoring Models These URIs may appear as the value of the system attribute on the model element or a score element (see pp. 62 and 71). urn:xccdf:scoring:default - This specifies the default (XCCDF 1.0) scoring model. urn:xccdf:scoring:flat - This specifies the flat, weighted scoring model. urn:xccdf:scoring:flat-unweighted - This specifies the flat scoring model with weights ignored (all weights set to 1). urn:xccdf:scoring:absolute - This specifies the absolute (1 or 0) scoring model. A.4. Target Platform Facts The following URNs should be used to record facts about an IT asset (target) to which a Benchmark TestResult applies (see pages 49 and 75). urn:scap:fact:asset:identifier:mac - Ethernet media access control address (should be sent as a pair with the IP or IPv6 address to ensure uniqueness) urn:scap:fact:asset:identifier:ipv4 - Internet Protocol version 4 address urn:scap:fact:asset:identifier:ipv6 - Internet Protocol version 6 address urn:scap:fact:asset:identifier:host_name - Host name of the asset, if assigned urn:scap:fact:asset:identifier:fqdn - Fully qualified domain name urn:scap:fact:asset:identifier:ein - Equipment identification number or other inventory tag number urn:scap:fact:asset:identifier:pki: - X.509 PKI certificate for the asset (encoded in Base-64) urn:scap:fact:asset:identifier:pki:thumbprint - SHA.1 hash of the PKI certification for the asset (encoded in Base-64) Waltermire Expires April 18, 2011 [Page 107] Internet-Draft XCCDF Version 1.1.4 October 2010 urn:scap:fact:asset:identifier:guid - Globally unique identifier for the asset urn:scap:fact:asset:identifier:ldap - LDAP directory string (distinguished name) of the asset, if assigned urn:scap:fact:asset:identifier:active_directory - Active Directory realm to which the asset belongs, if assigned urn:scap:fact:asset:identifier:nis_domain - NIS domain of the asset, if assigned urn:scap:fact:asset:environmental_information:owning_organization - Organization that tracks the asset on its inventory urn:scap:fact:asset:environmental_information:current_region - Geographic region where the asset is located urn:scap:fact:asset:environmental_information:administration_unit - Name of the organization that does system administration for the asset urn:scap:fact:asset:environmental_information:administration_poc:tit le - Title (e.g., Mr, Ms, Col) of the system administrator for an asset] urn:scap:fact:asset:environmental_information:administration_poc:e- mail - E-mail address of the system administrator for the asset urn:scap:fact:asset:environmental_information:administration_poc:fir st_name - First name of the system administrator for the asset urn:scap:fact:asset:environmental_information:administration_poc:las t_name - Last name of the system administrator for the asset A.5. Remediation Systems The URIs represent remediation sources, mechanisms, schemes, or providers. They may appear as the system attribute on a fix element (see p. 56). urn:xccdf:fix:commands - This specifies that the content of the fix element is a list of target system commands; executed in order, the commands should bring the target system into compliance with the Rule. Waltermire Expires April 18, 2011 [Page 108] Internet-Draft XCCDF Version 1.1.4 October 2010 urn:xccdf:fix:urls - This specifies that the content of the fix element is a list of one or more URLs. The resources identified by the URLs should be applied to bring the system into compliance with the Rule. urn:xccdf:fix:script:{LANGUAGE} - A URN of this form specifies that the content of the fix element is a script written in the given language as specified by the {LANGUAGE} term. Executing the script should bring the target system into compliance with the Rule. The following {LANGUAGE} terms are pre-defined: o sh - Bourne shell o csh - C Shell o perl - Perl o batch - Windows batch script o python - Python and all Python-based scripting languages o vbscript - Visual Basic Script (VBS) o javascript - Javascript (ECMAScript, JScript) o tcl - Tcl and all Tcl-based scripting languages urn:xccdf:fix:patch:vendor - A URN of this form specifies that the content of the fix element is a patch identifier, in proprietary format as defined by the vendor. The vendor string should be the DNS domain name of the vendor, as defined in the CPE 2.2 specification [5]. For example, for Microsoft Corporation, the DNS domain is "microsoft.com", and the CPE vendor name would be "microsoft". Copyright (c) 2010 IETF Trust and the persons identified as authors of the code. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: o Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. Waltermire Expires April 18, 2011 [Page 109] Internet-Draft XCCDF Version 1.1.4 October 2010 o Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. o Neither the name of Internet Society, IETF or IETF Trust, nor the names of specific contributors, may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Waltermire Expires April 18, 2011 [Page 110] Internet-Draft XCCDF Version 1.1.4 October 2010 Authors' Address David Waltermire NIST 100 Bureau Drive, Stop 8930 Gaithersburg, MD 20899-8930 Email: david.waltermire@nist.gov Waltermire Expires April 18, 2011 [Page 111]