Showing:

Annotations
Diagrams
Facets
Source
Used by
Main schema Code_Object.xsd
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
This schema was originally developed by The MITRE Corporation. The CybOX XML Schema implementation is maintained by The MITRE Corporation and developed by the open CybOX Community. For more information, including how to get involved in the effort and how to submit change requests, please visit the CybOX website at http://cybox.mitre.org.
Element CodeObj:Code_Object
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Code object is intended to characterize a body of computer code.
Diagram
Diagram Code_Object_xsd.tmp#CodeObjectType_Description Code_Object_xsd.tmp#CodeObjectType_Type Code_Object_xsd.tmp#CodeObjectType_Purpose Code_Object_xsd.tmp#CodeObjectType_Code_Language Code_Object_xsd.tmp#CodeObjectType_Targeted_Platforms Code_Object_xsd.tmp#CodeObjectType_Processor_Family Code_Object_xsd.tmp#CodeObjectType_Discovery_Method Code_Object_xsd.tmp#CodeObjectType_Start_Address Code_Object_xsd.tmp#CodeObjectType_Code_Segment Code_Object_xsd.tmp#CodeObjectType_Code_Segment_XOR Code_Object_xsd.tmp#CodeObjectType_Digital_Signatures Code_Object_xsd.tmp#CodeObjectType_Extracted_Features Code_Object_xsd.tmp#CodeObjectType
Type CodeObj:CodeObjectType
Type hierarchy
Children CodeObj:Code_Language, CodeObj:Code_Segment, CodeObj:Code_Segment_XOR, CodeObj:Description, CodeObj:Digital_Signatures, CodeObj:Discovery_Method, CodeObj:Extracted_Features, CodeObj:Processor_Family, CodeObj:Purpose, CodeObj:Start_Address, CodeObj:Targeted_Platforms, CodeObj:Type
Source
<xs:element name="Code_Object" type="CodeObj:CodeObjectType">
  <xs:annotation>
    <xs:documentation>The Code object is intended to characterize a body of computer code.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Description
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Description field is intended for use in providing a brief description of the code that is encapsulated in this field.
Diagram
Diagram
Type StructuredTextType
Source
<xs:element name="Description" type="cyboxCommon:StructuredTextType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The Description field is intended for use in providing a brief description of the code that is encapsulated in this field.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Type
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The type field is intended to provide a way of specifying the type of code being characterized.
Diagram
Diagram Code_Object_xsd.tmp#CodeTypeType_datatype Code_Object_xsd.tmp#CodeTypeType
Type CodeObj:CodeTypeType
Type hierarchy
Source
<xs:element name="Type" type="CodeObj:CodeTypeType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The type field is intended to provide a way of specifying the type of code being characterized.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Purpose
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The type field is intended to provide a way of specifying the purpose or flavor of code being characterized.
Diagram
Diagram Code_Object_xsd.tmp#CodePurposeType_datatype Code_Object_xsd.tmp#CodePurposeType
Type CodeObj:CodePurposeType
Type hierarchy
Source
<xs:element name="Purpose" type="CodeObj:CodePurposeType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The type field is intended to provide a way of specifying the purpose or flavor of code being characterized.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Code_Language
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The code_language field refers to the code language used in the code characterized in this field.
Diagram
Diagram Code_Object_xsd.tmp#CodeLanguageType_datatype Code_Object_xsd.tmp#CodeLanguageType
Type CodeObj:CodeLanguageType
Type hierarchy
Source
<xs:element name="Code_Language" type="CodeObj:CodeLanguageType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The code_language field refers to the code language used in the code characterized in this field.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Targeted_Platforms
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Targeted_Platforms field specifies a list platforms that this code is targeted for.
Diagram
Diagram Code_Object_xsd.tmp#TargetedPlatformsType_Targeted_Platform Code_Object_xsd.tmp#TargetedPlatformsType
Type CodeObj:TargetedPlatformsType
Children CodeObj:Targeted_Platform
Source
<xs:element name="Targeted_Platforms" type="CodeObj:TargetedPlatformsType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The Targeted_Platforms field specifies a list platforms that this code is targeted for.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:TargetedPlatformsType / CodeObj:Targeted_Platform
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Targeted_Platform field specifies a particular platform that this code is targeted for.
Diagram
Diagram
Type PlatformSpecificationType
Source
<xs:element name="Targeted_Platform" type="cyboxCommon:PlatformSpecificationType" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>The Targeted_Platform field specifies a particular platform that this code is targeted for.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Processor_Family
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The processor_family field specifies the class of processor that the code snippet is targeting. This field may be specified multiple times for code snippets that are applicable across multiple processor families.
Diagram
Diagram Code_Object_xsd.tmp#ProcessorTypeType_datatype Code_Object_xsd.tmp#ProcessorTypeType
Type CodeObj:ProcessorTypeType
Type hierarchy
Source
<xs:element name="Processor_Family" type="CodeObj:ProcessorTypeType" minOccurs="0" maxOccurs="unbounded">
  <xs:annotation>
    <xs:documentation>The processor_family field specifies the class of processor that the code snippet is targeting. This field may be specified multiple times for code snippets that are applicable across multiple processor families.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Discovery_Method
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Discovery_Method field is intended to characterize the method and/or tool used to discover the code.
Diagram
Diagram
Type MeasureSourceType
Source
<xs:element name="Discovery_Method" type="cyboxCommon:MeasureSourceType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The Discovery_Method field is intended to characterize the method and/or tool used to discover the code.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Start_Address
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The start_address field can be used to reference the start address of the code, if it was discovered inside a binary.
Diagram
Diagram
Type HexBinaryObjectPropertyType
Source
<xs:element name="Start_Address" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The start_address field can be used to reference the start address of the code, if it was discovered inside a binary.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Code_Segment
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Code_Segment field encompasses any arbitrary code segment in unencoded (plaintext or binary) format. Code would typically be included here within a CDATA section.
Diagram
Diagram
Type StringObjectPropertyType
Source
<xs:element name="Code_Segment" type="cyboxCommon:StringObjectPropertyType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The Code_Segment field encompasses any arbitrary code segment in unencoded (plaintext or binary) format. Code would typically be included here within a CDATA section.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Code_Segment_XOR
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Code_Segment_XOR field encompasses any arbitrary code segment. Its contents should contain the actual code segment XORed with the pattern defined in the xorpattern property. This is so that the code contained in the pattern does not trigger IDS, AV, or other signature-based scanners. XOR'd Code would typically be included here within a CDATA section.
Diagram
Diagram Code_Object_xsd.tmp#CodeSegmentXORType_xor_pattern Code_Object_xsd.tmp#CodeSegmentXORType
Type CodeObj:CodeSegmentXORType
Type hierarchy
Source
<xs:element name="Code_Segment_XOR" type="CodeObj:CodeSegmentXORType" form="qualified" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The Code_Segment_XOR field encompasses any arbitrary code segment. Its contents should contain the actual code segment XORed with the pattern defined in the xorpattern property. This is so that the code contained in the pattern does not trigger IDS, AV, or other signature-based scanners. XOR'd Code would typically be included here within a CDATA section.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Digital_Signatures
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The Digital_Signatures field is optional and captures one or more digital signatures for the code.
Diagram
Diagram
Type DigitalSignaturesType
Source
<xs:element name="Digital_Signatures" type="cyboxCommon:DigitalSignaturesType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>The Digital_Signatures field is optional and captures one or more digital signatures for the code.</xs:documentation>
  </xs:annotation>
</xs:element>
Element CodeObj:CodeObjectType / CodeObj:Extracted_Features
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
A description of features extracted from this code segment.
Diagram
Diagram
Type ExtractedFeaturesType
Source
<xs:element name="Extracted_Features" type="cyboxCommon:ExtractedFeaturesType" minOccurs="0">
  <xs:annotation>
    <xs:documentation>A description of features extracted from this code segment.</xs:documentation>
  </xs:annotation>
</xs:element>
Complex Type CodeObj:CodeObjectType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The CodeObjectType type is intended to characterize a body of computer code.
Diagram
Diagram Code_Object_xsd.tmp#CodeObjectType_Description Code_Object_xsd.tmp#CodeObjectType_Type Code_Object_xsd.tmp#CodeObjectType_Purpose Code_Object_xsd.tmp#CodeObjectType_Code_Language Code_Object_xsd.tmp#CodeObjectType_Targeted_Platforms Code_Object_xsd.tmp#CodeObjectType_Processor_Family Code_Object_xsd.tmp#CodeObjectType_Discovery_Method Code_Object_xsd.tmp#CodeObjectType_Start_Address Code_Object_xsd.tmp#CodeObjectType_Code_Segment Code_Object_xsd.tmp#CodeObjectType_Code_Segment_XOR Code_Object_xsd.tmp#CodeObjectType_Digital_Signatures Code_Object_xsd.tmp#CodeObjectType_Extracted_Features
Type extension of ObjectPropertiesType
Type hierarchy
Used by
Children CodeObj:Code_Language, CodeObj:Code_Segment, CodeObj:Code_Segment_XOR, CodeObj:Description, CodeObj:Digital_Signatures, CodeObj:Discovery_Method, CodeObj:Extracted_Features, CodeObj:Processor_Family, CodeObj:Purpose, CodeObj:Start_Address, CodeObj:Targeted_Platforms, CodeObj:Type
Source
<xs:complexType name="CodeObjectType">
  <xs:annotation>
    <xs:documentation>The CodeObjectType type is intended to characterize a body of computer code.</xs:documentation>
  </xs:annotation>
  <xs:complexContent>
    <xs:extension base="cyboxCommon:ObjectPropertiesType">
      <xs:sequence>
        <xs:element name="Description" type="cyboxCommon:StructuredTextType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The Description field is intended for use in providing a brief description of the code that is encapsulated in this field.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Type" type="CodeObj:CodeTypeType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The type field is intended to provide a way of specifying the type of code being characterized.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Purpose" type="CodeObj:CodePurposeType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The type field is intended to provide a way of specifying the purpose or flavor of code being characterized.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Code_Language" type="CodeObj:CodeLanguageType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The code_language field refers to the code language used in the code characterized in this field.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Targeted_Platforms" type="CodeObj:TargetedPlatformsType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The Targeted_Platforms field specifies a list platforms that this code is targeted for.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Processor_Family" type="CodeObj:ProcessorTypeType" minOccurs="0" maxOccurs="unbounded">
          <xs:annotation>
            <xs:documentation>The processor_family field specifies the class of processor that the code snippet is targeting. This field may be specified multiple times for code snippets that are applicable across multiple processor families.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Discovery_Method" type="cyboxCommon:MeasureSourceType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The Discovery_Method field is intended to characterize the method and/or tool used to discover the code.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Start_Address" type="cyboxCommon:HexBinaryObjectPropertyType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The start_address field can be used to reference the start address of the code, if it was discovered inside a binary.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Code_Segment" type="cyboxCommon:StringObjectPropertyType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The Code_Segment field encompasses any arbitrary code segment in unencoded (plaintext or binary) format. Code would typically be included here within a CDATA section.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Code_Segment_XOR" type="CodeObj:CodeSegmentXORType" form="qualified" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The Code_Segment_XOR field encompasses any arbitrary code segment. Its contents should contain the actual code segment XORed with the pattern defined in the xorpattern property. This is so that the code contained in the pattern does not trigger IDS, AV, or other signature-based scanners. XOR'd Code would typically be included here within a CDATA section.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Digital_Signatures" type="cyboxCommon:DigitalSignaturesType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>The Digital_Signatures field is optional and captures one or more digital signatures for the code.</xs:documentation>
          </xs:annotation>
        </xs:element>
        <xs:element name="Extracted_Features" type="cyboxCommon:ExtractedFeaturesType" minOccurs="0">
          <xs:annotation>
            <xs:documentation>A description of features extracted from this code segment.</xs:documentation>
          </xs:annotation>
        </xs:element>
      </xs:sequence>
    </xs:extension>
  </xs:complexContent>
</xs:complexType>
Complex Type CodeObj:CodeTypeType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
CodeTypeType specifies types of code, via a union of the CodeTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.
Diagram
Diagram Code_Object_xsd.tmp#CodeTypeType_datatype
Type restriction of BaseObjectPropertyType
Type hierarchy
Used by
Source
<xs:complexType name="CodeTypeType">
  <xs:annotation>
    <xs:documentation>CodeTypeType specifies types of code, via a union of the CodeTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
  </xs:annotation>
  <xs:simpleContent>
    <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
      <xs:simpleType>
        <xs:union memberTypes="CodeObj:CodeTypeEnum xs:string"/>
      </xs:simpleType>
      <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
        <xs:annotation>
          <xs:documentation>This field is optional and specifies the expected type for the value of the specified field.</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:restriction>
  </xs:simpleContent>
</xs:complexType>
Complex Type CodeObj:CodePurposeType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
CodePurposeType specifies intended purposes of code, via a union of the CodePurposeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.
Diagram
Diagram Code_Object_xsd.tmp#CodePurposeType_datatype
Type restriction of BaseObjectPropertyType
Type hierarchy
Used by
Source
<xs:complexType name="CodePurposeType">
  <xs:annotation>
    <xs:documentation>CodePurposeType specifies intended purposes of code, via a union of the CodePurposeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
  </xs:annotation>
  <xs:simpleContent>
    <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
      <xs:simpleType>
        <xs:union memberTypes="CodeObj:CodePurposeEnum xs:string"/>
      </xs:simpleType>
      <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
        <xs:annotation>
          <xs:documentation>This field is optional and specifies the expected type for the value of the specified field.</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:restriction>
  </xs:simpleContent>
</xs:complexType>
Complex Type CodeObj:CodeLanguageType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
CodeLanguageType specifies languages of code, via a union of the CodeLanguageEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.
Diagram
Diagram Code_Object_xsd.tmp#CodeLanguageType_datatype
Type restriction of BaseObjectPropertyType
Type hierarchy
Used by
Source
<xs:complexType name="CodeLanguageType">
  <xs:annotation>
    <xs:documentation>CodeLanguageType specifies languages of code, via a union of the CodeLanguageEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
  </xs:annotation>
  <xs:simpleContent>
    <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
      <xs:simpleType>
        <xs:union memberTypes="CodeObj:CodeLanguageEnum xs:string"/>
      </xs:simpleType>
      <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
        <xs:annotation>
          <xs:documentation>This field is optional and specifies the expected type for the value of the specified field.</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:restriction>
  </xs:simpleContent>
</xs:complexType>
Complex Type CodeObj:TargetedPlatformsType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
A list of targeted platforms.
Diagram
Diagram Code_Object_xsd.tmp#TargetedPlatformsType_Targeted_Platform
Used by
Children CodeObj:Targeted_Platform
Source
<xs:complexType name="TargetedPlatformsType">
  <xs:annotation>
    <xs:documentation>A list of targeted platforms.</xs:documentation>
  </xs:annotation>
  <xs:sequence>
    <xs:element name="Targeted_Platform" type="cyboxCommon:PlatformSpecificationType" maxOccurs="unbounded">
      <xs:annotation>
        <xs:documentation>The Targeted_Platform field specifies a particular platform that this code is targeted for.</xs:documentation>
      </xs:annotation>
    </xs:element>
  </xs:sequence>
</xs:complexType>
Complex Type CodeObj:ProcessorTypeType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
ProcessorTypeType specifies relevant processor families, via a union of the ProcessorTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.
Diagram
Diagram Code_Object_xsd.tmp#ProcessorTypeType_datatype
Type restriction of BaseObjectPropertyType
Type hierarchy
Used by
Source
<xs:complexType name="ProcessorTypeType">
  <xs:annotation>
    <xs:documentation>ProcessorTypeType specifies relevant processor families, via a union of the ProcessorTypeEnum type and the atomic xs:string type. Its base type is the CybOX Core BaseObjectPropertyType, for permitting complex (i.e. regular-expression based) specifications.</xs:documentation>
  </xs:annotation>
  <xs:simpleContent>
    <xs:restriction base="cyboxCommon:BaseObjectPropertyType">
      <xs:simpleType>
        <xs:union memberTypes="CodeObj:ProcessorTypeEnum xs:string"/>
      </xs:simpleType>
      <xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
        <xs:annotation>
          <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:restriction>
  </xs:simpleContent>
</xs:complexType>
Complex Type CodeObj:CodeSegmentXORType
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
Used to encapsulate a segment of code that has been XORed with a pattern in order to avoid tripping anti-virus detection.
Diagram
Diagram Code_Object_xsd.tmp#CodeSegmentXORType_xor_pattern
Type extension of StringObjectPropertyType
Type hierarchy
Used by
Source
<xs:complexType name="CodeSegmentXORType">
  <xs:annotation>
    <xs:documentation>Used to encapsulate a segment of code that has been XORed with a pattern in order to avoid tripping anti-virus detection.</xs:documentation>
  </xs:annotation>
  <xs:simpleContent>
    <xs:extension base="cyboxCommon:StringObjectPropertyType">
      <xs:attribute name="xor_pattern" type="xs:hexBinary" default="55AA55AA55AA55BB" use="optional">
        <xs:annotation>
          <xs:documentation>The xor_pattern field contains a 16-hexadecimal-character hex string, which represents the pattern that the Code_Segment_XOR field should be XORed with in order to recover the actual code. The default value is 55AA55AA55AA55BB, as specified by IETF RFC 5901.</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:extension>
  </xs:simpleContent>
</xs:complexType>
Simple Type CodeObj:CodeTypeEnum
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
CodeTypeEnum is a (non-exhaustive) enumeration of code types.
Diagram
Diagram
Type restriction of xs:string
Facets
enumeration Source_Code
The code represented is in the form of Source Code.
enumeration Byte_Code
The code represented is in the form of Byte Code.
enumeration Binary_Code
The code represented is in the form of binary code.
Source
<xs:simpleType name="CodeTypeEnum">
  <xs:annotation>
    <xs:documentation>CodeTypeEnum is a (non-exhaustive) enumeration of code types.</xs:documentation>
  </xs:annotation>
  <xs:restriction base="xs:string">
    <xs:enumeration value="Source_Code">
      <xs:annotation>
        <xs:documentation>The code represented is in the form of Source Code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Byte_Code">
      <xs:annotation>
        <xs:documentation>The code represented is in the form of Byte Code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Binary_Code">
      <xs:annotation>
        <xs:documentation>The code represented is in the form of binary code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
  </xs:restriction>
</xs:simpleType>
Simple Type CodeObj:CodePurposeEnum
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
CodePurposeEnum is a (non-exhaustive) enumeration of classes of code intended purposes.
Diagram
Diagram
Type restriction of xs:string
Facets
enumeration Application_Code
The code represented is intended as application code.
enumeration Library_Code
The code represented is intended as library code.
enumeration Shellcode
The code represented is intended as shellcode.
enumeration Exploit_Code
The code represented is intended as exploit code.
enumeration Unknown
The code represented is intended for unknown purposes.
enumeration Other
The code represented is intended for a purpose other than those listed in this enumeration.
Source
<xs:simpleType name="CodePurposeEnum">
  <xs:annotation>
    <xs:documentation>CodePurposeEnum is a (non-exhaustive) enumeration of classes of code intended purposes.</xs:documentation>
  </xs:annotation>
  <xs:restriction base="xs:string">
    <xs:enumeration value="Application_Code">
      <xs:annotation>
        <xs:documentation>The code represented is intended as application code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Library_Code">
      <xs:annotation>
        <xs:documentation>The code represented is intended as library code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Shellcode">
      <xs:annotation>
        <xs:documentation>The code represented is intended as shellcode.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Exploit_Code">
      <xs:annotation>
        <xs:documentation>The code represented is intended as exploit code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Unknown">
      <xs:annotation>
        <xs:documentation>The code represented is intended for unknown purposes.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Other">
      <xs:annotation>
        <xs:documentation>The code represented is intended for a purpose other than those listed in this enumeration.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
  </xs:restriction>
</xs:simpleType>
Simple Type CodeObj:CodeLanguageEnum
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The CodeLanguageEnum simple type is an (non-exhaustive) enumeration of computer code languages.
Diagram
Diagram
Type restriction of xs:string
Facets
enumeration C
Indicates the code is written in the C programming language.
enumeration C++
Indicates the code is written in the C++ programming language.
enumeration C#
Indicates the code is written in the C# programming language.
enumeration Java
Indicates the code is written in the Java programming language.
enumeration JSP
Indicates the code is written in the JSP (Java Server Pages) language.
enumeration Javascript
Indicates the code is written in the Javascript programming language.
enumeration ASP.NET
Indicates the code is written in the ASP.NET programming language.
enumeration SQL
Indicates the code is written in SQL (Standard Query Language).
enumeration Python
Indicates the code is written in the Python programming language.
enumeration Perl
Indicates the code is written in the Perl programming language.
enumeration PHP
Indicates the code is written in the PHP programming language.
enumeration SOAP
Indicates the code is written as a SOAP message.
enumeration Ruby
Indicates the code is written in the Ruby programming language.
enumeration Shell
Indicates the code is written as a Shell script.
enumeration PseudoCode
Indicates the code is written as pseudo code.
enumeration .NET
Indicates the code utilizes the .NET framework.
enumeration Assembly
Indicates the code is written in an assembly language.
enumeration XML
Indicates the code is written in XML (eXtensible Markup Language).
enumeration HTML
Indicates the code is written in HTML (HyperText Markup Language).
enumeration Other
Indicates the code is written in a language not found in this enumeration.
Source
<xs:simpleType name="CodeLanguageEnum">
  <xs:annotation>
    <xs:documentation>The CodeLanguageEnum simple type is an (non-exhaustive) enumeration of computer code languages.</xs:documentation>
  </xs:annotation>
  <xs:restriction base="xs:string">
    <xs:enumeration value="C">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the C programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="C++">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the C++ programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="C#">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the C# programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Java">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the Java programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="JSP">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the JSP (Java Server Pages) language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Javascript">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the Javascript programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="ASP.NET">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the ASP.NET programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="SQL">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in SQL (Standard Query Language).</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Python">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the Python programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Perl">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the Perl programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="PHP">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the PHP programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="SOAP">
      <xs:annotation>
        <xs:documentation>Indicates the code is written as a SOAP message.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Ruby">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in the Ruby programming language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Shell">
      <xs:annotation>
        <xs:documentation>Indicates the code is written as a Shell script.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="PseudoCode">
      <xs:annotation>
        <xs:documentation>Indicates the code is written as pseudo code.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value=".NET">
      <xs:annotation>
        <xs:documentation>Indicates the code utilizes the .NET framework.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Assembly">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in an assembly language.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="XML">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in XML (eXtensible Markup Language).</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="HTML">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in HTML (HyperText Markup Language).</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Other">
      <xs:annotation>
        <xs:documentation>Indicates the code is written in a language not found in this enumeration.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
  </xs:restriction>
</xs:simpleType>
Simple Type CodeObj:ProcessorTypeEnum
Namespace http://cybox.mitre.org/objects#CodeObject-2
Annotations
The ProcessorTypeEnum simple type is an (non-exhaustive) enumeration of computer processor architectures.
Diagram
Diagram
Type restriction of xs:string
Facets
enumeration x86-32
Indicates a x86 32bit processor.
enumeration x86-64
Indicates a x86 64bit processor.
enumeration IA-64
Indicates an IA (Intel Itanium) 64bit processor.
enumeration PowerPC
Indicates a PowerPC processor.
enumeration ARM
Indicates an ARM processor.
enumeration Alpha
Indicates an Alpha processor.
enumeration SPARC
Indicates a SPARC processor.
enumeration z/Architecture
Indicates a z/Architecture (IBM) processor.
enumeration eSi-RISC
Indicates an eSi-RISC processor.
enumeration MIPS
Indicates a MIPS processor.
enumeration Motorola 68k
Indicates a Motorola 68k processor.
enumeration Other
Indicates a processor outside of this enumeration.
Source
<xs:simpleType name="ProcessorTypeEnum">
  <xs:annotation>
    <xs:documentation>The ProcessorTypeEnum simple type is an (non-exhaustive) enumeration of computer processor architectures.</xs:documentation>
  </xs:annotation>
  <xs:restriction base="xs:string">
    <xs:enumeration value="x86-32">
      <xs:annotation>
        <xs:documentation>Indicates a x86 32bit processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="x86-64">
      <xs:annotation>
        <xs:documentation>Indicates a x86 64bit processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="IA-64">
      <xs:annotation>
        <xs:documentation>Indicates an IA (Intel Itanium) 64bit processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="PowerPC">
      <xs:annotation>
        <xs:documentation>Indicates a PowerPC processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="ARM">
      <xs:annotation>
        <xs:documentation>Indicates an ARM processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Alpha">
      <xs:annotation>
        <xs:documentation>Indicates an Alpha processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="SPARC">
      <xs:annotation>
        <xs:documentation>Indicates a SPARC processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="z/Architecture">
      <xs:annotation>
        <xs:documentation>Indicates a z/Architecture (IBM) processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="eSi-RISC">
      <xs:annotation>
        <xs:documentation>Indicates an eSi-RISC processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="MIPS">
      <xs:annotation>
        <xs:documentation>Indicates a MIPS processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Motorola 68k">
      <xs:annotation>
        <xs:documentation>Indicates a Motorola 68k processor.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
    <xs:enumeration value="Other">
      <xs:annotation>
        <xs:documentation>Indicates a processor outside of this enumeration.</xs:documentation>
      </xs:annotation>
    </xs:enumeration>
  </xs:restriction>
</xs:simpleType>
Attribute CodeObj:CodeTypeType / @datatype
Namespace No namespace
Annotations
This field is optional and specifies the expected type for the value of the specified field.
Type DatatypeEnum
Used by
Complex Type CodeObj:CodeTypeType
Source
<xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
  <xs:annotation>
    <xs:documentation>This field is optional and specifies the expected type for the value of the specified field.</xs:documentation>
  </xs:annotation>
</xs:attribute>
Attribute CodeObj:CodePurposeType / @datatype
Namespace No namespace
Annotations
This field is optional and specifies the expected type for the value of the specified field.
Type DatatypeEnum
Used by
Source
<xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
  <xs:annotation>
    <xs:documentation>This field is optional and specifies the expected type for the value of the specified field.</xs:documentation>
  </xs:annotation>
</xs:attribute>
Attribute CodeObj:CodeLanguageType / @datatype
Namespace No namespace
Annotations
This field is optional and specifies the expected type for the value of the specified field.
Type DatatypeEnum
Used by
Source
<xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
  <xs:annotation>
    <xs:documentation>This field is optional and specifies the expected type for the value of the specified field.</xs:documentation>
  </xs:annotation>
</xs:attribute>
Attribute CodeObj:ProcessorTypeType / @datatype
Namespace No namespace
Annotations
This attribute is optional and specifies the expected type for the value of the specified property.
Type DatatypeEnum
Used by
Source
<xs:attribute name="datatype" type="cyboxCommon:DatatypeEnum" fixed="string">
  <xs:annotation>
    <xs:documentation>This attribute is optional and specifies the expected type for the value of the specified property.</xs:documentation>
  </xs:annotation>
</xs:attribute>
Attribute CodeObj:CodeSegmentXORType / @xor_pattern
Namespace No namespace
Annotations
The xor_pattern field contains a 16-hexadecimal-character hex string, which represents the pattern that the Code_Segment_XOR field should be XORed with in order to recover the actual code. The default value is 55AA55AA55AA55BB, as specified by IETF RFC 5901.
Type xs:hexBinary
Used by
Source
<xs:attribute name="xor_pattern" type="xs:hexBinary" default="55AA55AA55AA55BB" use="optional">
  <xs:annotation>
    <xs:documentation>The xor_pattern field contains a 16-hexadecimal-character hex string, which represents the pattern that the Code_Segment_XOR field should be XORed with in order to recover the actual code. The default value is 55AA55AA55AA55BB, as specified by IETF RFC 5901.</xs:documentation>
  </xs:annotation>
</xs:attribute>