CodeObjectTypeCode Object Schema

The CodeObjectType type is intended to characterize a body of computer code.


Field Name Type Description
@object_referenceoptional QName

The object_reference field specifies a unique ID reference to an Object defined elsewhere. This construct allows for the re-use of the defined Properties of one Object within another, without the need to embed the full Object in the location from which it is being referenced. Thus, this ID reference is intended to resolve to the Properties of the Object that it points to.

Custom_Properties0..1 CustomPropertiesType

The Custom_Properties construct is optional and enables the specification of a set of custom Object Properties that may not be defined in existing Properties schemas.

Description0..1 StructuredTextType

The Description field is intended for use in providing a brief description of the code that is encapsulated in this field.

Type0..1 CodeTypeType

The type field is intended to provide a way of specifying the type of code being characterized.

Purpose0..1 CodePurposeType

The type field is intended to provide a way of specifying the purpose or flavor of code being characterized.

Code_Language0..1 CodeLanguageType

The code_language field refers to the code language used in the code characterized in this field.

Targeted_Platforms0..1 TargetedPlatformsType

The Targeted_Platforms field specifies a list platforms that this code is targeted for.

Processor_Family0..n ProcessorTypeType

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.

Discovery_Method0..1 MeasureSourceType

The Discovery_Method field is intended to characterize the method and/or tool used to discover the code.

Start_Address0..1 HexBinaryObjectPropertyType

The start_address field can be used to reference the start address of the code, if it was discovered inside a binary.

Code_Segment0..1 StringObjectPropertyType

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.

Code_Segment_XOR0..1 CodeSegmentXORType

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.

Digital_Signatures0..1 DigitalSignaturesType

The Digital_Signatures field is optional and captures one or more digital signatures for the code.

Extracted_Features0..1 ExtractedFeaturesType

A description of features extracted from this code segment.