<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:et="http://stix.mitre.org/ExploitTarget-1" xmlns:stixCommon="http://stix.mitre.org/common-1" xmlns:marking="http://data-marking.mitre.org/Marking-1" xmlns:cybox="http://cybox.mitre.org/cybox-2" targetNamespace="http://stix.mitre.org/ExploitTarget-1" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.2" xml:lang="en">
	<xs:annotation>
		<xs:documentation>This schema was originally developed by The MITRE Corporation. The STIX XML Schema implementation is maintained by The MITRE Corporation and developed by the open STIX Community. For more information, including how to get involved in the effort and how to submit change requests, please visit the STIX website at http://stix.mitre.org. </xs:documentation>
		<xs:appinfo>
			<schema>STIX Exploit Target</schema>
			<version>1.2</version>
			<date>05/15/2015 9:00:00 AM</date>
			<short_description>Structured Threat Information eXpression (STIX) - ExploitTarget - Schematic implementation for the ExploitTarget construct within the STIX structured cyber threat expression language architecture</short_description>
			<terms_of_use>Copyright (c) 2012-2015, The MITRE Corporation. All rights reserved. The contents of this file are subject to the terms of the STIX License located at http://stix.mitre.org/about/termsofuse.html. See the STIX License for the specific language governing permissions and limitations for use of this schema. When distributing copies of the STIX Schema, this license header must be included. </terms_of_use>
		</xs:appinfo>
	</xs:annotation>
	<xs:import namespace="http://stix.mitre.org/common-1" schemaLocation="http://stix.mitre.org/XMLSchema/common/1.2/stix_common.xsd"/>
	<xs:import namespace="http://data-marking.mitre.org/Marking-1" schemaLocation="http://stix.mitre.org/XMLSchema/data_marking/1.2/data_marking.xsd"/>
	<xs:import namespace="http://cybox.mitre.org/cybox-2" schemaLocation="http://cybox.mitre.org/XMLSchema/core/2.1/cybox_core.xsd"/>
	<xs:element name="Exploit_Target" type="et:ExploitTargetType">
		<xs:annotation>
			<xs:documentation>The ExploitTarget field characterizes potential targets for exploitation. In other words characteristics about targeted victims that may make them vulnerable to attack.</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="ExploitTargetType">
		<xs:annotation>
			<xs:documentation>Represents a single STIX Exploit Target.</xs:documentation>
			<xs:documentation>ExploitTargets are vulnerabilities or weaknesses in software, systems, networks or configurations that are targeted for exploitation by the TTP of a ThreatActor. In a structured sense, ExploitTargets consist of vulnerability identifications or characterizations, weakness identifications or characterizations, configuration identifications or characterizations, potential Courses of Action, source of the ExploitTarget information, handling guidance, etc.</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="stixCommon:ExploitTargetBaseType">
				<xs:sequence>
					<xs:element name="Title" type="xs:string" minOccurs="0">
						<xs:annotation>
							<xs:documentation>The Title field provides a simple title for this ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Description field is optional and provides an unstructured, text description of this ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Short_Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Short_Description field is optional and provides a short, unstructured, text description of this ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Vulnerability" type="et:VulnerabilityType" minOccurs="0" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Vulnerability field identifies and characterizes a Vulnerability as a potential ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Weakness" type="et:WeaknessType" minOccurs="0" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Weakness field identifies and characterizes a Weakness as a potential ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Configuration" type="et:ConfigurationType" minOccurs="0" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Configuration field identifies and characterizes a Configuration as a potential ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Potential_COAs" type="et:PotentialCOAsType" minOccurs="0">
						<xs:annotation>
							<xs:documentation>The Potential_COAs field specifies potential Courses of Action for this ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Information_Source" type="stixCommon:InformationSourceType" minOccurs="0">
						<xs:annotation>
							<xs:documentation>The Information_Source field details the source of this entry.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Handling" type="marking:MarkingType" minOccurs="0">
						<xs:annotation>
							<xs:documentation>The Handling field specifies the appropriate data handling markings for the elements of this Exploit Target. The valid marking scope is the nearest ExploitTargetBaseType ancestor of this Handling element and all its descendants.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Related_Exploit_Targets" type="et:RelatedExploitTargetsType" minOccurs="0">
						<xs:annotation>
							<xs:documentation>The Related_Exploit_Targets field specifies one or more exploit targets that are related to this exploit target.</xs:documentation>
						</xs:annotation>
					</xs:element>
					<xs:element name="Related_Packages" type="stixCommon:RelatedPackageRefsType" minOccurs="0">
						<xs:annotation>
							<xs:documentation>The Related_Packages field identifies or characterizes relationships to set of related Packages.</xs:documentation>
							<xs:documentation>DEPRECATED: This field is deprecated and will be removed in the next major version of STIX. Its use is strongly discouraged except for legacy applications.</xs:documentation>
							<xs:appinfo>
								<deprecated>true</deprecated>
							</xs:appinfo>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
				<xs:attribute name="version" type="et:ExploitTargetVersionType">
					<xs:annotation>
						<xs:documentation>Specifies the relevant STIX-ExploitTarget schema version for this content.</xs:documentation>
					</xs:annotation>
				</xs:attribute>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!---->
	<xs:simpleType name="ExploitTargetVersionType">
		<xs:annotation>
			<xs:documentation>An enumeration of all versions of the Exploit Target type valid in the current release of STIX.</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="1.0"/>
			<xs:enumeration value="1.0.1"/>
			<xs:enumeration value="1.1"/>
			<xs:enumeration value="1.1.1" />
			<xs:enumeration value="1.2" />
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="VulnerabilityType">
		<xs:annotation>
			<xs:documentation>Characterizes an individual vulnerability.</xs:documentation>
			<xs:documentation>In addition to capturing basic information and references to vulnerability registries, this type is intended to be extended to enable the structured description of a vulnerability by using the XML Schema extension feature. The STIX default extension uses the Common Vulnerability Reporting Format (CVRF) schema to do so. The extension that defines this is captured in the CVRF1.1InstanceType in the http://stix.mitre.org/extensions/Vulnerability#CVRF1.1-1 namespace. This type is defined in the extensions/vulnerability/cvrf_1.1_vulnerability.xsd file or at the URL http://stix.mitre.org/XMLSchema/extensions/vulnerability/cvrf_1.1/1.2/cvrf_1.1_vulnerability.xsd.</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="Title" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Title field provides a simple title for this vulnerability.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>The Description field provides an unstructured, text description of this vulnerability.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Short_Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>The Short_Description field provides a short, unstructured, text description of this vulnerability.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CVE_ID" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The CVE_ID field specifies a CVE identifier for a particular vulnerability.</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="CVE-\d\d\d\d-\d+"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="OSVDB_ID" type="xs:positiveInteger" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The OSVDB_ID field specifies an OSVDB identifier for a particular vulnerability.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Source" type="xs:string" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Source field describes the source of the CVE or OSVDB as a textual description or URL.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CVSS_Score" type="et:CVSSVectorType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The CVSS_Score field captures the full CVSS v2.0 base, temporal, and environmental vectors in their string format.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Discovered_DateTime" type="stixCommon:DateTimeWithPrecisionType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The date and time that this vulnerability was first discovered.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Published_DateTime" type="stixCommon:DateTimeWithPrecisionType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The date and time that this vulnerability was first published.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Affected_Software" type="et:AffectedSoftwareType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The Affected_Software field captures the list of platforms and software that are affected by this vulnerability. It is implemented through the CybOX Observables, the suggested CybOX objects to use are the Product Object, the Device Object, the System Object, and the Code Object.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="References" type="stixCommon:ReferencesType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The References field captures a list of external references describing this vulnerability.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
		<xs:attribute name="is_known" type="xs:boolean">
			<xs:annotation>
				<xs:documentation>The @is_known field captures whether or not the vulnerability is known (i.e. not a 0-day) at the time of characterization.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
		<xs:attribute name="is_publicly_acknowledged" type="xs:boolean">
			<xs:annotation>
				<xs:documentation>The @is_publicly_acknowledged field captures whether or not the vulnerability is publicly acknowledged by the vendor.</xs:documentation>
			</xs:annotation>
		</xs:attribute>
	</xs:complexType>
	<xs:complexType name="PotentialCOAsType">
		<xs:complexContent>
			<xs:extension base="stixCommon:GenericRelationshipListType">
				<xs:sequence>
					<xs:element name="Potential_COA" type="stixCommon:RelatedCourseOfActionType" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Potential_COA field specifies a potential Course of Action for this ExploitTarget.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ConfigurationType">
		<xs:sequence>
			<xs:element name="Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>The Description field is optional and provides an unstructured, text description of this Configuration.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Short_Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>The Short_Description field is optional and provides a short, unstructured, text description of this Configuration.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CCE_ID" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The CCE_ID field is optional and specifies a CCE identifier for a particular configuration item.</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="CCE-\d+-\d"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="WeaknessType">
		<xs:sequence>
			<xs:element name="Description" type="stixCommon:StructuredTextType" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>The Description field is optional and provides an unstructured, text description of this Weakness.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="CWE_ID" minOccurs="0">
				<xs:annotation>
					<xs:documentation>The CWE_ID element is optional and specifies a CWE identifier for a particular weakness.</xs:documentation>
				</xs:annotation>
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:pattern value="CWE-\d+"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="AffectedSoftwareType">
		<xs:complexContent>
			<xs:extension base="stixCommon:GenericRelationshipListType">
				<xs:sequence>
					<xs:element name="Affected_Software" type="stixCommon:RelatedObservableType" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>Characterizes a single instance of software affected by this vulnerability.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="CVSSVectorType">
		<xs:sequence>
			<xs:element name="Overall_Score" type="et:CVSSScoreType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the overall CVSS 2.0 score. Note that this is not the same as the unadjusted CVSS Base Score, which should be captured in the Base_Score field.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Base_Score" type="et:CVSSScoreType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the unadjusted CVSS 2.0 Base score.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Base_Vector" type="et:CVSSBaseVectorType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the CVSS 2.0 Base Vector per the compressed string format.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Temporal_Score" type="et:CVSSScoreType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the unadjusted CVSS 2.0 Temporal score.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Temporal_Vector" type="et:CVSSTemporalVectorType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the CVSS 2.0 Temporal Vector per the compressed string format.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Environmental_Score" type="et:CVSSScoreType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the unadjusted CVSS 2.0 Environmental score.</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="Environmental_Vector" type="et:CVSSEnvironmentalVectorType" minOccurs="0">
				<xs:annotation>
					<xs:documentation>Captures the CVSS 2.0 Environmental Vector in the compressed string format.</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="CVSSScoreType">
		<xs:restriction base="xs:string">
			<xs:pattern value="((10)|[0-9])\.[0-9]"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="CVSSBaseVectorType">
		<xs:restriction base="xs:string">
			<xs:pattern value="AV:[LAN]/AC:[HML]/Au:[MSN]/C:[NPC]/I:[NPC]/A:[NPC]"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="CVSSTemporalVectorType">
		<xs:restriction base="xs:string">
			<xs:pattern value="E:([UFH]|(POC)|(ND))/RL:([WU]|(OF)|(TF)|(ND))/RC:([C]|(UC)|(UR)|(ND))"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="CVSSEnvironmentalVectorType">
		<xs:restriction base="xs:string">
			<xs:pattern value="CDP:([NLH]|(LM)|(MH)|(ND))/TD:([NLMH]|(ND))/CR:([LMH]|(ND))/IR:([LMH]|(ND))/AR:([LMH]|(ND))"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="RelatedExploitTargetsType">
		<xs:complexContent>
			<xs:extension base="stixCommon:GenericRelationshipListType">
				<xs:sequence>
					<xs:element name="Related_Exploit_Target" type="stixCommon:RelatedExploitTargetType" maxOccurs="unbounded">
						<xs:annotation>
							<xs:documentation>The Related_Exploit_Target field specifies a single other exploit target related to this exploit target.</xs:documentation>
						</xs:annotation>
					</xs:element>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
</xs:schema>
